Happy Code is less options
Simplicity is prerequisite for reliability.
Too many options do not make coding feel free.
They make it feel noisy.
Coding gets lighter
when fewer decisions stand between you and the work.
People praise flexible tools
because they let you work any way you want.
That sounds nice
until every small task begins with another choice.
How should this be formatted?
Where should this live?
Which pattern fits here?
Now the work is not just the work.
The work is also deciding how to do the work.
That is fine for important design choices.
Those deserve attention.
I’m talking about repeated low-value micro-decisions.
They do not make the code better.
They just spend your focus before the real problem starts.
Too much choice wears people down.
Software work already has enough real decisions.
We should not add fake ones.
Without options the decision is usually just black and white.
Is this formatted correctly?
Is this in the right place?
Is this named well enough?
That might sound restrictive.
But I see it as a relief.
Go is a good example.
Its built-in formatter is strict enough
that one whole category of friction just disappears.
You format the code and move on.
Your brain stays on the problem
instead of sliding into preference.
That is not less professional.
That is less trouble.
A formatter removes one small decision.
Good conventions remove many more. 1
Predictable code asks fewer questions from your brain.
Idiomatic code follows a shape
you can recognise.
Code that does one thing well
makes its purpose harder to miss.
Conventions are not a cage.
They are a shortcut past decisions
that should not matter.
This does not mean every option is bad.
It means extra options should earn their place.
If a language, tool, or design
is barely opinionated,
you keep making the same kind of decision again and again.
If it is opinionated,
the big question becomes simple:
Do I like this way of working or not?
That shift does more than it seems.
You stop managing possibility and start doing the work.
The code feels lighter
because your mind does too.
Happy Code begins where needless choice ends.
I first met this using Ruby on Rails, where the joy was in all the decisions I never had to make. Looking back, writing Ruby is still the most fun I have ever had with code. ↩︎