24/09/2024
The future of coding in an AI-driven world
Ben Hopper, one of the software development team leaders at Propel Tech and AI Master’s degree student, answers all our burning questions on the future of coding and how AI is set impact this.
When we talk about AI in coding, are we specifically referring to generative AI?
“In coding, we often refer to generative AI, but AI itself is a broad term. Generative AI is just one subset, similar to how a car is a specific type of vehicle.
The four main types of AI are generally categorised based on their capabilities and functionalities:
- Reactive Machines: AI systems designed to perform a specific task and do not store memories or past experiences.
- Limited Memory: This type of AI can use past experiences to inform current decisions, and generative AI, like ChatGPT, falls into this.
- Theory of Mind: This is a more advanced form of AI that, in theory, would be able to understand and model human emotions, beliefs, and intentions.
- Self-Aware AI: This is the most advanced form of AI, which would have its own consciousness, self-awareness, and understanding of its own existence.
Recognising these distinctions shows understanding, as many people use "AI" loosely. For example, ChatGPT is a large language model (LLM), a type of generative AI.
What’s also important to note is that AI, machine learning (ML), and deep learning (DL) are not the same thing. AI is the broad category, ML a subset, and DL a specialised technique within ML. AI technologies, including generative AI, have evolved over many years, with significant investments behind them.”
Will AI replace human software developers?
“AI is not making human labour obsolete. Just as robots in car manufacturing still need human maintenance. Generative AI aids but doesn’t replace human tasks like writing, editing, and publishing. AI makes processes more efficient rather than replacing jobs.”
Is there a need for a broader understanding of generative AI and its implications in software development?
“Understanding generative AI is crucial. There are basic uses like code completion and advanced applications where entire codebases are fed into AI models. A major concern is inexperienced developers using generative AI carelessly, such as inputting proprietary code into platforms like ChatGPT, risking serious confidentiality breaches.
Intellectual property (IP) is highly valuable and must be protected. Sharing it without permission is akin to giving away sensitive equipment. Developers often overlook that their code is not theirs to share, however, once shared with platforms like OpenAI, it becomes part of the platform's data.
Even seemingly harmless code could jeopardise client trust if it ended up online. Intellectual property often outweighs physical assets, and breaches can have severe consequences.
Companies must enforce clear AI policies to protect IP and ensure data security. Every business today interacts with tech, impacting productivity and efficiency. This is why I’m pursuing a data science degree and why our company is focusing on effective data solutions.”
Are there any lesser-known platforms commonly used in software development?
“Besides ChatGPT, I think it’s important to note LLaMA (Large Language Model Meta AI). LLaMA can be run locally on your computer, unlike ChatGPT which relies on external servers. GitHub Copilot, supported by Microsoft, is another tool that enhances coding efficiency with predictive text and code suggestions.”
Is there significant potential for generative AI in software development?
“Generative AI has potential, particularly for tasks like predictive text. It can automate repetitive tasks, saving time, such as generating forms from a data model. While AI enhances traditional tools, it doesn’t introduce entirely new solutions but makes existing processes more efficient and user-friendly.
Generative AI isn't solving new problems but repackaging old technologies. It’s useful but not truly "intelligent" in the human sense. It’s essentially advanced statistical prediction.”
Is AI creating new roles in software development?
“I’m working on a project that categorises skills for optimising team formation, similar to how football teams are selected. AI could also improve project estimation by analysing past performance data for more accurate timelines and training needs.
Beyond generative AI, the real value lies in optimisation problems and machine learning, which offer practical benefits. Generative AI attracts attention but optimisation and data science have more revolutionary potential.”
Do you think it's important for people entering the industry to have a good understanding of AI?
“I think one of the most important things for new entrants to understand about AI is company policies on AI usage. Just as early social media lacked clear policies, businesses now need to establish AI usage guidelines. While deep technical knowledge of AI isn’t essential, knowing the boundaries of its use in the workplace is crucial.”
Fascinated by all things AI. Read our articles: Is artificial intelligence changing the career landscape as we know it and