After two years of vibecoding, I’m back to writing by hand

The speaker warns that AI coding assistants often produce code that looks correct but can be confusing or flawed when revisited, highlighting the need for human judgment and responsibility in software development. He reassures developers that, despite AI’s usefulness, the core tasks of ensuring code quality and accountability remain fundamentally human and irreplaceable.

The speaker discusses the phenomenon of using AI coding assistants like Claude or Codex, noting that while the code they generate often appears solid and “merge-worthy” during review, a different picture emerges when revisiting the code weeks later. Upon reading the entire file, the code can seem confusing, poorly structured, or even nonsensical, despite having passed initial reviews and tests. This disconnect highlights a subtle but significant issue: AI-generated code can look good in isolation but fail to hold up in the broader context of a real codebase.

He references a tweet that articulates the core problem: AI coding tools are designed to produce plausible-looking code that can fool users into thinking it’s correct. The speaker outlines several scenarios: for medium-complexity tasks, the AI often hallucinates plausible but incorrect solutions, which the user then corrects, leading to a false sense of accomplishment. For boilerplate code, the AI simply regurgitates existing patterns, and for complex tasks, it fails, forcing the user to break down the problem into smaller pieces. This process can mislead users into believing the AI is more capable than it actually is, when in reality, the user is doing much of the heavy lifting.

As users try to adapt, they may write increasingly detailed specifications and prompts, hoping to guide the AI toward better results. However, the speaker points out that no specification can anticipate every real-world requirement, and AI-generated solutions often only work in controlled or test environments. The code may pass all tests and appear functional, but upon closer inspection, it can be structurally unsound or incoherent—what he describes as a “psychedelic airplane” that looks right but isn’t truly fit for purpose.

The speaker emphasizes the importance of human responsibility and judgment in software development. While some believe that code review will become obsolete with AI, he argues that someone must still be accountable for the quality and safety of the code, especially when real users and sensitive data are involved. Automated tests and pull request reviews are not enough; developers must thoroughly understand and take ownership of the code they ship, as only humans can make nuanced value judgments about software quality and reliability.

In conclusion, the speaker reassures software developers concerned about AI taking their jobs. He asserts that those who have spent significant time working with AI coding agents recognize their limitations and are not worried about being replaced. The core of software engineering—responsibility, judgment, and ownership—remains a fundamentally human domain. While AI tools can be helpful, the idea of fully autonomous software development is unrealistic and potentially dangerous. Ultimately, the industry will realize the need for human oversight, and developers’ roles will remain secure.