Problem. There is an idiot on your team. (Or, all over your Wiki, in this case.)
Context. You are working on a project, the success of which matters to you, with other people, one of whom never contributes anything remotely intelligent.
Forces:
Known Uses. Ubiquitous. Everyone is tempted by this AntiPattern at times, as witness the discussion below, which largely treats this as a Pattern rather than AntiPattern.
Potential Generalization. It can be argued that the bozo bit provides insufficient precision for dealing with manifold varieties of idiot that can be found in nature and that a generalization, the TheSfRegister, is helpful.
Here are a few of the problems this AntiPattern can cause:
''When the fool learns the Way, He laughs at it. Yet if the fool did not laugh at it, It would not be the Way. Indeed, if you are seeking the Way, Listen for the laughter of fools.''
This AntiPattern is from Jim McCarthy's book DynamicsOfSoftwareDevelopment: Don't Flip the Bozo Bit and 53 More Rules for Delivering Great Software on Time.
But I've already set my Bozo Bit for McCarthy--I think he's a pretentious idiot. What can I do now? The bit is stuck in that state...
People sometimes invoke this pattern for psychological reasons even when the context doesn't really apply: you may not really care about the project, or it might be quite possible to have the person fired or transferred. However, it can give EgoGratification? to feel somebody is more stupid than you are.
In situations when you aren't forced to deal with someone, this technique can be used to filter out noise from you life. For instance, I don't listen to Microsoft or Linux advocates. On the other hand, ignoring a problem for too long can lead to disaster if it metastases. -- SunirShah
Yeah, kind of like Sun. Just ignore Linux and you'll go away!
My first encounter with a Bozo bit was in the Mac Resource Fork contents, described in Inside Macintosh for the 128K Mac. The rumor then was that it identified MS code, although Multiplan (the first wysiwyg spreadsheet) was not yet out. I had always assumed that was its origin -- does it go back further?
The BOZO bit you're talking about was a rather lame attempt at copy protection. Utilities that copied files were supposed to check to see if this bit was set; if so, the utility should refuse to copy the file. It took nanoseconds for someone to write a utility that ignored the BOZO bit. This sounds like the same thing as the Broadcast Flag?.
The dangers of not being arrogant enough to set the bozo bit.
I am not sure if this is the same phenomena, but I think perhaps everyone should be aware of as it is dangerous. I once met a student (when I was student) who was so dumb that you could feel yourself getting dumber every time he talked to you. I described him as "the black hole that sucked sense". This sounds like an exaggeration but several weeks after describing this phenomena to a friend he dragged me out of the computer room and said to me "That's HIM isn't it!?", I said "That's who?", and he said "I felt myself getting dumber, that's HIM!" and yep, it was. From memory, this guy sucked sense so hard that it was very difficult to turn the bozo bit on. If he spoke to you and you very firmly held the Bozo bit on then the effects were only temporary.
Similarly but not quite as dangerous I once had a teacher who untaught me something. After the class on vectors (revision for me), I realised I could no longer add vectors. I sat down and looked at my text book from the previous year and found that I could no longer work out the problems that I could remember doing the previous year. Luckily I could remember how I did it the previous year. This is a very strange concept so I will explain it a second time.
Immediately after this class If I asked myself the question "how DO I add these two vectors". The answer my brain gave was "Pardon?" If I asked myself the question "how DID I add these two vectors last year?", The answer was first resolve them into orthogonal components, sum the magnitudes ...
It took 20 minutes or so to methodically forget everything this teacher said. From then on I was more careful, I guess I set the Bozo bit.
See also TheGreatGatsby?, Chapter 1.
I set the Bozo bit on my mother-in-law. She thinks that everything she's seen, heard or remembers is the absolute truth, not to be modified by anything anybody else says. It's hard to keep the bit on though, because every now and then she does say something so outstandingly stupid, that I just have to put her right.
It looks like someone should set the Bozo bit for the author of this book according to this review. http://www.ercb.com/feature/feature.0003.html
Some choice quotes about Microsoft thinking:
I'm trying to find the Bozo a new home. That is, he is remarkably unhappy with being assigned to my team, so I'm trying to create a position elsewhere that he might enjoy--difficult because I have only affective power, not authoritative power. But since I'm doing this, he'll probably reject it out of turn. I sense the Bozo has set the Bozo bit on the whole team.
I've tried a few things over the past few months. Generally, I've learned that I must try very hard listen to people that I don't normally agree with (in the RealWorld -- Wiki is another story) because I've had my comeuppance handed to me on several occasions. I'm conscious of this when I get into arguments, so I feel that I do it. From listening very hard, you pick up small comments over a long period of time that describe what the person thinks. This person is enervated because our team came and replaced his six months of code with a better system, and we made no qualms that it was a vastly better system. It was part of the pitch to management, after all.
On the other hand, I can't very well just trust this person to do a good job because he's very, um, naive about programming. He doesn't seem to enjoy coding the rest of us on the team do (we're more on the "hacker" side of things, as the problem domain demands ignoring DoTheSimplestThingThatCouldPossiblyWork and OptimizeLater). Normally this isn't a problem. Most developers are interested in learning new and crazy things because it's fun. This guy is afraid of things he doesn't know, and he's deeply concerned that he can't do it. And he's right--it's a self-fulfilling prophecy. As JimMcCarthy says, he's SetTheBozoBit on himself.
Finally, the deadline looming in a month is literally a deadline. Failure to deliver means termination. So, patience is really being stretched thin.
JimMcCarthy's suggestion to "include" cynical, negative people with bruised egos and attitude problems is too idealistic, I think. Some people just don't work well in teams. It's not in them. In this case, we've taken the Greek into Troy. He has a strong motivation to regain respect at our expense in a sort of "revenge"-ish direction. On the other hand, neurotic perfectionists such as myself find it difficult to include those who "don't meet the standards". I think the stalemate is unresolvable. So, I'm looking for alternatives. Hence, I'm trying to create a new position for him. -- AnonymousDonor (to protect the guilty)
I've got a guy like this, too, although he has just barely enough redeeming qualities to prevent him from being a total bozo. There are degrees of bozosity, I guess. The problem is that the other developer on my team is sharp; he and I operate on a pretty "high" level, generating, evaluating, and choosing amongst design alternatives carefully but efficiently, keeping each other honest, and just generally doing good work and enjoying it. So the contrast with the bozo is enormous; he really drags us down. I wish I could find him a new job, with a better fit to his quirky mindset, and get him the hell out of our way...
This phrase also gets used a lot in contexts that don't have to do with work, i.e., what you do when there's someone who you don't like on the same Internet-discussion forum as you.
I think, then, it's worth noting that the effectiveness/ineffectiveness of the tactic has a lot to do with the scale of the involvement. I'd try never to SetTheBozoBit on someone at work, because working with people who treat you like that is fairly horrible, and I wouldn't want to be responsible for doing that to somebody else.
But isn't that blame-shifting? You are, after all, not the one going around being a Bozo. That's Bozo's fault. Meanwhile, Bozo is blissfully causing problems for you by misinforming, exaggerating, and/or just screwing things up. I say hand out the bozo bits when and where they're called for.
A similar concept to the BozoBit is the TwitFilter.
The effect also works in reverse: see HaloEffect. -- BenTilly
Absolutely useful information here -- but how do you SetTheBozoBit on your manager? This situation is compounded by the fact that he's totally into political games and manoeuvring, makes snide remarks, and won't write anything down in an attempt to make himself less accountable -- but the real problem, per say, is that he's got proper authority on the project. Ho-hum.....
Don't SetTheBozoBit on your manager. This is an AntiPattern. DontDoThat. See HelpYourManager.
The Journal of Personality and Social Psychology published an article in 1999 that gives this AntiPattern a scientific leg to stand on.
The premise is that the problem with incompetent people is that they are too incompetent to realize that they are incompetent, and therefore tend to have an overinflated sense of their abilities, and an inability to recognize their shortcomings.
The article did find that increasing the skills of said incompetents helped them to become more aware of their limitations. However, I've generally found that people whose bozo bit needs to be flipped are deficient in the basics. If they're a lousy programmer, it's not because they need to learn more about, say, the language they're working with, it's because their way of visualizing problems is fundamentally wacko -- whether it be with regard to software design or how to get home. That's not the kind of skill set you can really work on after about age 12.
Article: "UnskilledAndUnawareOfIt: How Difficulties in Recognizing One's Own Incompetence Lead to Inflated Self-Assessments", http://www.apa.org/journals/psp/psp7761121.html.
Reminds me of the fish joke: Average fish with 1 second short term memory swimming round a bowl - "oh look there's a castle...look there's a castle...". Smart fish with 3 second memory - "look there's a castle...boy am I stupid!...look there's a castle..."
SetTheBozoBit is in my experience synonymous to CopyAndPaste. Any developer willing to copy blocks of code based on other violates OnceAndOnlyOnce.
Perhaps, but that statement doesn't actually address the original topic at hand. Read through the thread again.
For usability issues I suggest to web-designers NOT to set the BozoBit. As most of your users are probably not much brigther than your team bozo, you can learn a lot from him, about stupid assumptions people might make. ;-)
NOTES:
See: DoWhatYouKnow, BecomingCompetent, WaysToDismiss, ScapeGoat, ProjectSabotagePatterns, WikiFilterist