Drop one for CodeWhisperer, Amazon’s AI-powered coding helper. As of today, it’s kaput — sort of.
CodeWhisperer is now Q developerpart of Amazon’s Q family of business-oriented AI chatbots that extends to the recently announced Q Business. Available through AWS, Q Developer helps with some of the tasks that developers do in their day-to-day work, such as debugging and upgrading apps, troubleshooting and running security scans — just like CodeWhisperer did.
In an interview with TechCrunch, Doug Seven, GM and director of AI developer experience at AWS, hinted that CodeWhisperer was a bit of a branding failure. Third party metrics reflect the same; Even with a free tier, CodeWhisperer has struggled to match the momentum of its main competitor GitHub Copilot, which has over 1.8 million individual paying users and tens of thousands of enterprise customers. (Bad first impressions certainly didn’t help.)
“CodeWhisperer is where we started [with code generation]band we really wanted to have a brand — and name — that fit a broader set of use cases,” Seven said. “You can think Q Developer as the evolution of CodeWhisperer into something much broader.”
To this end, Q Developer can generate code including SQL, a programming language commonly used to create and manage databases, as well as test that code and help convert and implement new code that comes from from developer queries.
Similar to Copilot, customers can configure Q Developer in their internal codebases to improve the relevance of the tool’s programming recommendations. (The now-defunct CodeWhisperer offered this option as well.) And, thanks to a feature called Agents, Q Developer can autonomously do things like implement functions and document and refactor (ie refactor) code.
Ask Q Developer a request like “create an ‘add to favorites’ button in my app” and Q Developer will analyze the app’s code, generate new code if necessary, create a step-by-step design, and complete the tests of the code before making the suggested changes. Developers can review and iterate on the design before Q implements it, linking steps and applying updates to the necessary files, code blocks, and test suites.
“What happens behind the scenes is that Q Developer creates a development environment to work on the code,” Seven said. “So in the case of feature development, Q Developer takes the entire code repository, creates a branch of that repository, parses the repository, does the work it’s been asked to do, and returns those code changes to the developer.”
Agents can also automate and manage code upgrade processes, Amazon says, with Java conversions live today (specifically Java 8 and 11 built using Apache Maven in Java version 17) and .NET conversions coming soon. “Q Developer analyzes the code — looking for anything that needs an upgrade — and makes all those changes before returning it to the developer to review and commit,” Seven added.
To me, Agents are very similar to GitHub’s Copilot Workspace, which creates and implements similar plans for bug fixes and new features in software. And — as with Workspace — I’m not entirely convinced that this more autonomous approach can solve the issues surrounding AI-powered coding assistants.
An analysis of more than 150 million lines of code committed to project repos over the past few years by GitClear found that Copilot resulted in more incorrect code pushed to codebases. Elsewhere, security researchers have warned that Copilot and similar tools can to enhance existing bugs and security issues in software projects.
This is not surprising. AI-powered coding assistants look impressive. But they’ve been trained on existing code, and their suggestions reflect patterns in the work of other developers — work that can be seriously flawed. Assistants’ guesswork creates errors that are often difficult to detect, especially when developers — who adopt AI coding assistants in big numbers — postpone judgment of helpers.
In less risky territory beyond coding, Q Developer can help manage a company’s cloud infrastructure on AWS — or at least give them the insight they need to manage it themselves.
Q developer can fulfill requests like “Count all my Lambda functions” and “Count my resources located in other AWS regions”. Currently in preview, the bot can also generate (but not execute) AWS CLI commands and answer questions related to AWS costs, such as “What were the top three highest cost services in Q1?”
So how much do these artificial intelligence amenities cost?
Q Developer is available for free in the AWS Console, Slack, and IDEs like Visual Studio Code, GitLab Duo, and JetBrains — but with limitations. The free version does not allow fine-tuning in custom libraries, packages, and APIs and enables users to a data collection scheme by default. It also imposes monthly caps, including up to five Agents tasks (eg deploying a feature) per month and 25 queries of AWS account resources per month. (It baffles me that Amazon would put a cap on the questions one can ask about its own services, but here we are.)
Q Developer’s premium version, Q Developer Pro, costs $19 per month per user and adds higher usage limits, user and policy management tools, simple login, and — perhaps most importantly — IP compensation.
In many cases, models that support code generation services such as Q Developer are trained on code that is copyrighted or under a restrictive license. The vendors claim that fair use protects them in case the model was knowingly or unknowingly developed in copyrighted code — but not everyone agrees. GitHub and OpenAI are happening sued in a group action movement which accuses them of copyright infringement by allowing Copilot to repurpose licensed code snippets without providing credit.
Amazon says it will defend Q Developer Pro customers against claims that the service infringes third-party IP rights, as long as they let AWS control their defense and settle “as AWS sees fit.”