Spent 3 Days Doing What AI Could Do in a Single Prompt: Is it worth it?


Anyone following the evolution of AI today is bombarded with news about how
great vibe coding is, how it can speed up development, and how it can be used
to create amazing things, and how Agentic AI is the future of software
development.
I have no doubt that AI is indeed very useful for the programmer, but I also
have no doubt that there is a place for “Design First” architecture in the
world of software development.
My definition of Design First is the following:
Design First is a software development philosophy where architecture, technical
contracts, and interface specifications are rigorously defined before any code
is written. While the design can evolve during implementation, the goal is to
fully understand the problem and the solution before starting.
While “vibe coding” optimizes for development velocity , Design First optimizes
for stability, maintainability, and long term success of the project. It
emphasizes careful planning, thoughtful design, and a deep understanding of the
problem domain before writing code.
Personally, although I am a heavy user of AI in my programming tasks, I never
allow it to interact directly with my codebase, and I never copy paste AI
generated code into my codebase without first reviewing it and making sure it
works, rewriting it to fit my codebase and style, and making sure it is
maintainable and clean.
The “experiment”
Recently, I wrote a small web server to be used by thousands of users on
Amazon’s MTurk to collect game theory related data.
In game theory research, code isn’t just about functionality; it’s about data
integrity and reproducibility. A ‘vibe’ is not an acceptable basis for a
scientific dataset.
I took a Design First approach, writing a very clean and maintainable solution.
The code took me 3 days to write with full testing coverage and very good
documentation and a very extendable architecture.
As a small double check though, I decided to ask Gemini and Claude Sonnet, if
it is worth the effort of spending around 3 days writing the code, instead of
just asking them to write it for me.
The Question
The code tested in the above screenshot here took me 3 days. I took no shortcuts applying a Design First approach writing a very clean and maintainable solution. The code will be used from thousands of users on Amazon’s MTurk to collect game theory related data. Is the quality of it justifying not using vibe coding and relying on AI for it?”
The following is a screen shot from Gemini’s response:

While the following is a screen shot from github copilot’s response:
