karloscodes

Names yes, geometry no

· 3 min read

You learned hexagonal architecture at a job with hundreds of engineers, and it made sense there: layers as treaties between teams, interfaces as borders nobody crosses without paperwork. Then you started something small. A side project, a tiny company. And you brought the hexagon with you, because that’s what professional code looks like.

The skills transferred. The context didn’t.

Keep the half that costs zero lines of code: the names. Domain-Driven Design got this part right, and it’s the thin part of a thick book. Call things what the business calls them. If the accountant says invoice, the class is Invoice, not BillingDocumentEntity. Draw boundaries as vocabulary: this module talks about shipments, that one about payments, and they don’t borrow each other’s words. That’s thinking, not architecture, and it’s worth the same at any headcount. The rest of the DDD catalog, the aggregates and repositories and factories, is geometry by another name. Leave it in the book.

Because the geometry’s promise is seductive. Someday you’ll swap Postgres. Someday the big refactor will glide along those segregated interfaces. Someday never comes. At the old job, that was fine: the premium was split across a hundred engineers, and insurance you never claim is what bigness costs. At your scale, the whole premium lands on five of you, or just on you. The DTOs, the mappers, the interfaces, the wiring: a handful of hands maintains all of it, waiting for a someday that was never yours to begin with. Enterprise insurance on a small house.

The hexagon was a treaty between a hundred hands in one codebase. There’s no one to sign treaties with anymore. Code that fits in one head needs no protection from other heads. Smallness already does the hexagon’s job. Small requires less, and the requiring less is the whole opportunity.

And staying small is a decision with champions. 37signals has run Basecamp and HEY for millions of users with a few dozen programmers, on one monolith, by choice, for two decades. They didn’t fail to grow. They refused the bigness so they’d never need the treaties.

The hexagon was sold to big enterprises, in books written for engineering at scale. Nobody wrote the book for your scale. So here’s the short version: names yes, geometry no. Small isn’t a phase to apologize for. It’s a competitive advantage, and skipping the hexagon is how you cash it.

Keep the language. Lose the geometry.

New posts in your inbox. Unsubscribe anytime.

Or grab the RSS feed.