How AI makes developers' lives easier, and helps everybody learn to develop software
Ever since Ada Lovelace, a polymath often considered the first computer programmer, proposed in 1843 using holes punched into cards to solve mathematical equations on a never-built mechanical computer, software developers have been translating their solutions to problems into step-by-step instructions that computers can understand.
That’s now changing, according to Kevin Scott, Microsoft’s chief technology officer.
Today, AI-powered software development tools are allowing people to build software solutions using the same language that they use when they talk to other people. These AI-powered tools translate natural language into the programming languages that computers understand.
“That allows you, as a developer, to have an intent to accomplish something in your head that you can express in natural language and this technology translates it into code that achieves the intent you have,” Scott said. “That’s a fundamentally different way of thinking about development than we’ve had since the beginning of software.”
This paradigm shift is driven by Codex, a machine learning model from AI research and development company OpenAI that can translate natural language commands into code in more than a dozen programming languages.
Codex descended from GPT-3, OpenAI’s natural language model that was trained on petabytes of language data from the internet. Codex was trained on this language data as well as code from GitHub software repositories and other public sources.
“It makes coding more productive in terms of removing not-so-fun work and also helping you remember things you might have forgotten and helping you with the approach to solve problems,” Peter Welinder, vice president of products and partnerships for OpenAI, said of Codex.
The increase in productivity that Codex brings to software development is a game changer, according to Scott. It allows developers to accomplish many tasks in two minutes that previously took two hours.
“And oftentimes, the things that the tools are doing is they are helping you to very quickly go through the least interesting parts of your job so that you can get to the most interesting parts of your job, which makes the qualitative experience of creating much more pleasant and stimulating and fun,” he said.
AI and code come together
Microsoft and OpenAI formed a partnership in 2019 to accelerate breakthroughs in AI – including jointly developing some of the world’s most powerful AI supercomputers – and deliver them to developers to build the next generation of AI applications through Azure OpenAI Service.
Microsoft subsidiary GitHub also worked with OpenAI to integrate Codex into GitHub Copilot, a downloadable extension for software development programs such as Visual Studio Code. The tool uses Codex to draw context from a developer’s existing code to suggest additional lines of code and functions. Developers can also describe what they want to accomplish in natural language, and Copilot will draw on its knowledge base and current context to surface an approach or solution. Read More...