As of today I am supporting `main` as a git branch on all projects I touch.
Wherever possible I'll also disable `master`, but when it's not, `main` will be... the *main* branch.

Turns out that using non-historically loaded language is actually easier to understand than the current mainstream.

White/black list? Awkard, not obvious if you don't have "white: OK, black: KO" internalised.

Master/[slave|servant]? Awkward, not obvious if you aren't used to absolute, totalitarian and static power dynamics.

Show thread

OTOH:

allow/deny list is simple, direct, descriptive.

[main|primary]/secondary is simple, direct, descriptive; and is more dynamic.
It's easy to imagine things that are "primary" in certain contexts and "secondary" in others, while "master/slave" has a hint of... immutability to it.

Show thread

And this is not crazy talk, things like the amazingly good Knot DNS server struggle to explain this in their documentation:
knot-dns.cz/docs/2.9/html/conf

If you replace "master" with "primary" and "slave" with "secondary", suddenly the fact that this authority is relative to each zone becomes much easier to explain (and understand).

Show thread

This is a topic I've been thinking about for a long time, and what poked me to start changing this default was this:
arstechnica.com/tech-policy/20

Apparently some people find that controversial; I call it better, more readable and understandable code and documentation.

Show thread
Follow

And just as a reminder: you don't have to change all the things at once, step-by-step incremental change compounds and goes a long way.

It's also fine to make mistakes and correct them, see this recent-enough example:
git.sr.ht/~evilham/cdist-evilh

Sign in to participate in the conversation
chaos.social

chaos.social – a Fediverse instance for & by the Chaos community