AWS launches CodeGuru to identify ‘most expensive’ code


Keumars Afifi-Sabet

30 Jun, 2020

Amazon Web Services (AWS) has taken its machine learning-powered CodeGuru development tool out of preview and rendered it generally available, alongside a host of additional features.

CodeGuru is being launched as a tool to help developers improve their applications and troubleshoot issues with automated code reviews and performance recommendations, available in Reviewer and Profiler modes.

CodeGuru Reviewer uses programme analysis and machine learning to detect potential defects that are tricky to find and recommend fixes in Java code. Code can be stored in GitHub, AWS CodeCommit, or Bitbucket.

Pull requests submitted also provide recommendations for how to improve the code, with each pull request also corresponding to a code review, and each code review including multiple recommendations that appear as comments on the pull request. 

Profiler mode, meanwhile, provides interactive visualisations and recommendations that help fine-tune application performance and troubleshoot operational issues using runtime data from live applications. This mode can also help find the most intensive lines of code, in terms of CPU usage or latency, and suggest ways to improve efficiency and reduce bottlenecks 

“Bringing new applications into production, maintaining their code base as they grow and evolve, and at the same time respond to operational issues, is a challenging task,” said chief evangelist for EMEA at AWS, Danilo Poccia. 

“For this reason, you can find many ideas on how to structure your teams, on which methodologies to apply, and how to safely automate your software delivery pipeline.

“CodeGuru helps you improve your application code and reduce compute and infrastructure costs with an automated code reviewer and application profiler that provide intelligent recommendations. Using visualizations based on runtime data, you can quickly find the most expensive lines of code of your applications.”

CodeGuru was first announced at AWS Re:Invent 2019 towards the end of last year as an AI-powered service designed to help write code. It was launched as an automated tool, trained on several decades of code reviews, adding comments to pull requests if it discovers an issue, also recommending remediation, including example code and links to documentation.

AWS has made a number of improvements to Amazon CodeGuru in the last few months, including a more cost-effective pricing model, support for Bitbucket repositories, and the capacity to start the profiling agent using a command-line switch.

In addition to existing features, the generally-available version of CodeGuru includes support for GitHub Enterprise in Reviewer mode, as well as new types of recommendations to solve defects and improve code. For Profiler mode, meanwhile, AWS has added anomaly detection, support for AWS Lambda, as well as the total CPU cost of issues in a recommendations report, among a number of others.

CodeGuru has been released days after AWS launched Honeycode, a visual application builder that can be used to create interactive web and mobile apps on a code-free basis. These can range in complexity from a task-tracking application for a small team to a project management system that controls complex workflows, with Honeycode aimed at those in need of innovative online capabilities but without the means to hire experienced engineers.