Software engineering is on the brink of a significant transformation, driven by the emergence of large language models (LLMs) deployed as generative AI. While the debate on whether this qualifies as true artificial intelligence continues, there is no denying the impressive capabilities of LLMs such as ChatGPT and Google Bard, which are gaining widespread recognition.
Embracing AI in software engineering is no longer optional. Any IT department or software engineering company that refuses to adopt AI will undoubtedly fall behind and become irrelevant. Likewise, developers who resist this transformative technology will find themselves replaceable soon.
Lessons from the past
Reflecting on the evolution of website development tools like Dreamweaver, we see parallels to the current AI revolution. Although tools like Dreamweaver automated website creation, they did not render human web developers obsolete. Similarly, the availability of modern website builders and platforms has not eliminated the need for skilled developers. Instead, these tools have sped up the development of routine tasks, allowing human developers to focus on more complex challenges and custom features.
The advent of LLMs and generative AI has reached a critical point. Models like GPT-3, GPT-4, ChatGPT, and Google Bard have captured cultural attention and inspired innovation. Acknowledging the potential benefits, a software engineering company recently invested in GitHub Copilot licenses for their engineers. Leveraging the OpenAI Codex technology, GitHub Copilot streamlines tedious tasks, provides intelligent autocomplete suggestions, and even generates error-handling code, boosting engineers’ productivity.
The human touch
While GitHub Copilot and similar tools offer significant advantages, it is crucial to recognize their limitations. Generated code often contains errors; some samples may be difficult to maintain or extend. This emphasizes that human developers are far from obsolete; their expertise remains indispensable.
Generative AI tools will amplify what developers prioritize. Those focusing solely on speed over quality may produce subpar software at an sped up rate, burdening future efforts with cleanup and maintenance. Likewise, perceiving code as a commodity and engineers as mere code-generating cogs will lead to stagnation. However, those valuing innovation, quality, and critical thinking can harness the potential of LLMs in partnership with human engineers.
Unlocking the potential
To unlock the true potential of LLMs, they must be trained for quality and effectively guide their collaboration with human engineers. Training models to generate secure, scalable, maintainable, and well-styled code is essential. Additionally, emphasizing test-driven development and cultivating symbiotic relationships between AI and human engineers will lead to powerful solutions to complex challenges.
In the early stages of the AI revolution, commodities like LLMs represent raw potential. Just as raw iron ingots must be forged into useful tools, software engineers must shape LLMs to align with human needs and values. Building a fully automated code-assembling machine that “commoditizes” software development would be tragic, resulting in derivative and often flawed systems. Instead, we should strive to advance humanity’s ambitions by responsibly applying AI.
A responsible path forward
A decade from now, software engineers should aim to avoid a dystopian future caused by the irresponsible use of AI. Rather than being burdened with cleaning up the aftermath of automated folly, the software industry should harness AI to pursue noble goals. By training generative AIs to collaborate effectively with human engineers, we can transform good engineers into exceptionally capable cyborg hybrid engineers, combining the strengths of humans and AI to create extraordinary solutions.
Robot collaborators are not here to replace software engineers, but to enhance their abilities. Through responsible training and application, they will make better engineers. Instead of rendering them obsolete, AI will enable them to tackle challenges and create solutions that surpass what humans or AI can accomplish independently.
The era of AI code generation is unstoppable, and software engineers must adapt to remain relevant. LLMs like ChatGPT and Google Bard offer immense potential for augmenting developers’ capabilities. However, they must exercise caution and train these models for quality while preserving the unique contributions of human engineers. By doing so, they can forge a path toward a future where human-AI collaboration unlocks remarkable achievements in software engineering.