I have flip-flopped more than ever in the last 365 days about prioritizing good code vs good product, in the AI age. This helps clarifies why.
I have come to the conclusion that we just do not know yet. There is a part of me that believes there is a point somewhere on the grand scale where the code quality genuinely does not matter if the outcome is reliably and deterministically achieved. (As an image, I like to think of Wall—E literally compressing garbage into a cube shape.)
This would ignore maintenance costs (time and effort inclusive.) Those matter to an established user base (people do not love change in my experience, even if it solves the problem better.)
On the other hand, maybe software is meant to be highly personal and not widely general. For instance, I have had more fun in the past two years than the entire 15 years of coding before it, simply building small custom-fitted tools for exactly what I need. I aimed to please an audience of one. I have also done this for others. Code quality has not mattered all that much, if at all. It will be interesting to see where things go.
Imo, code quality genuinely matter for the outcome and customer happiness. Including in startups.
But, there is also quite a lot of confident "code quality" fluff claims that have nothing to do with maintainability, robustness or performance. Fairly often, a guy claiming "the code is garbage" is not actually concerned with code quality as much as he is concerned with asserting dominance. Or is confusing own preference with quality.
> if the outcome is reliably and deterministically achieved
It's not. My favorite example: due to vibe coding overload literally nobody knows what configuration options OpenClaw now supports. (Not even other LLM's.)
Their "solution" is to build a chat bot LLM that will attempt to configure OpenClaw for you, and hope for the best, fingers crossed. Yes, really.