← Field notes koodalanne

Field note 01

Why monorepos feel like bikepacking

Packing light, carrying everything.

Rider on a loaded bike, packed for a long trip.

There is a particular moment when packing for a bikepacking trip where everything is technically essential.

Tent? Obviously.

Sleeping bag? Probably.

Three tools for a bike you have never actually broken? Apparently.

Suddenly your bike weighs as much as you do.

Monorepos can feel the same.

Everything is there because something needs it. One application needs this package, another needs that configuration, and somewhere in the middle is a tiny utility that everyone depends on but nobody remembers adding.

The trick isn't necessarily carrying less.

It's knowing why you're carrying it.

That's also how I like to approach large codebases.

I don't mind complexity when there's a reason for it.

I mind complexity that nobody remembers the reason for.

On a good ride, you eventually learn what you actually need.

The same thing happens in a good codebase.

Pack deliberately.

And maybe leave the third multitool at home.