ViewPointz By Charles L. Mauro
homehomedesign data
Printer Version
While Nathan Slept, What Rich, Powerful Technologists Know About Their Customers


Thomas J. Watson Sr., founder of IBM, once said, "I think there is a world market for maybe five computers." No one denies Watson was a very smart man, the very essence of the modern capitalist, but his projected demand for computers was down right foolish. Sometimes rich, powerful technologists reveal staggering levels of stupidity when it comes to understanding the implications of their technology or, more frequently, the needs of their customers. Chairman Watson's statement has now been officially pushed from the pedestal. Thank you, Nathan Myhrvold. It was a long time coming.

Technology Review (TR), the bi-monthly publication of MIT, is a terrific, pro-technology magazine. In columns that patently promote the work of MIT engineering departments, TR often stretches the envelope of what technology can and cannot do now and what technology will and will not do in the future. Occasionally TR strays from its standard fare and commissions a piece on the more "human" aspects of technology. These articles frequently produce amazing insights into how the world's elite technologists think about those untidy little black boxes called "customers."

The Big Party
When the July/August 2002 issue of TR slid from my pile of unread magazines I noticed immediately the ironic cover titled: "Why Software Is So Bad?" What could TR have to say about why software is so bad? This is no small question when considered in the context that a significant percentage of the world's software is poked and prodded by graduates of MIT. I remember well the three absolutely critical requirements for obtaining VC funding during the Internet boom. It was a checklist with three big boxes which required: 1) a Harvard MBA for CEO, 2) a Stanford MBA to head Marketing and 3) an MIT Ph.D. in charge of Technology. It was assumed that world-class business models (really world-class software) were "baked" into such a mix. It's no mystery that even if the boxes were all checked that robust, usable and profitable software-based products and services never came out of the oven. We now know that the Internet boom was really a huge amateur software development party that rarely included a realistic understanding of the cognitive or motivational needs of those little black boxes called customers. What does this have to do with Nathan Myhrvold?

Getting to the point
The article "Why software is so bad and what to do about it," by Charles C. Mann, is an essentially straightforward exposition of what is already known about why software is unreliable and overly complex. If one is prone to sprinkling PowerPoint presentations with quotes on bad software design, the article is a virtual treasure trove. My favorite: "Incredibly, software projects often devote 80 percent of their budgets to repairing flaws they themselves produce." This is not the reason, however, why I found the TR article so amazing.

John Benditt, TR's editor-in-chief, has a feeling for the dramatic, even in arcane subjects. He always seems to save the best for last. And it is the closing statement made by Nathan Myhrvold, the Gulfstream-owning, Princeton educated, Ph.D.-wielding, ex-Microsoft Research-directing, Master of the Universe that stopped the clock. Here is what Dr. Myhrvold has to say about why software is so bad:

"""The classic dilemma in software is that people continually want more and more and more stuff," says Nathan Myhrvold, former Chief Technology Officer of Microsoft. "Unfortunately", he notes, "the constant demand for novelty means that software is always "in the bleeding edge phase," when products are inherently less reliable." In 1983 he says, Microsoft Word had only 27,000 lines of code. "Trouble is, it didn't do very much"-which customers today wouldn't accept. If Microsoft had not kept pumping up Word with new features, the product would no longer exist."

""Users are tremendously non-self-aware," Myhrvold adds. At Microsoft, he says, corporate customers often demand that the company simultaneously add new features and stop adding new features. "Literally, I have heard it in the same breath, a single sentence. "Were not sure why we should up upgrade to this new release-it has all the stuff we don't want-and when are you going to put in these three things?" And you say, "Whaaat?". Myhrvold's sardonic summary: Software sucks because users demand it to.""

Well, there we have it. For the first time, Nathan Myhrvold gives us the real answer on why software is so bad. Thank you John Benditt and TR. This quote is a home run.

Clueless or maybe not?
We have in Dr. Myhrvold a man who probably controlled more programming resources than anyone in history. Yet in the end, he cannot see even the simplest point behind customer needs and software development. His customers were not asking for new features. They were asking for the right features.

It has always been curious to me that software has proceeded along its own trajectory with respect to product development methodology. In a very real sense, software has ignored some of the most fundamental rules of product development science. The first rule: never ask the customer to design your product. Product development experts identified the weakness in Dr. Myhvold's approach decades ago with the introduction of the Ford Edsel and other disasters of early market research. In almost any industry other than software, an executive employing Dr. Myhrvold's methodology would be considered to be asleep at the wheel. It seems as if basic management science was not part of Dr. Myhrvold's development model. Maybe he had a better model, but I can't find it. Over the past 25 years I have been involved in many mission-critical product development projects and conducted usability tests on hundreds of products, including a good amount of software. I have never seen "users tremendously non-self-aware." On the other hand, I have seen many rich and powerful development executives "clueless" about why users cannot operate their products easily and without frustration. This leads me to the first paradox of software development: users are not software designers, nor are software engineers users. Dr. Myhrvold's statements reveal a staggering lack of perspective in terms of what is important in software engineering and "why software is so bad." He and many other technologists see software as an engineering problem. Ask the customer what they want and figure out how to build it. From an engineering point of view, this makes perfect sense. After all, if there are no new features, what is there to engineer?

Quick and dirty is not cheap
Asking the customer to design your product (the technical equivalent to asking them what features they want) is a quick and dirty method for defining the functional profile for software-based products. Clearly Microsoft spends staggering amounts of cash on software development, but where does the money go? The answer is it goes into stuffing fewer and fewer needed features into increasingly bloated software. One can only imagine the real complexity of this process, given the need to maintain dominance of the Windows Operating system.

Dr. Myhrvold's has left us other brilliant insights about software development. In Wayt Gibbs's 1997 article in Scientific American Magazine "Taking Computers to Task," Dr. Myhrvold proffered his famous "Nathan's First Law": that says" Software is a gas. It expands to fill its container." In fact what he's describing is more a misguided (?) policy than a natural law. "After all," he observed later with a laugh, "if we hadn't brought your processor to its knees, why else would you get a new one?" One can only imagine the implications of this "law" for companies like Intel, Dell and others whose upgrade cycle is tightly bound to Microsoft's software functionality. When taken in this context, the real cost of Dr. Myhrvold's feature-driven development model for his users is staggering.

Having the last WORD
Dr. Myhrvold's point that Microsoft Word would cease to exist without the pounding and stuffing of new features into every upgrade reflects the market realities facing Microsoft. It does not reflect the functional needs of the customer. When one looks back at prior versions of MS Word, it is clear that even early versions possessed about 90% of the features that customers need for core task execution. Move to Word XP and those same core functions are present and used to execute the same core tasks in about the same relative percentage. So where is the real progress? It is at the fringes of functionality, not in the real meat of task execution. True enough, later generations of software added some important features but at the heart of core task execution, word-processing remains essentially unchanged. Think this is probably not what Dr. Myhrvold wants to hear? It is unlikely that his stock options would have made him rich beyond reason if Microsoft had not adopted a feature-centered development model. These insights are not lost on rich, powerful technologists. What Dr. Myhrvold's statement really reflects is the issue that keeps Bill Gates up at night (if anything keeps him up at night): what happens when new features no longer sell software? This is the real source of feature propagation in Microsoft Word and many other pieces of software, not only those produced by Microsoft. Software does not suck because users demand it to. It sucks because rich, powerful technologists demand it from their engineering teams.

The future is not what it used to be
In the coming century, software development will not be an engineering problem. It will be a cognitive engineering problem. Innovation based on customer-defined feature propagation eliminates the responsibility of the development team for user-centered product innovation. This means that software must be designed first, and then engineered. Not to put too fine a point on this, but this distinction was lost on Dr. Myhrvold. This is the new work for the future of software, and it is not easy work. What does this mean as we face yet more costly upgrades, aggressive licensing agreements, and finally more complex and generally unreliable software-based products and services?

Train tracks and boxcars
Eventually feature-dominated innovation leads to a crushing end. The United States Military found this out in the 1960s with weapons systems that rapidly became far too complex to operate and maintain. The only way for Microsoft to keep this feature-centered methodology profitable is to eliminate competition from core areas of software functionality. Shall I mention a few? Word-processing, spreadsheets, databases, presentation software, and finally, by maintaining control of the railroad tracks themselves, the operating system. If one controls the tracks, what goes in the boxcars is just more stuff, and, after all, who really cares what goes in the boxcars? We all have to buy (actually lease) the same boxcars, no matter that they are stuffed with junk we do not want or need just so we can get at the core functions we do need. Under this approach, you can ask as many customers as you like what they want in the boxcars. It keeps software engineers creating software that is increasingly complex and unreliable. Thank you, Dr. Myhrvold for your insight. And thank you TR for bringing it to light.


Charles L. Mauro
President MauroNewMedia
Biography

References
Why Software Is So Bad; Technology Review, July/August 2002: Charles C, Mann, Pages 33-38. http://www.technologyreview.com/articles/mann0702.asp

Taking Computers to Task; Scientific American Magazine, July 1997; by Wayt Gibbs, Pages 82-89. https://www.sciamarchive.com/html/ppv_frames.asp

Email the editor with any questions or comments.


    ViewPointz

Columns by:
Charles L. Mauro, Editor

Ken Keller, Esq.
Henry Lichstein
Deborah J. Mayhew, Ph.D.
Elizabeth Rhodes
Jef Raskin
Carol Righi, Ph.D.
Scott Isensee, Ph.D.