Look for the 90-percent solution

7.8 Look for the 90-percent solution

When overnight delivery services like Federal Express first appeared on the American landscape, people marveled at their efficiency. Imagine a pony express that would get your package to someone across the country not in a month or a week, but overnight. To many it was a dream come true. This service revolutionized the way we do business today.

The rapid ascent of Federal Express and other overnight delivery services raised a serious question: Why couldn't the U.S. Postal Service provide this service? As we all know, the U.S. Postal Service can and does provide overnight delivery today. Still, many people believe that the commercial package delivery services do a better job. Why? It's because the commercial services implement the 90-percent solution.

Doing 90 percent of anything is always easier than doing 100 percent. In Federal Express's case, they do not provide the same level of service out in the hinterlands as they do for an area near a major city. In major U.S. cities, it seems as though Federal Express pickup boxes are on nearly every other street corner. But try to find one in a remote town in the hills of Montana. It simply isn't profitable for Federal Express, so it isn't done. The U.S. Postal Service, being a U.S. government organization, must provide equal service to all U.S. citizens. Therefore, you will find mailboxes on street corners in virtually every small town across the U.S.

By government fiat, the U.S. Postal Service must carry out the 100-percent solution. Meanwhile, operating as an independent carrier, Federal Express can focus on the highly profitable and much easier to optimize 90-percent solution. The result? Federal Express delivers packages the next day (and even sometimes on the same day) at a low cost to businesses and consumers. The U.S. Postal Service, for all its inefficiencies, does about as reasonable a job as one could expect from an organization that must do it all for everyone.

The 90-percent solution is one that results from deliberately ignoring those aspects of the problem that are costly, time-consuming, or difficult to implement. You can readily solve most problems in the world if you are given the opportunity to discard the toughest 10 percent of them.

When fast-track Unix and Linux software developers design an application program, they strive for the solution that will give them the biggest bang for their buck, so to speak. This means eliminating those functions that few people use and that are costly to implement. They ruthlessly cut such functions from the product requirements, often with the attitude of if someone needs this capability badly enough, they can do it themselves.

Obviously, there are some situations, such as heart transplants, where a 90-percent solution won't suffice. These are rare in the computer world, though. Remember that most software is a compromise in that it is never finished, only released. If, by definition, software can never be finished, one can never develop software that offers a 100-percent implementation. By recognizing the 90-percent solution as a reasonable measure of completeness, it becomes easy to write applications that appeal to most of the user population.

That is part of the reason for Unix's success. While it avoids trying to be everything to everyone, it meets the needs of most. The rest can write their own operating systems.



Linux and the Unix Philosophy
Linux and the Unix Philosophy
ISBN: 1555582737
EAN: 2147483647
Year: 2005
Pages: 92
Authors: Mike Gancarz

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net