June 30, 2026
Graphs, gasps, and geek warfare
Structural Correctness
Coders are fighting over a nerdy idea that promises fewer app disasters
TLDR: The article argues software is safer when its rules are baked into its structure, so bad connections simply can’t happen. Commenters were split between calling it a genius bug-killer and mocking it as elegant-on-paper theory that real teams will struggle to use.
A deceptively brainy post about how to make software harder to break somehow turned into the kind of comment-section food fight that developers live for. The big idea is simple-ish: instead of trusting people to remember every rule, you build the rules into the shape of the system itself. If two parts of an app aren’t explicitly connected, they can’t secretly affect each other. Fans in the replies were basically swooning, calling it the closest thing programming has to “make illegal states unrepresentable,” while others dubbed it “seatbelts for code.”
But naturally, the backlash arrived right on schedule. One camp loved the dream of describing an entire product in one big map — code, services, data, even monitoring — and then having tools check it all automatically. Another camp groaned that this sounds like the classic engineer fantasy: turn every messy human problem into a giant diagram and pray reality cooperates. The mention of Bazel especially set off reactions, with supporters praising its strictness and critics joking that it’s like “filing taxes to compile an app.”
The funniest comments fixated on the article’s core flex: “no edge, no capability,” meaning no stated connection, no permission. People turned that into memes about dating, office politics, and group chats. And when the post moved into databases and state changes — basically, how things move from one condition to another without chaos — the crowd split again. Some called it a brilliant way to stop expensive mistakes before they happen. Others replied with the timeless internet review: cool theory, but good luck explaining this to the team by Friday.
Key Points
- •The article says many correctness tools model systems as graphs of typed nodes and edges, including type systems, build systems, IDLs, and databases.
- •It argues that the best graph-structured systems are definitional, meaning the same structure both defines what is valid and determines system behavior.
- •Bazel is presented as a primary example, with edge types such as `deps`, `srcs`, and `data` expressing different capabilities and enforcing explicit structure.
- •The article claims Bazel can serve as a substrate for describing broader product domains, allowing build, test, deploy, and verification workflows to derive from one graph.
- •It contrasts databases, which define valid stored data, with colored Petri nets, which explicitly define valid state transitions through controlled token movement and transitions.