3 ms·
I'm one of (if not the) original architecture astronaut, so you may not want to listen to me, but you're sliding from "architecture astronauts are bad" (true) t
by GMoromisato 22d ago
I'm one of (if not the) original architecture astronaut, so you may not want to listen to me, but you're sliding from "architecture astronauts are bad" (true) to "architecture doesn't matter" (false).
Arguably, architecture is the only thing that ever mattered. Below the level of architecture you're dealing either with algorithms or API calls. Algorithms can be validated by tests and API calls can be validated by tests and the type system.
But architecture is the one thing that could make or break a project and that you can't test for ahead of time. You either know how to create a good architecture or you don't. In fact, the whole point of the Spolsky's Architecture Astronauts' essay is that bad architecture (and bad architects) are a big problem.
AI works amazingly well below the level of architecture, but (I've found) it's not very good at architecture.
- evolve-maz 22d agoI agree architecture is important. But I think the best way to design a good architecture is to have a high level plan, and then feel it out by coding parts of it (usually near component edges / interfaces) in the actual domain with real use cases. That exploration helped me see whether general "best practices" are applicable in this frame, and let me justify if not. That was also prevailing opinion pre LLM: > Only the hands on engineers can shape it since the design evolves in step with writing the code. So I'm curious to know where people changed their minds.
- GMoromisato 22d agoI think your argument is you can't create good architecture without writing code. I sort of agree. You can't be a good software architect without knowing how to code, and you can't be a good architect of a specific code base without being familiar with the code. But I don't think you expect an architect to have written all the code, right? I don't even think you expect an architect to have read all the code. The whole point of being a good architect is understanding the abstractions so that we can focus on the overall system without necessarily knowing all the details. I don't need to know the FFT math behind JPEG to integrate an image library. So there's no real change in opinion. Architects were never expected write or even understand every line of code.