19 Aug 2005 apenwarr   » (Master)

Company Policy

At work we summarize our general office policy in one rule: "Don't do stupid stuff." This is an amazingly powerful, simple, and all-encompassing rule. Recently some people have asked to have more specific policies written down so that it's easier to determine if they're in compliance. In fact, if you're working for a company, this is the wrong thing for you to want. Why? It's simple.

Because explicit company policies exist so that it's easier for the company to fire you.

There. I said it. End of rationale. Think about it: if you don't follow clear, explicit company policy, it's obvious that you're an uncooperative employee who's not a team player and can't play by the rules. And by the way, ignorance of the law is no excuse.

By extension, you'd think that simply following the company policy, then, will keep you out of trouble and prevent you from getting fired. In many companies, that's absolutely true: which is why you have so much dead weight. Ironically, some unions (the ones who are prevented from going on strike because they're an essential service, or who don't want to go on full strike and thus sacrifice their income) will decide to simply do absolutely the bare minimum amount of work in order to comply with the rules. The result is that useful work grinds essentially to a halt, because most useful work isn't actually covered by company policy, and will never be.

Well, I don't buy it. Don't do stupid stuff. But how do you know if you're doing stupid stuff? Well, here are a couple of steps that help me a lot:

1. If you don't know whether what you're about to do is stupid, it would be very stupid to proceed without first figuring that out.

2. If you think someone else is being stupid, do everything in your power to make them stop. Doing otherwise would make you an Accessory to Stupidity. If the person in question resists all reasonable attempts to educate them, they have a serious problem that will block their career: chronic stupidity. Chronic stupidity, being very vague, is not good enough grounds for firing someone. But lack of productivity is, and chronic stupidity always leads to low productivity; that's what makes it stupid.

Another problem arises when someone in a higher position of authority than you orders you to do something stupid. Now you have two choices: do what you're told, which would be stupid; or don't do what you're told, which could get you fired, which might also be stupid. (For example, if you can do more good by staying with the company and doing this one stupid thing than by leaving entirely, it would seem stupid to disobey.) This is a typical moral dilemma, and other than advising you to do the "less stupid" of the two choices, I won't try to answer that question. But I can avoid the question by asking another one: Why is that person with authority telling you to do something stupid in the first place? There are two possible reasons: either the person is doing something stupid, or the person knows something you don't. If you're not sure which one it is, you need to go back to step 1 (First, figure it out), then make your decision. And if it turns out that person is doing something stupid, you need to move on to step 2 (Tell them).

In engineering, we call this process Root Cause Analysis. You might have to go back several steps to find the basic, underlying cause of the stupidity. Rumour has it that Toyota requires employees to ask at least five levels of "Why?" when trying to find the root cause of any problem; sometimes it lies deeper than you think.

So that's the bargain I make with people who work for me. I don't make strict rules; do the Root Cause Analysis and you'll see why that's doing you a favour. But in return, I expect you to think for yourself and do what makes sense. You'll have to explain yourself in case it looks to me like you're doing something stupid... and I promise to do the same in return.

Incidentally, doing things this way in some other companies could happily get you fired. But you can avoid that pitfall, the whole company will be better off if you completely ignore their policies and avoid stupidity at all costs.

Aside on Governments and Laws

Incidentally, "ignorance of the law is no excuse" is a comment usually applied to governments, and often ironically in view of the probably tens (or hundreds) of thousands of pages of laws that apply to you at this very moment that you don't know about and might very well be violating. The essay above doesn't directly apply to governments, even though there are definite parallels. The similarity is: in my opinion, explicit laws exist mainly so that we can throw people in jail. But actual civilization is based on much more than just laws: the vast majority of us would do perfectly sensible things even if there were no laws against it. The parallel to "Don't do stupid stuff," for societies is, "Do unto others as you would have them do unto you."

Where the analogy breaks apart is: in a company, we really can kick you out just because your end result - your productivity - is obviously too low. We don't kick you out just because you did something stupid (and we can't), but because your stupidity led to bad consequences. And being kicked out isn't really that serious; there are lots of other companies where you can try again. In society, however, we can't kick you out at all. We can throw you in jail or kill you, I guess, but that's far too serious for most violations. So we have to have a very, very clear system that won't punish you unless it's totally obvious that you did something totally wrong. It's not very efficient, and we depend much more on the rules we didn't write down, but it's a working compromise.

The bargain you make with your lawmakers is: Ignorance is no excuse, but in return, the laws must all only be specific applications of the most basic rules of society, like "do unto others."

Aside on Piracy

And that's why in Canada you're allowed to copy music for your friends. "Do unto others" is the basic rule, so our government can't morally make specific laws that obviously violate it. (Not to say they won't try, but so far, so good.)

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!