Just use the bloody Tool, OK?

By Daniel Samson · 2024-05-24

Two engineers can burn an entire afternoon arguing about whether the opening brace goes on the same line. A linter settles it in nought-point-nothing seconds and never gets defensive. Just use the bloody tool.

Style arguments are a tax on the team

Tabs versus spaces. Import ordering. Semicolons. Single versus double quotes. None of it affects whether the software works, and yet teams spend real, billable hours relitigating it in pull requests — usually with the most senior person's preference quietly winning by attrition.

Let the tool be the bad guy

Prettier, ESLint, gofmt, rustfmt, Black — pick the one for your stack, agree the config once, commit it to the repo, and never have the conversation again. The beauty is that the tool is impartial. Nobody's ego is attached to its output. It's not Dave from the platform team imposing his taste; it's just the formatter, and you can't argue with the formatter.

If it isn't enforced, it's a suggestion

Run it in CI and fail the build on a violation. A style guide that lives in a wiki is a wish. A style guide that blocks the merge is a standard. Add a pre-commit hook so people get the fix before they even push.

Spend your disagreement budget where it counts

You have a finite amount of energy for conflict on a team. Don't waste it on brace placement. Save it for the things a tool can't decide for you: the architecture, names that actually convey intent, the edge case everyone's pretending won't happen. Automate the trivia so you've got something left for the decisions that matter.