Brief IA

Ambient Coding and Agentic Engineering: A Troubling Fusion

💻 Code & Dev·Tom Levy·

Ambient Coding and Agentic Engineering: A Troubling Fusion

Ambient Coding and Agentic Engineering: A Troubling Fusion
Key Takeaways
1Joseph Ruscio and Simon Willison explore the convergence of ambient coding and agentic engineering, revealing unexpected implications.
2Ambient coding, initially distinct, merges with agentic engineering, raising questions about accountability in software development.
3The speed of AI tools is changing development processes, challenging traditional methods of design and validation.
💡Why it mattersThis fusion raises issues of quality and accountability in software development, potentially impacting user trust.
Le brief IA que lisent les pros

Le brief IA que les pros lisent chaque soir

Les 7 actus IA du jour, décryptées en 5 min. Gratuit.

Inclus dès l'inscription : notre sélection des meilleurs guides & comparatifs IA.

Choisis ton rythme

Gratuit · Pas de spam · Désabonnement en 1 clic

📄
Full Analysis

A Revealing Discussion on AI-Assisted Coding

In episode #9 of Heavybit's High Leverage podcast, titled "The AI Coding Paradigm Shift with Simon Willison," a captivating conversation took place between Joseph Ruscio and Simon Willison. They discussed AI-assisted coding tools, highlighting an unexpected convergence between two distinct concepts: vibe coding and agentic engineering. This discovery prompted Willison to reflect deeply on the evolution of his own work.

According to Willison, podcasts provide a unique opportunity to verbalize ideas that would otherwise remain vague. It was in this context that he became aware of how these two approaches to coding, once distinct, are beginning to intertwine in his professional practice. This reflection was catalyzed by the exchange of ideas with Joseph Ruscio, which allowed Willison to articulate thoughts he had not yet expressed.

When Vibe Coding and Agentic Engineering Converge

Shortly after the term vibe coding emerged, Willison published an article titled Not all AI-assisted programming is vibe coding (but vibe coding rocks). In this piece, he emphasized the difference between this method and the responsible use of AI for coding, which he referred to as agentic engineering. He viewed these two methods as fundamentally distinct, each with its own applications and implications.

However, during his discussion with Ruscio, Willison realized that the boundary between these two concepts is blurring. This realization somewhat unsettled him, as he had always perceived vibe coding as an approach where the code is not examined in detail. This method even allowed non-programmers to produce code without worrying about its intrinsic quality. Vibe coding was seen as a quick solution, where results can be obtained without necessarily understanding the underlying process.

For Willison, vibe coding is acceptable as long as it is used personally, where mistakes only affect the user. In contrast, when it comes to developing software intended for others, this approach becomes irresponsible, as it can lead to consequences for end users. Errors in the code can have significant repercussions, and it is crucial to maintain a high level of accountability.

In contrast, agentic engineering is practiced by professional software engineers who master aspects of security, maintainability, and performance. These professionals use AI tools to maximize their efficiency while relying on years of experience. With 25 years of experience as a software engineer, Willison finds that these tools significantly broaden the range of challenges he can tackle. He is able to address more complex problems with the assistance of these advanced technologies.

The Goal: High-Quality Production Systems

Willison aspires to create high-quality systems more quickly. He believes that producing lower-quality software, even at an accelerated pace, is counterproductive. His ambition is to see each project surpass the previous ones in terms of quality. He wants to ensure that everything he develops is superior to what has been done before, in terms of performance and reliability.

However, with the improvement of coding agents, Willison finds himself no longer checking every line of generated code, even for production projects. He knows that tools like Claude Code can execute complex tasks without apparent errors, but this confidence raises a question of accountability: is it wise to use unverified code in production? This inquiry reflects a concern about the growing dependence on automated tools.

A New Challenge: Evaluating Software Quality

In the past, a well-documented GitHub repository with numerous commits was a hallmark of seriousness and care. Today, thanks to AI tools, it is possible to create a similar repository in a very short time, complicating the assessment of a project's actual quality. The speed of creation does not guarantee quality, posing a challenge for those seeking to evaluate the reliability of software.

For Willison, the true value of software lies in its practical use. A project used daily for several weeks holds more value than a project that is simply generated and minimally tested. He has realized that what he values more than the quality of testing and documentation is the practical use of the software. User experience is a key indicator of a program's robustness and effectiveness.

Bottlenecks in Software Development

The ability to produce thousands of lines of code per day profoundly alters the software development cycle. Traditionally, this cycle was based on producing a few hundred lines per day. This acceleration calls into question design processes that were designed to avoid costly errors. Traditional methods must be reevaluated in light of these new capabilities.

Jenny Wen, design lead at Anthropic, emphasized that current design processes are based on the need to achieve perfect designs to avoid costly mistakes. But if development is fast and inexpensive, these processes could be streamlined. Agility and flexibility become major assets in this new context.

The Longevity of a Software Engineer's Career

Despite these changes, Willison is not worried about his career. He believes that AI tools amplify existing experience rather than replace it. Software creation remains a complex task, and even with the best AI tools, it remains a challenge. Willison mentioned that producing software is an extremely difficult task, even with AI tools. This inherent complexity in software development ensures the continued necessity of human skills.

Matthew Yglesias, a political commentator, recently tweeted that he prefers professional companies to use AI to create better quality software at lower costs. Willison shares this view, preferring to hire professionals for complex tasks, just as he would hire a plumber for plumbing work. This analogy underscores the importance of expertise and experience in producing reliable solutions.

Regarding SaaS solutions, Willison emphasizes the importance of user experience. He only wants to use a CRM if other large companies have already successfully tested it for several months. This approach ensures a certain level of reliability before taking risks with new solutions. Assurance of quality and performance is crucial for confidently adopting new technologies.

Brief IA — L'actualité IA en français

L'essentiel de l'actualité de l'intelligence artificielle, décrypté et expliqué chaque jour.