The Infinite Software Crisis (AI column)
I watched it this weekend. note Jake Nationals. (Jake Nations), a staff engineer from Netflix. Jake is embedding AI tools into Netflix’s development processes, and in this talk, he shares an engineer’s sober look at how generative code breaks architecture. When it comes to the key points, they are
1The Endless Software Crisis Historically (from Dijkstra to 60-x to Cloud Native.) Each new tool promised to solve the problem of complexity, but only allowed us to build even more complex systems. AI has just pushed this process to the limit. 2️⃣ Vibe Coding => Tech Debt Development through a chat interface (conversational interface) - it's a trap. Architecture begins to mirror your conversation: each "fix this" refinement layers over the previous one, creating a spaghetti code with dead branches of logic. What's interesting is that I'm trying to develop at Lovable right now, and I see how my queries lead to architecture. (However, I also see in GitHub how and what code appears.) 3️⃣ Simple vs Easy Jake quotes Rich Hickey: Easy is what’s at hand: copy from StackOverflow or ask AI to generate a piece of code
- Simple is the absence of weaves. (entanglement) AI makes the "easy" part almost free, but kills "simple" because agents can't tell the difference between "substantial" and "random" complexity. (legacies) 4The solution that Jake offers Using the three-phase method to avoid drowning in chaos, you need to return engineering rigor and divide the process: - Research. Feed the agent docks and charts to make a map of the system. Be sure to subtract and correct manually - Planning. Write a specification of changes (function-signature). The plan must be so detailed that Jun can implement it mechanically. (paint-by-numbers). - Implementation. Only now start the generation. You are reviewing compliance with the plan, rather than trying to guess what the AI fantasized.
If you think about it, we're entering an era where code writing costs roughly 0. And the main deficit becomes perception (context & understanding). If you used to be able to “read” the code and understand how it works, in a world where Jun generates 10k lines per evening, it becomes impossible. Tehlids will have to shift focus from code review to design review and validation of plans. Those who continue to just “chat with code” will soon find systems in the marketplace that cannot be maintained or safely modified.
In the report, Jake draws on the Software Engineering classic, which is worth rereading:
- Fred Brooks, "No Silver Bullet" (1986)
- Rich Hickey, "Simple Made Easy" (2011)
- Edsger W. Dijkstra, "The Humble Programmer" (1972)
#DevOps #AI #Architecture #Culture #Engineering #ML #Future #Software