Proclamations of concern over the abusiveness of the Linux Kernel Community of been growing louder in the open-source world. Steven Vaughn-Nichols summarizes the concerns in Computerworld. My comment on the matter?
Ancandune remarks wisely on the problem that “rude and hostile” imposes to the transmission of knowledge. I do not necessarily subscribe to his characterization of the motivating psychology. Perfectionists are driven by their own set of hostile interior voices. They don’t just produce something and throw it over the wall – they lie awake at night thinking about all the ways it can blow up in their face. What Linus may be attempting to demonstrate in his communications is how he goes about thinking when he writes code.
Is Linus a healthy person? That’s for him to judge.
The important question is whether the community is healthy. Steve Jobs and Bill Gates had boardrooms filled with over-sized egos to help them manage their succession plans. What is Linus going to do? Anoint a successor? Or will the community devolve into a WWF RAW! donnybrook with the last man standing holding the belt? Another possibility is that the corporations that finance many contributors will step in and appoint a successor.
Linus’s authority arose organically over many years. The community allows him the right to be critical. But it is not being critical of others that conditions his success – it is his ability to think critically. The community should recognize that distinction, and mercilessly criticize and purge those that emulate his style without bearing his gifts or responsibilities.
To illustrate my point regarding self-criticism, here’s the content of an e-mail characterizing a problem we had with the build at work recently:
It’s the usual stupidity – I don’t even remember why I created this file, but it’s just a copy of MotorIDCommander.cpp. It was probably intended to link AutoCommCommander with MotorIDCommander, but I never modified the contents.
Anyways – it’s excluded from the build in debug mode but not in release mode. Khalid is off at physical therapy today with the project file checked out, so I can’t publish a fix. If you can do it locally, that would get you moving forward.
This is like the fourth or fifth time I’ve done this – left a file in the build for release mode after excluding it in debug mode.