You Are Not Clever for Posting XKCD 927

That's the one about standards

·
·

A thought-terminating cliché is any phrase that you repeat to yourself to excuse your brain from the laborious act of critical thinking. Instead of weighing the nuances of the context and having a productive discussion, you dismiss it with a catchy phrase.

“It is what it is.”

“Everything happens for a reason.”

“Agree to disagree.”

Oops that’s not a catchy phrase, it’s the XKCD comic about standards by Randall Munroe!

And yet… people use it just like a thought-terminating cliché. When they see someone develop a new piece of software that already exists, they may consider different arguments:

But all those thoughts terminate the moment they decide to post XKCD 927. They aren’t being clever, they shut off their brain to conserve energy.

Memes are reductive

What makes this comic so pervasive in the software development community is because there is a nugget of truth here. Sometimes it would be better to focus on and improve an existing piece of software instead of recreating the same thing from scratch.

But to reduce the complex realities of any situation into a reshareable meme is absurd!

Take for example A/C chargers, which XKCD 927 mentions as its first example and in its bonus caption. A few years after this comic, USB-C was released and it has completely taken over. And not just for phones and other small devices, but it is also powering laptops and monitors, and going beyond just charging and challenging HDMI and DisplayPort too! With the right setup, you can connect and power a monitor with a single USB-C cable from your desktop.

But a naive * Specifically naive because that is how the comic is often used. reading of the comic would tell you that USB-C shouldn’t have been invented because it would have likely failed to become a unifying standard; this notion is of course ridiculous.

Is the developer even trying to unify it?

Hey, did you stop to ask yourself if the developer you’re sending XKCD 927 to is even trying to create a unified standard? Because chances are they aren’t.

Developers, famously, have many different reasons * Citation needed. for why they make stuff. Existing software may not be meeting their needs, the project may have rejected their contribution for design reasons, they may want more control and tighter integration than is possible.

Developers may even want to create stuff… for fun.

*gasp* How dare they. How dare they make stuff for silly reasons like fun and learning instead of using existing software and contributing to it.

Stop that. Stop telling people what they should or shouldn’t do.

Programming is a craft, and craftmanship is an art. No single piece of software can be the silver bullet for everyone, and sometimes better software requires new software with a fundamentally different design.

And even if the developer is trying to create The Next Big Thing™, it might just succeed like USB-C.

signature that says "Chai"