THE CARPENTER AND THE BOY WITH THE HAMMER
A reflection on how we learned to see the world through fashionable tools.
The Technology — the shape of the problem.
But the truth is simpler, and more uncomfortable: We modelled the world according to whatever was fashionable at the time.
IMS was fast not because it was old or mystical, but because it forced you to declare the world as a hierarchy.
A PCB (Program Control Block) wasn’t just an access path — it was a commitment. You told the system: this is the parent, this is the child, this is the order in which reality must be walked.
IMS could follow pointer chains because you had already chosen the shape of the world.
SQL did the opposite.
It treated everything as a set, and every relationship as something to be inferred at runtime. A many‑to‑many table was simply a set of pairs; the optimiser would decide which hierarchy to project when you asked the question. Flexibility became the selling point. Performance became the cost.
The industry climbed aboard the relational bandwagon and stayed there for forty years. Every problem was re‑described until it fit the fashionable tool.
Programming languages suffered the same fate.
OO became a hammer so large that everything briefly looked like an object.
Functional purity became a badge of intellectual seriousness.
Java became universal because it was fashionable, not because it was elegant.
JavaScript became inescapable because the browser made it fashionable.
Python became the lingua franca of AI because the community made it fashionable.
None of these victories were purely technical.
They were cultural.
They were bandwagons.
And once a bandwagon is rolling, it becomes invisible. It stops looking like fashion and starts looking like truth.