Pair Programming with a Large Language Model .
Guess this wording settles the debate against the developers . The narrative has been set for use of LLM for productivity boosts with this phrasing !But are developers burdened with expectations or is there some hope of real usefulness to developers with the help of AI?lets check .
Using llm for coding task is expected to give huge productivity boost . Mckinsey already released a report on measuring developer productivity .Organizations like ChatGPT/OpenAI/Microsoft and the likes of meta/CodeLLma are coming up with code LLMs and numbers on productivity boost .There are new coding LLMs or LLMs with such capability coming up every week ,so this list is non exhaustive .
Paid to code or paid to recollect ?
However the question remains , can LLMs in its current form boost developer productivity across the board . The answer is no .Its only the developers who have a clear picture in mind of what they want ,can save some time with typing work with tools like copilot .
However the cognitive work for the developer now shifts towards reviewing the code generated by AI .Which is heavier mental work then writing code via learned skills .
This also raises a question of memory recall of such AI generated code at scale ! .Developers after all are not paid just to “code it” . They are valued for knowing their code , maintaining it and debugging it . Will the developers have a clear mental model of such AI generated code ? and what is the limit of such active recollections ? For now we we don’t know answers to these questions .We can take some guess from our experience with social media .This experience tells as we honestly don’t have first class recall of the virtual updates from our network when compared to actual moments spent in physical world. Even if someone argues that social media is not approached with the serious ness coding is ; the limits of our fatigued brains are known now. So I would conclude that the so called boost to developer productivity is overhyped .
The Future of coding with AI
There is however a good case of vendor curated assistants .Imagine an coding assistant from spring/java or vuejs or likes. These can help us with smarter code highlight ,offer deeper code review and provide standardized lookup code samples for developers to use. They can also have a real connection to the language runtime and offer are better suggestions on optimizations and debugging .
This is probably the less shiny ,less geeky middle path to developer productivity with the help of AI. Exactly in the spirit of Pair Programming with a Large Language Model .
(image via genecraft )