Back in the day, you had to write all your code by hand a text editor like vi or emacs, run the compiler by hand from the command line, and debuggers were also command line/text controlled horrors that were particularly notable painful experiences.
Along came programming IDE’s (Integrated Development Environments), and things started getting much better. Integrated editor, building, and visual debugging. This transformed writing software greatly, improving developer productivity and lives. Along came auto-complete and symbol lookups and yet another milestone of ease was achieved.
Google has taken things to the next level. DeepMind now powers AlphaCode – an AI trained to generate code and they claim it is almost as good as an average human programmer. I have already written about new efforts such as Github Copilot to expand autocomplete to entire code blocks using AI, but AlphaCode solves whole problems. When given coding challenges used in human competitions, it achieved an estimated rank in the top 54% of coders. Google is not alone, Microsoft is now adapting OpenAI’s GPT-3 engine to function as a coding auto-completer as well.
If you want to read about one developer’s experience using Github Copilot, check his article from Wired out.
One potential issue is that these AI engines are trained from open-source projects. Analysis shows that most of the code they generate have serious security vulnerabilities. This means that bad actors might start publishing key code blocks with known vulnerabilities in order to spread these vulnerabilities into commercial projects.