You do pay for what you don’t use

Modern operating systems are huge, and their size comes at a cost. When I worry out loud about the size of operating systems (or applications, or programming languages) I often get the response “What do you care? If you don’t like the new features, just don’t use them.” The objection seems to be that you don’t pay for what you don’t use. But you do. Every feature comes at some cost. Every feature is a potential source of instability. Every feature takes up developer resources and computer resources. Often the extra cost is worth it for the extra benefit, but not always. And costs can be more subtle than benefits.

Suppose a developer has a great idea for a new feature. He’s so excited that he puts in voluntary overtime to develop his feature, so the cost of his extra contribution is zero. Or is it? Not unless his enthusiasm spills over to everyone else involved so that they volunteer overtime as well. The testers, tech writers, and others who now have more work to do because of this feature are unlikely to be as excited as the developer.  What was a labor of love for the developer is just plain labor for everyone else. So the new feature now takes a little time away from everything else that needs to be documented, tested, and otherwise managed, diluting overall quality.

This post was prompted by a discussion with Codewiz in the comments to his post about his woes recovering operating system problems. Along the way he mentioned a remarkably stable FreeBSD server he had and attributed its stability to the fact that he never installed any GUI on the box. Lest anyone think that only the Unix world would create a minimalist operating system, take a look at Windows Server Core. Microsoft also realizes that the features that aren’t there can’t cause problems.

3 thoughts on “You do pay for what you don’t use

  1. I really like the new blog format. Very nice style changes.

    Back to the OS size hypothesis. I think part of the problem is the continual grind regarding upgrades. There’s this feeling that the next new thing has to be bigger, better, faster and stronger than the one before. Bloat supposedly becomes irrelevant because drives become bigger, processors become faster and memory becomes cheaper. So the marketing requirement of smaller, tighter and more elegant solution fall off the table (if such requirements ever existed.)

    Unfortunately, the guys that do the testing don’t get a bigger budget and the definition of a show stopping bug is rounded off at the corners, because it can always be fixed with Windows Update.

  2. I also like the new blog format, particularly the crib sheet for the HTML tags.

    Regarding costs, I recall being aghast at the size of the storage required simply for the “clippy” variants for Microsoft Word. I hated that feature anyway.

    Plus let us all recall that Bill Gates and Microsoft didn’t become mind-bogglingly rich by giving away their “features”, just like Vegas isn’t paid for by the winnings of visitors. The IT industry as a whole pays megabucks (actually, gigabucks) to Microsoft, and this cost is ultimately borne by the consumer. So you still pay for all those features you don’t like in very real dollars. Usually it is not obvious however since when most consumers buy a computer they don’t see the cost of the OS; it is folded into the base price. And more indirect costs are even harder to see.

    A long time ago I paraphrased Ken Kennedy by saying that I didn’t know how powerful the hardware will be in 2020, but it will still take a few minutes to boot Windows. I think I could add that however large the default storage device on a stock computer will be in 2020, a significant portion of it will be dedicated to Windows.

    Not that I am knocking Microsoft per se — I am just pointing out that there are lost of costs to which we have become accustomed. And many of the features they pay for are nice IMO. And best of all I don’t have to see the clippy cruft, whether or not it is still there.

Leave a Reply

Your email address will not be published. Required fields are marked *