A problem with slogans is they get adopted outside of contexts where they make sense, either because the people using them didn’t carefully consider whether or not they were true, or because they provide an excuse for doing something that would otherwise not be allowed. Where a monoculture exists, with a group of people with similar values, culture, resources, and problems all make decisions based on the same assumptions, inappropriate slogans can cause systemic biases. The worst offender I’m aware of right now is “it’s better to ask for forgiveness than ask for permission”.
I have no particular interest in tracking down who said this first and in what context. I will give it the benefit of the doubt and assume that initially it was said in a context where it was true — improv comedy, maybe. However, like similar slogans like “move fast and break things”, today it is used almost exclusively in situations where it is not only untrue but also actively harmful.
In order for it to be true for it to be better to ask for forgiveness than permission, the following must also be true:
- The stakes must be low — in other words, mistakes must not be very damaging (or else apologizing wouldn’t be enough)
- There must be a single homogenous party from which to ask forgiveness (or else asking for forgiveness wouldn’t make sense, because you would never be forgiven by all concerned)
- Asking for permission must be more difficult or risky than getting forgiveness — in other words, the party from which you ask permission must be conservative about it
- Success must be likely (or else you would be seen as a perpetual screw-up for following this advice)
- Performing the task must be its own reward — in other words, you must see even the failure as valuable
How this is interpreted, however, hinges on how we define ‘better’. When people say this in the tech industry, the most charitable explanation is ‘better’ means ‘better for my paycheck’ rather than ‘better for users’ — in which case, one can expect to apologize to one’s supervisor, not one’s users, if one takes down all production systems for a week.
While this is charitable, it’s hardly an endorsement. None of us should feel better about losing service on the grounds that the developer at fault was forgiven by his supervisor. Any system with users cannot afford the kind of unreliability produced by lack of oversight, because the real stakes are much higher than a single developer’s paycheck.
Ultimately, the attitude embedded in this slogan, taken too seriously, is at the core of many of the worst behaviors associated with the tech industry. Uber repeatedly violates labor laws on the grounds that it can get away with doing so — and asks forgiveness when sued. The creepiness of redpillers and PUAs mostly comes down to the entitlement they feel toward other people’s bodies, assuming they don’t need to worry about consent beforehand because they can ask for forgiveness after they’ve gotten what they want if in retrospect consent wasn’t given. More concretely, this attitude produces shitty dysfunctional code, short-lived companies that sell user data and disappear suddenly, ethically-dubious business practices, and a general culture of “I’ve got mine, bub” that directly contradicts the phony “save the world” PR everyone likes to wear.
Here’s the thing: if you’re doing real work, you have real responsibilities. One of your responsibilities is to make sure your decisions are safe — not for your paycheck, but for everyone else. You have the responsibility to check with colleagues in order to make sure your plans aren’t stupid and damaging, and you have the responsibility to make sure your colleagues aren’t doing anything stupid either. If you aren’t willing to take ‘no’ for an answer, then you should switch to an industry where nothing you do matters, because that’s the only situation where such behavior is morally justifiable.