Self Respect is the Root of Discipline

That made for a pointedly ironic fortune cookie at lunch today.

There is a difference, from what I can tell, in the quality of Open verses proprietary software in terms of the code quality. It is said that Open Source encourages better code quality, because when other people are looking at your code, you care more about what it looks like. Or, put another way, Open Source gives you a greater incentive to take pride in your source code and not just the finished product. It’s a question of respect, not unlike the difference in the quality of housekeeping between a family that regularly entertains guests and a bachelor that lives alone and never invites anyone over. (I assert the right to poke fun at a group of which I am a member.)

I could tell horror stories (most developers probably could), but I won’t. It’s just something that bothers me, that I’ve seen in real life; proprietary software is built on the principle of minimal effort. The necessary level of quality is that which doesn’t generate support requests, and no more. It’s an approach that favors “quick and dirty” solutions over Doing the Right Thing. It’s an approach that doesn’t care one whit for aesthetics (especially if, God forbid, that should get in people’s way)… and in my opinion, it’s often a short-sighted approach.

Free Software projects, on the other hand, frequently enforce very high standards of quality. The Linux kernel is renowned for being very strict about what code gets committed. It’s not in the least uncommon to reject patches with style issues, or missing documentation, or any number of reasons that wouldn’t even be considered in a proprietary project. And yet, I think it’s worth it.

I’ve been accused of being a perfectionist. I’ve also been told “perfect is the enemy of good”. While both are probably true, I still believe in quality. I’m not much in favor of settling for 80% when 95% is attainable. It’s a little difference between “works” and “works well and is both aesthetic and maintainable”.