| Appreciate learning from your perspective. I've built, integrated and sold expensive complex systems. They want it working, connected, and reliable. Lots of paths there. Have you built with LLMs? I'm asking because I would refer to things from having something working on a complex code base. Specifications, or inputs in a way are a new code. The added focus on documentation, before and after is a bonus too, and also helps with alignment. Code styles/formats/philosophies can be documented and followed. The human process of what to look into, in what way, for what areas of the code base, can also be trained and remembered. There are ways to achieve and maintain precision without 100% mathematical precision, because there are only so many ways to solve a problem, or step and the mechanisms for deciding can also be defined in general, or specific. |
When I look at SpecKit, I see a kind of vibe coding fantasy: "code is no longer king", stop writing "undifferentiated code." There is no code on the site, just a bunch of prompts and commands.
On the other hand, what you are describing above is bringing specs closer to the codebase, while not replacing the code itself. Like I said I have no problems using natural language as a guide (even as a primary guide). I also completely agree that it helps with documentation.
My main point is: if you want to maintain a complex system, you also need to have an accurate description of the system behavior in some kind of formalism.
This kind of description reflects the true system behavior better. It's more helpful when you need to predict the impact of changes and also during debugging.