upvote
The problem with AI SE is that AI writes un-architecture-ed code. The problem #2 is that a lot of people suck even more....
reply
AI writes unarchitectes code if you don't have a system for developing and maintaining a consistent architecture over time. In human coding, a lot of architecture decisions tend to only live in human brains, communicated through ephemeral means (text chats, voice calls, etc) and are not concretely documented. Since LLMs don't really have a way to manage long running architectural decisions (memory systems can only get so far, like it won't capture architectural decisions if you never talk about architectural decisions), you have to (have your agent) capture architecture design within the repository.

I personally like using openspec for this, because it makes the model iteratively ask you architectual decisions, and then manages creating and accessing the documents as needed.

reply
Let him who is without sucking among you, suck the first stone.
reply
> The problem with AI SE is that AI writes un-architecture-ed code

Not necessarily. I use SOTA models with established stacks like .NET which allow my agent to easily follow decades of best practiced patterns (DI, EF Core, ASP.NET Core...) so you still and up with proper architecture.

In fact I can easily still manually inspect everything bc I already know how it's supposed to be written.

reply
From my experience, the latest models still struggle to create good architecture in the sense of good system design. You mention a couple of generally helpful patterns for the structure of the code. But they don't help much to create logical units, with intuitive boundaries, good cohesion etc. - at which even the latest models constantly make awkward decisions.
reply
I agree, but if we go one step further, what is the goal of those logical units? If the answer is, to make the code more maintainable, then the next question is, for whom? For humans, or for llms? Is it still important that the code is maintainable for humans if no humans read it anymore? Those are not rethorical questions, I am asking them for real. What is "good quality" code in the age of AI? If there is a lot of duplication but no performance consequences, is it really a problem if only AI modify it?
reply
> But they don't help much to create logical units, with intuitive boundaries, good cohesion etc.

Completely, 100% agree on these exact points. I have access to every frontier model at work. None of them write what I would call clean code. At work the teams that have gone fully vibe-coded have repos full of broken abstractions that just accumulate over time. Eventually most of the effort of the team and their AI tokens seemingly goes to fixing issues that then break other things. Any attempt at 'refactor this mess, make no mistakes' turns into a _huge_ churn of changes ("shuffling the deck chairs") without ever really fixing things.

reply
Yea but you chose to blame the LLM, not the vibe coders.

As I said: prompting correctly and reviewing are still indispensable skills.

reply
Ofc a big part of it is still knowing how to prompt correctly and manage context.

Perhaps a lot of devs still have a flawed mental model of how these things even work.

reply
The fact that you can say this with a straight face impresses me.
reply