Matt Asay
Contributing Writer

How AI has already changed coding forever

analysis
Mar 12, 20246 mins

AI coding tools such as Amazon CodeWhisperer and GitHub Copilot boost the productivity of pro and novice developers alike. Theyโ€™re only the beginning.

Evolution of Lighting 166160844
Credit: Thinkstock

Last weekย MongoDB CEO Dev Ittycheria likened present-day AI to the โ€œdial-up phase of the internet era.โ€ Heโ€™s not wrong. I recently suggested weโ€™re in the โ€œawkward toddler phaseโ€ of generative AI (genAI). Itโ€™s full of excitement (โ€œher first step!โ€), but straightforward tasks are clumsy, like basic math. Yet in some areas, the future of generative AI is happening right now. One area is coding assistants such as Amazon CodeWhisperer.

Sure, youโ€™ve heard anecdotal stories that someone built a complex banking application for their Fortune 100 bank in two minutes with a command prompt, but that kind of hype helps no one. What are real developers doing today to use genAI to improve their productivity?

Thatโ€™s the question I asked Doug Seven, general manager of Amazon CodeWhisperer and director of software development for Amazon Q, at AWS. As Seven tells it, developers at any stage in their career can (and most definitely do) make good use of generative AI today. The key for AWS is letting developers focus more on their code and less on all the buzzwords infecting the AI landscape.

The Amazon effect

First, what exactly do tools like CodeWhisperer and Amazon Q (a genAI-powered chatbot assistant) do? At its most basic, CodeWhisperer assists the software development process by offering contextual coding suggestions. As a developer adds comments to code, CodeWhisperer infers from those comments what the developer is doing and gives code suggestions. CodeWhisperer can also scan code to detect security vulnerabilities, inform you about them, and then fix them.

Over the past year since AWS GAโ€™d CodeWhisperer, the company has added the ability to fine-tune those coding suggestions with customizations. For example, a company can point CodeWhisperer at its internal frameworks, private libraries, or even just coding conventions, and CodeWhisperer will reflect those corporate conventions and preferences. โ€œYou get code more like your code instead of more like general-purpose code,โ€ as Seven explains.

Amazon Q, for its part, acts as an assistant. Need some code explained to you? Ask Q. Need that same code refactored or debugged? Ask Q. With Q, a developer can keep coding while Q runs off to do โ€œerrands.โ€

All fine and interesting. In fact, โ€œeveryoneโ€™s doing itโ€ these days: GitHub Copilot, Google Codey, ChatGPT,ย and more. But something feels different about AWSโ€™s approachโ€”something very Amazonian.

Not just for AWS services

From its inception, AWS has always strived to alleviate the โ€œundifferentiated heavy liftingโ€ that developers must do to stand up servers, manage databases, and more. The companyโ€™s approach to generative AI is much the same. The market is hypersaturated with AI hype, making it hard to separate signal from noise, as Iโ€™ve recently written. I asked Seven how AWS aims to help with this problem. He responded, โ€œOne of the benefits of CodeWhisperer is we abstract all of that generative AI science.โ€

In other words, developers donโ€™t need to be stressed about large language models (LLMs), retrieval-augmented generation (RAG), or whatever is being released today. CodeWhisperer helps them write code more productively without worrying about the models running behind the scenes. This is great news for developers. They may, for example, realize that they need to refine the training of their coding assistant for better output, yet not have any idea how to achieve this through other means. Seven says AWS wants CodeWhisperer and associated tools to make this โ€œrelatively turnkey for you. So you can just say โ€˜hereโ€™s my repos, do your thing,โ€™ and then [AWS will] use a variety of techniques behind the scenes.โ€

Nor is AWS fixating on its own services for CodeWhisperer, though of course the company aims for a first-class experience with its first-party services such as Aurora for MySQL. As Seven puts it, โ€œOne of the โ€ฆ principles [for] CodeWhisperer is that we have to be able to help developers do whatever theyโ€™re doing.โ€ This means helping developers who may run services across different clouds (or on premises). โ€œWe donโ€™t want to restrict CodeWhisperer to being good at only AWS [services]. We want to make it good at everything that a software engineer is trying to do,โ€ he declares.

Will GitHub Copilot or other third-party coding assistants end up working better with AWS services than CodeWhisperer? Not if AWS can help it. โ€œWe do a lot of work to make sure that weโ€™re better at doing AWS things than anybody else,โ€ Seven says.

Coding with CodeWhisperer

How should a developer get started? Despite all AWSโ€™s efforts to โ€œabstract away the data science,โ€ to use Sevenโ€™s words, โ€œsometimes there can be a learning curve in terms of how you express yourselfโ€ to get CodeWhisperer (or any of these genAI tools) to yield the results you want. Still, โ€œitโ€™s really fast to get started, and you learn as you go,โ€ he continues.

This holds true whether the developer using CodeWhisperer is experienced or new to the field.

Seven says the company ran an internal productivity challenge, and participants who used CodeWhisperer were 27% more likely to complete a set of tasks successfully. Even better, they did so 57% faster than those who didnโ€™t use CodeWhisperer. This was true regardless of experience level.

Why? A developer might be unfamiliar with a particular SDK and CodeWhispererโ€™s code suggestions helped guide the developer past the hurdle without having to slow to read documentation. For experienced developers who already know what theyโ€™re doing, CodeWhisperer helps smooth out speed bumps like this to work faster, while also enabling them to plow through boilerplate code much more quickly. For the less-experienced developer,ย CodeWhisperer prompts them with code suggestions that keep them from getting stuck. As Seven puts it, โ€œTheyโ€™re able to get suggestions that help them figure out where theyโ€™re going and they end up having to interrupt other people [e.g., to ask for help] less often.โ€ Everybody wins.

Moving beyond the tool age of AI

Seven says he sees both bottom-up approaches (a developer or team has success and spreads the word) and top-down approaches (executive mandate) to adoption. What heโ€™s not seeing is any sort of slowdown to generative AI innovation.

Today we use things like CodeWhisperer almost as toolsโ€”like a calculator, he suggests. But a few years from now, he continues, weโ€™ll see more of โ€œa partnership between a software engineering team and the AI that is integrated at all parts of the software development life cycle.โ€ In this near future, โ€œHumans start to shift into more of a [directorโ€™s] roleโ€ฆ, providing the ideas and the direction to go do things and the oversight to make sure that whatโ€™s coming back to us is what we expected or what we wanted.โ€

As exciting as that future promises to be for developers, the present is pretty darn good, too. Developers of any level of experience can benefit from tools like Amazon CodeWhisperer. How developers use them will vary based on their level of experience, but whether they should use them is a settled question, and the answer is yes.

Matt Asay

Matt Asay runs developer marketing at Oracle. Previously Asay ran developer relations at MongoDB, and before that he was a Principal at Amazon Web Services and Head of Developer Ecosystem for Adobe. Prior to Adobe, Asay held a range of roles at open source companies: VP of business development, marketing, and community at MongoDB; VP of business development at real-time analytics company Nodeable (acquired by Appcelerator); VP of business development and interim CEO at mobile HTML5 start-up Strobe (acquired by Facebook); COO at Canonical, the Ubuntu Linux company; and head of the Americas at Alfresco, a content management startup. Asay is an emeritus board member of the Open Source Initiative (OSI) and holds a JD from Stanford, where he focused on open source and other IP licensing issues. The views expressed in Mattโ€™s posts are Mattโ€™s, and donโ€™t represent the views of his employer.

More from this author