Is Code Really Cheap?

Is Code Really Cheap?

In the era of agentic coding, there’s a growing narrative: “Coding is Cheap. AI writes everything. Developers are no longer the bottleneck.”

That sounds compelling—until you actually try to build something real.

The hard truth?

Coding is no longer the bottleneck. But writing reusable, domain-driven, maintainable systems still is.

And that's exactly where strong software engineering (SE) skills matter more than ever.

If you've used AI coding tools seriously, you've probably experienced this pattern:

  • First iteration → “Wow, this is close to what I want!”
  • Second iteration → “Hmm… this is getting messy.”
  • Third iteration → “Wait, this is worse than before.”

Article content

Instead of converging toward clarity, things drift.

Why?

Because AI is excellent at generating local solutions, but weak at maintaining global coherence. And that’s where engineering thinking becomes critical.

Let's answer some common questions we face while agentic coding:

1. Why didn't the AI do what I wanted?

This is not an AI problem—it's a specification problem. Software engineering teaches us:

  • how to define clear boundaries
  • how to express intent through abstractions
  • how to reduce ambiguity

If your mental model is fuzzy, AI will amplify that fuzziness.

2. Why is AI output so verbose—and how do we control it?

AI tends to:

  • over-engineer
  • over-explain
  • introduce unnecessary layers

Article content

Without strong engineering judgment, you end up with:

  • bloated functions
  • redundant abstractions
  • hard-to-follow logic

Good engineers know how to:

  • enforce simplicity
  • remove noise
  • guide AI toward minimal, elegant solutions

3. Can Domain-Driven Design (DDD) bridge the gap?

One of AI's biggest weaknesses is domain understanding. It can generate syntax but struggles with meaning.

This is where Domain-Driven Design becomes powerful:

  • Ubiquitous language aligns AI output with business concepts
  • Clear bounded contexts reduce confusion
  • Explicit models guide generation

DDD doesn’t just help humans communicate—it helps AI stay grounded.

4. Is Test-Driven Development (TDD) more relevant now?

TDD is often debated—but in the age of AI, it gains a new role: AI tends to “do too much”:

  • adds extra features
  • changes behaviour unintentionally
  • breaks existing logic

Tests act as:

  • guardrails
  • contracts
  • feedback loops

With AI, tests aren't just for correctness—they're for controlling behaviour 💡

5. Why does the codebase become harder over time?

As systems grow:

  • your mental load increases
  • AI loses context
  • complexity compoundsMy brain hurts—and AI doesn't understand my code anymore.My brain hurts—and AI doesn't understand my code anymoreMy brain hurts—and AI doesn't understand my code anymore.

Article content
My brain hurts—and AI doesn't understand my code anymore.

This is a design problem, not an AI limitation.

Concepts like deep modules become crucial:

  • hide complexity behind simple interfaces
  • reduce cognitive load
  • make systems composable

The better your module design, the more effective AI becomes. Design the interface, delegate the implementation 💡

The Shift: From Coding to Thinking

Agentic coding changes the bottleneck from writing syntax to:

  • designing systems
  • modeling domains
  • enforcing constraints
  • maintaining clarity

Investing in design every day is still the best ROI in software. 💡

Biggest lesson for me: smaller steps and explicit acceptance tests beat long prompts every time. Curious what failures people see most, flaky tests or integration drift?

Like
Reply

To view or add a comment, sign in

Others also viewed

Explore content categories