Developer-skills and talent company Lemon thinks it has a handle on where AI-assisted software application development tools and services are going next. The New York City-based company says that almost all developers feel pressure to use AI tools to stay competitive and that as many as a third of coders worry about AI replacing humans. With most developers today are estimated to work under policies that support AI-assisted coding, is there any sweetness to be extracted from AI development tools and can we feel confident in the safety and security of AI-assisted code?
AI-assisted is generally agreed to involve the use of AI automations to provide context-aware support during software development. This includes software services that can interpret code in real time, offering assistance focused on error detection or automated testing. Some offer predictive completions on code that is currently in production, some offer bug detection (to identify errors, security issues, or inefficiencies) and many offer unit test generation based on the logic and structure of code and wider recommendations.
Lemon’s Zhenya Kruglova blogs to say that her firm surveyed developers to attempt to understand how they truly feel about AI-assisted coding.
“The rise of AI in software development is triggering widespread anxiety among developers,” said Kruglova. These concerns centre on AI’s potential to automate tasks traditionally handled by humans. Our data underscores how deeply this sentiment is felt across the developer community and suggests that [of over 400 developers surveyed] 66% of software developers are concerned about AI replacing humans in the development workflow and that only 23% of software developers are not concerned about AI replacing human developers.”
FOMO factor: perceived career risk
Kruglova suggests that AI adoption in development is driven as much by “perceived career risk” as it is by interest or productivity gains. She says that most programmers are responding to an industry-wide signal that using these tools is becoming tablestakes. This trend perhaps has the potential to reshape how developers learn, how quickly new tools are integrated and how teams evaluate performance or hire.
Lemon’s developer market assessment states that the “majority of organisations” recognise the value of AI-assisted coding tools and are taking steps to integrate them into their workflows. However, the varying degrees of adoption suggest that there is still uncertainty around how to best implement these tools. A significant portion of developers using AI tools independently suggests that individuals are increasingly taking matters into their own hands and driving adoption, even without formal company policies.
Top AI coding tools
As discussion and analysis in this space is so fervent right now, it is worth summarising some of the main tools that work to provide automation inside modern software workflows.
Cline is described as a lightweight command line “AI pair programmer” for programmers to interact with and use models like GPT-4 directly in their terminal command line interface. Cursor is known as a code editor built on Visual Studio Code that integrates GPT to offer in-line code suggestions, debugging help and natural language search.
It’s not all GPT at this level, increasingly popular is Aider, an AI pair programmer that works at the terminal level in a developer’s local Git repository to suggest and implement code changes using natural language prompts. Windsurf (the tool formerly known as Codeium) has context-aware code completions across more than 70 programming languages and GitHub Copilot works to suggest real-time completions and entire functions directly in a developer’s Integrated Development Environment (IDE).
From the big tech vendors, there is Visual Studio IntelliCode, an extension for Visual Studio that uses machine learning to recommend smart code completions based on team practices and open-source pattern… and then of course there is Amazon CodeWhisperer, which converts natural language prompts into fully functional code snippets, which is especially helpful for cloud-based development. DeepCode works for bug review and security vulnerabilities, Oodo (formerly CodiumAI) is for unit tests and Tabnine offers AI code completion trained on permissive open source codebases.
The human impact factor
AI tools are reshaping the developer experience, enhancing team collaboration dynamics while also creating some challenges. As AI becomes more integrated into the development workflow, the effects on collaboration vary across teams and individuals.
“Improved collaboration suggests that AI is generally seen as an asset for teamwork. However, the respondents who feel AI has fragmented collaboration signal that it can lead to misalignments, especially if developers use different tools or rely on it without proper oversight,” said Kruglova. “AI-assisted coding brings both significant advantages and potential challenges that organisations and developers must carefully consider.”
As AI developer tools now start to grow and move beyond basic code analysis, unit testing and GPT-style functions, the move from code completion to code generation and actual software application creation could result in some job displacement and many argue that AI could replace human roles in coding, causing job loss or devaluation of developer positions. Now appears to be the time to harness AI for streamlined workflows and to simplify and automate mundane tasks, allowing developers to focus on higher-level challenges.