Stop Writing Software Twice: How AI Stops the Cycle of Rewrites, Missed Deadlines, and Blown Budgets

Albert Santalo avatar
Albert Santalo 5 min read
Stop Writing Software Twice: How AI Stops the Cycle of Rewrites, Missed Deadlines, and Blown Budgets

Why software has always been written twice — once in specifications, again in code — and why that second write is finally going away.

In software development, when done right, we have to write software twice: first, in detailed specifications that explain exactly what the software should do, and then again as code that brings those specifications to life. But here’s a hard truth: it is rarely done right the first time.

The process often breaks down because creating exhaustive specifications is time-consuming, and teams rarely capture all the necessary details upfront. This leads to gaps, assumptions, and costly rework. As a result, software projects often run over budget, miss deadlines, and leave everyone frustrated.

The Hidden Costs of Writing Software Twice

To understand why writing software twice is necessary but rarely done well, let’s break down the two phases:

1. The First Write: Natural Language Specifications

The first time software is written, we’re not writing code at all. It’s creating requirements, user stories, and design documents—written in natural language. This is where teams describe how the software should function, what users can do, and what the experience should be like.

But here’s the problem: no team ever has the luxury of writing all the details. Product managers often have to rush to meet aggressive timelines – some projects don’t even employ professional product managers. They outline the broad strokes, but key features and interactions are missed. As Steve Jobs famously said, “Great products are made by 5,000 small decisions,” but in most projects, we don’t make those decisions upfront. They’re left for developers to interpret later, which leads to the second step.

2. The Second Write: Translating Specifications into Code

Once the specifications are handed off, engineers are responsible for turning those descriptions into functioning code. But when the first “write” is incomplete, developers are forced to use their imagination to fill in the blanks. Assumptions are made, and while engineers may have a good grasp of technology, they may not have the full picture of the product’s vision.

This is where the problems surface:

  • Missed details lead to friction: When product teams don’t specify an important feature or use case, developers have to guess or improvise. This often results in functionality that doesn’t meet expectations.
  • Assumptions lead to rework: When developers fill in the blanks, they may build features in ways that don’t align with the product vision, causing massive rework later in the project.
  • Finger-pointing becomes inevitable: As deadlines slip and budgets overrun, teams shift blame. Product teams call-out engineering for “not getting it,” while engineers point fingers at product for unclear specs.

The result is a cascade of problems that lead to missed timelines, overshot budgets, and unsatisfactory outcomes. The Standish Group’s CHAOS research has tracked for years that the majority of software projects run over budget and miss their delivery dates. A McKinsey study with the University of Oxford found that large IT projects on average run 45% over budget and 7% over time, while delivering 56% less value than predicted — and that 17% of large IT projects go so badly they threaten the very existence of the company.

Clearly, something in this process is broken.

Breaking the Cycle with AI: Meet Archie

What if we could eliminate this wasteful cycle? What if we could make those 5,000 decisions faster and better and get the specifications right and complete the first time, while also minimizing the need for developers to guess or fill in the blanks?

This is where Archie comes in. We built Archie as an AI-powered system that completely transforms how software is written — reducing the need to have humans translate natural language specifications into working code. This is the same instinct behind building API-first: get the architecture right before anyone writes a screen, and the rest follows.

The New First Write: AI-Driven Specifications

Archie is an AI Product Architect, helping teams generate comprehensive, accurate specifications in a fraction of the time. Instead of spending weeks or months in discovery, product teams can simply describe their vision in natural language. Archie then transforms these descriptions into a full set of functional, visual, and technical designs within minutes. Users can then work with Archie for a few hours or days to refine the results and achieve a 100% illustration of their vision and detailed requirements.

By automating the specification process, Archie ensures that no critical detail is missed. Every interaction, feature, and edge case is captured upfront, giving development teams clear, actionable requirements to work with.

The New Second Write: Code Generation, Not Translation

Once the specifications are complete, Archie takes things a step further by generating the actual code. Using its generative development engine, Archie translates the specs into production-ready code written in standard languages like JavaScript, TypeScript, and Python, using modern frameworks such as React.js and Next.js.

This means that instead of developers spending months translating specifications into code, Archie handles the heavy lifting—reducing development timelines from months to days.

The End of Chaos, the Start of Innovation: How AI is Revolutionizing Software Development

With Archie, the entire software development process is reimagined:

  1. AI accelerates decision-making: Archie helps teams focus on the countless details that make a product great—quickly and efficiently. By doing so, the first “write” becomes far more accurate and complete.
  2. Developers no longer need to fill in the blanks: Since Archie generates code directly from the specifications, the need for developers to make assumptions or guess what the product team intended is eliminated.
  3. Reduced rework and better outcomes: By ensuring that both the product vision and the code are perfectly aligned from the start, Archie drastically reduces the time spent on rework and corrections.

The Future of Writing Software: Natural Language

The status quo of software development required teams to write software twice: once in natural language and again in code. But with the advent of AI and tools like Archie, this wasteful process is becoming obsolete. By allowing teams to describe their product in natural language and turning that into working software, we’re moving toward a future where software is written once — and written right.

This is the move the next generation of AI app builders is organized around: clarity before code. Describe the application as a blueprint, get the architecture right, and let the code be generated against it. The second write — the slow, expensive, error-prone translation from intent to implementation — was never the valuable part. It was the tax we paid because there was no other way to get from one to the other.

There is another way now. Software was always supposed to be written once.

Related Posts