If everyone uses a tool a specific way that ends up causing problems, is it the fault of the tool, or the operators?

The temptation is there to place the blame square on users. It’s why we use phrases like idiot-proof, or the poor worker blames their tools, or PEBKAC. Certainly I’ve shaken my head at those hammering square pegs into circular holes, then blaming the peg.

What do you mean your platform doesn’t support RDP for your FreeBSD templates? Okay fine, as long as Linux does it.

But it’s not always clear cut. Ill-conceived or poorly-implemented software will necessarily attract bad uses. A lock-picking set resembling a potato peeler will be used to prepare crisps, despite frustrated responses from its designer. You don’t want it used that way? Well, then why does it look like a potato peeler?

Slack is a perfect example, though it applies to many other chat applications. So much electronic ink has been spilled saying the software isn’t the problem, it’s that people use it to replace email, or don’t set boundaries, or create too many rooms, or post too frequently, or that it’s merely dysfunctional company culture writ large. Medium writers seem especially enamoured with this concept.

That all may be true, but if the tool happily accommodates people projecting their problems onto it, doesn’t it share some of the blame? If not, should it?

Good software is improved when its operation causes problems, even if they weren’t foreseen, or even the fault of the designers. Bad software is defended by only blaming users.