A Windows Lament
I’ve been writing software for longer than I’d like to remember. I began writing code in machine language because there were no assemblers available for my 2MHz 8080, and even if there were, I still had to key in the program through the front panel. I later acquired Altair DOS and a cassette-based assembler called Package-II. When the first version of Basic appeared, I had to integrate my assembly code with Basic, which meant establishing base page vectors to call my code from the Basic interpreter. I recall several conversations early on with two developers, Bill and Paul, who told me that the problems I was experiencing were my fault, and that it couldn’t possibly be their interpreter. Bill was the most arrogant. He told me that I didn’t know what I was talking about, and at one point hung up on me.
I’ve been writing Windows software since its initial release. Since that time I’ve written hundreds applications, DLLs, systems components, and device drivers. I’ve watched Windows grow from its inception to the current version, Windows 8. It has certainly helped my career, and has provided me with a significant source of income over the years.
I was never religious about the operating system. To me, it was always just an enabler; a means to an end. The public rift between Microsoft and IBM and the nauseating back-and-forth between Windows and OS/2 supporters never made sense to me. Applications should have been the focal point, not the operating system. IBM’s failure to recognize this distinction probably contributed to OS/2’s demise. This fact was not lost with Microsoft, however. In addition to hardening the underlying operating system, they began to focus on the development of applications such as Word, Publisher, PowerPoint, and Project. Today, those applications represent the ‘gold standard’ of office software, and generate a significant amount of revenue for Microsoft. Competing products such as Lotus Symphony and OpenOffice have always fallen woefully short both in quality and functionality.
Over time, Windows has become more secure, though it certainly has a long way to go. Earlier versions that were shipped with the firewall and DEP disabled demonstrated a lack of foresight and due diligence. In spite of its weaknesses Windows ultimately achieved dominance, due in large part to the usefulness of the applications that were available. The development of the Windows Server product line helped extend and augment the capabilities of Windows facilitating its entry into the enterprise. Bill Gate’s directive of “Windows everywhere” was instrumental in creating the entire personal computer industry. One of the reasons for the phenomenal success of the Windows platform was the standardization of the user interface. It allowed users familiar with one application to quickly learn to how use another. As Windows continued to evolve, the bulk of user interface remained basically the same. Anyone that knew how to use a previous version of Windows could easily become comfortable with the newest version. There were always some differences, but the core user interface remained consistent. That is, until Windows 8.
You have to wonder what they were thinking. As a software developer, I understand the motivation to support touch-screen devices, tablets, and desktops with a common code base and to provide a somewhat consistent user interface across diverse devices. However, radically changing the user interface, and in particular removing the familiar Start button, was as crazy as it would have been for Coca-Cola to drop Coke™ or change the font of their logo, or for Disney to drop Mickey Mouse©™.
Fortunately, we’re hearing that Microsoft plans to revamp the Windows 8 desktop and user interface, and perhaps bring back the Start button in one form or another. This is good news. I’m glad to see they’ve gotten the message. But you have to wonder how a company with perhaps some of the brightest technical folks on the planet could make such an obvious blunder. It’s not that they didn’t have any warning. Early reports on user experience were very critical of the Metro interface. Developers expressed their dissatisfaction with the technology, and beta users were not happy with it either. Despite the early warning signals, Microsoft continued to push the new paradigm assuming that users and developers would eventually follow their lead.
The introduction of a radical new technology is never easy. It takes persistence and courage to bring innovation to the marketplace. The challenge is do it with a minimal amount of disruption while continuing to build consensus. I would have wise to have Windows 8 ship with the ability to configure the style of the user interface. It would have permitted those who were more comfortable with the traditional desktop to keep it, and allow users interested in trying the new stuff to choose the new style.
It takes just as much courage to drag along the old technology as it does to abandon it; and perhaps more. I hope this is a lesson learned.