How we should treat each other

Social rules for technologists

Last year I came across the Recurse Centre's social rules*.

Working with computers day-to-day, it's easy to get carried away with the incidental complexity of our work. I've found that too often we can slip into discourse which at best could be called 'unproductive'. I really like how these social rules neatly and concretely capture a number of behaviours which are self-evidently unproductive and unsupportive.

As a brief summary, the rules are:

No well-actually's:

Alice: I just installed Linux on my computer!

Bob: It's actually called GNU/Linux

This one really makes me reflect on how often, when we're 90% in agreement with the person we're speaking to, we have the opportunity to either frame our response around points of agreement, or else our — sometimes pedantic — points of disagreement. I don't think this is quite all that was was intended when this rule was written, but it feels valuable to me to reflect that while constructive disagreement can be important, not every point is helpful.

No feigning surprise

Dan: What's the command line?

Carol: Wait, you've never used the command line?

We all learned something once, and you'll understand things better yourself if you always keep that in mind.

No backseat driving

Bob: What's the name of the string copy function?

Alice: Strncpy.

Eve: (from across the room) You should use strlcpy. It's safer.

This is probably my personal biggest bug-bear.

I'd group with it a class of frustrating behaviours where we insist we have the 'answers' to the problems other people face; even if we haven't taken the time to understand their problems properly**. As such, I think it can be more than just a conversational blooper, but instead can be a long-lived behavioural mistake.

No subtle -isms

Carol: Windows is hard to use.

Bob: No way. Windows is so easy to use that even my mom can use it.

It's easy to belittle the complexity of things we've gotten used to, and doing so doesn't help ourselves or others. As a connected thought, I wonder how much incidental complexity could be cut out of computing if we stopped dismissing real issues with the oversimplyfing words "it's just...".

That's the last rule, but really I'd encourage you to read them for yourself.


* I came across the social rules in the code of conduct for Josh Comeau's excellent CSS-for-JS course. I'd recommend it to anyone!

** See also this post