LLMs and an optimistic take on the future of software engineering
Listen to a 10 minute AI-generated podcast version of this blog post, courtesy of Google's NotebookLM.
“Give me a lever long enough and a fulcrum on which to place it, and I shall move the world.”
— A quote attributed to Greek mathematician and physicist, Archimedes.
Archimedes' lever (image credit 1)
I vividly recall my early days of programming: the dopamine hits after seeing my code successfully compile and my program run; the thing that I imagined suddenly coming to life on screen. Programming was difficult and knowledge hard-won, perhaps due to my skill level at the time and the fact that documentation and guidance were not so readily available.
These were the days of 56k dial-up, GeoCities and Quake III Arena. Websites were individually-crafted and online communities were mostly decentralised. Programming knowledge was dispersed across small and dedicated websites and communities. Then came the rapid proliferation of open-source software and Stack Overflow's arrival, which changed the scene again, centralising programming discussions, better disseminating knowledge and example code.
The world looks very different now and the landscape is shifting dramatically once more. A pivotal moment arrived in 2022 with the release of ChatGPT, the generative artificial intelligence (AI) chatbot from OpenAI, which is based on their Generative Pre-trained Transformer (GPT) Large Language Model (LLM).
While the initial implications might have been hazy, with each subsequent advancement, the power of LLMs and their place in our future is becoming clearer.