Oz had things to say about revision control recently, as well as some comments on 'the tyranny of adequacy'.
I'm really conflicted about the sentiment that that there is a tyranny of adequacy. On one hand, as a tool developer, I want The World to be constructed out of the very best components possible because I know that things tend to be overused and abused out there. I'd rather people not use a thirty-year-old textfile editor to do business-critical tasks; I'd rather people not use a terribly buggy operating system when vastly superior ones exist. On the other hand, as a user, I want to learn the fewest things possible because I'm a busy guy and anyway I hate change. (People do. It's a Human Being thing.)
It's really a conflict of interest. Engineering best practices suggest that the best engineering is overengineering, that things should be as perfect as they can be made. But Optimizing is hard work, and it's hard for lazy people -- and I include myself in that category, for sure -- to keep working on perfecting something when what you have in your will do the job. Something that satisfies. Herb Simon coined the term 'satisfice' in the 50s for that concept, so that he could label and dissect the optimizer/satisficer distinction.
Oz seems to be one of those rare humans that prefers to Optimize rather than to Satisfice in his everyday life. He wants the very best user experience on his computer, so he uses an Apple at home. Never mind the fact that, for almost all things, Wintel boxes provide an adequate user experience. He wants his employer to be a thought leader in the industry, so he works for Sun. He wants his pictures to turn out perfectly, so he practices and practices photography rather than just pointing and shooting. (There are other experiences I have with Oz that lead me to hold this to be true, but if get into them you'll know who I am, and I'm trying to hide that a little here.) My point here is that Optimizers worry about a 'tyranny of adequacy', whereas Satsificers just get on with their lives, not caring enough about the quality of their experience to seek out its betterment. Of course, optimize/satisfice is a bit of a false dichotomy; there's a continuum there, depending on what you consider 'good enough' in terms of quality.
Ah ha! Found it! That's my problem with the phrase 'tyranny of adequacy': it obscures the writer's actual sentiment, which is that the community about which the writer complains has lower quality standards than (|s)he does. It also allows the writer to get away with not telling us why they think the community's standards are too low. So there.
[Editor's note: between writing the previous paragraphs and the ones that follow, I had a relatively deep conversation with Oz on this topic.]
Of course, a diehard Optimizer's comment on this would be 'the fact that you don't acknowledge the tyranny of adequacy doesn't mean it's not there'. Well, ok. People do tend to overestimate the pain of learning a new system, and underestimate the time and effort they'll save with the better tool. But that's a fact, and, unfortunately, blogging wistfully about it doesn't make that fact go away. Jow Sixpack responds better to carrots than to sticks; he's more receptive to 'look what this new shiny tools can do that your thing can't!' than 'that thing you're using? it sucks. and here's why. and here's something that sucks less in these three ways'.
So, to return to the actual subject matter of the linked post: how about it? What can your source-control system do that mine can't?