Ego is not a dirty word

March 28, 2003 10:37 AM

There's been a lot of discussion recently about the personality of one Marc Fleury, and its impact on the JBoss project, Java, the perception of Open Source, and possibly whether the USA should be sending the Statue of Liberty back to him personally. I don't think anyone's called him a “cheese-eating surrender-monkey” yet, but I'm sure it's only a matter of time.

Let me throw a few names in the air here... Richard Stallman. Hans Reiser. Dan Bernstein. Theo de Raadt. Eric Raymonds and his Aunt Tilly. Or, if we want to move outside the open source arena, let's not forget names like Gates, McNealy, Jobs and Ellison.

There's a secret here. Being an effective project manager, or just a manager in general, requires a significant amount of ego. If you don't have the ability to at some point put your foot down, say “I'm right, this is how it's going to be done”, and brook no further discussion, you're just going to spend your days mediating interminable disputes between programmers, or accepting what you believe is sub-standard code because you've been bullied into it.

This is especially the case in Open Source, where the communal nature of development, and the fact that people are utterly emotionally invested in their contributions makes it hard to get people to shut up. At least in the business world, you can say “The guy who signs your pay-cheque put me in charge, remember?” I'm convinced this is one of the major reasons why the Mozilla project has taken more effort than it should: in theory, module-owners had the power to make these kinds of decisions, but kept having to fight against the constant debating in Bugzilla and the accusations of Netscape/AOL-TW conspiracies whenever someone tried to put their foot down about a feature.

With this ego-driven open source development, the success of the project depends on the ratio of how often you think you're right, compared to how often you actually are right. The closer that is to 1:1, the better the project becomes. The further away it goes, the more likely the project will fail, or someone will fork it or wrestle control away from you.

The thing is, though, there are two kinds of strong ego. The most common is loud, brash and abrasive. These people tend to get bad reputations for arrogance, and leave behind a trail of burnt victims. This doesn't mean they don't listen to reason, most of them do. It's just that they're very forward with their belief that in the end, it's their call, their project, and you either like it, or leave.

Much less common is the quiet, self-effacing ego. Look at Linus Torvalds, or Python's Guido van Rossum. Linus will not put anything into his official Kernel tree that he does not agree with. He will listen to reason, but in the end, the Linux kernel has always been, and remains, “what Linus approves”. He gets away with this because so far, he's been mostly right. He doesn't get a bad reputation because he does it in a dryly self-deprecating manner that makes it hard for detractors to find offense with the underlying absolute conviction that he is the person best-placed in the world to be making the final call, and if you don't like it, you're free to fork the kernel.

But in the end, it's the same thing.

1 TrackBacks

Listed below are links to blogs that reference this entry: Ego is not a dirty word.

TrackBack URL for this entry: http://fishbowl.pastiche.org/mt-tb.cgi/192

Ego from Carl's Weblog on March 28, 2003 3:20 PM

This is one of the primary things that I have trouble with at my day job. I am a lead, and definately one of the "smarter" people on the team. But my hair isn't gray enough to be able to... Read More

1 Comments

...And war is peace, freedom is slavery, ignorance is strength. I totally disagree that it's the same thing. It's a completely different leadership style, and what you wrote about Linus above is not an example of ego. Linus doesn't allow things in because he thinks he's the greatest guy around, he does it because of his own reasoned opinion and because he's the leader, and the alternative is chaos. I don't understand the need for people to excuse or rationalize behavior because a given person is "effective" in one way or another (maybe people need heroes?). We can all appreciate that Marc Fleury is an effective JBoss advocate, and at the same time wonder at what kind of talent he's repelled/would have attracted if not for his attitude and at times lack of civility. Ego may correlate with qualities that make one an effective leader but I'm pretty convinced it's not causal.

Comments are no longer being accepted for this blog entry. If you really want to make your voice heard, you can always email me.

Previously: Code Kata

Next: Testing private methods (don't do it)