Thoughts on Microsoft

I worked for Microsoft for nine years to the day, from December 2006 to December 2015, as a developer and a dev lead in SharePoint, Internet Explorer, and Windows. The best and worst experiences of my career as a programmer happened during my tenure there, and I will always miss the place, even as I celebrate my escape from the asylum.

I’m going to share some thoughts on how Microsoft has shaped the technology landscape, how it fits in today, and some of the problems that are holding it back. These thoughts are mine and mine alone, and they do not reflect the opinions of anyone else.

First, some history. Microsoft showed the world that software matters. It was the first significant company to realize that while processors and hard disks are essential, it’s the software they run that makes the magic happen. Before the PC, most companies charged too much for hardware and gave the software away for free, almost as an afterthought. Microsoft also realized that computers were important to everyone, not just the black-robed priests inside corporate mainframe temples. It certainly wasn’t alone in this – Apple had an amazing early history – but thanks to IBM’s lock on the corporate market, the practical, boring, beige PC became ubiquitous.

Microsoft’s early focus and the bad decisions of companies like IBM, Apple, WordPerfect, and Borland made Windows and Office the indispensable standards, and Microsoft worked relentlessly to make both ever more indispensable. While most mission statements are vague corporate nonsense, including Microsoft’s recent iterations, the original was as clear a guide to the computing world in the eighties and nineties as I can imagine: “A computer on every desk and in every home, running Microsoft software.”

For a long time, that worked. The internet changed everything, causing a famous panic inside the company, but it was a slow change, and Microsoft had time to respond. A few years later, a PC running Microsoft Internet Explorer was the way to access the internet. IE6 was so dominant that Microsoft basically shut down browser development after that. Their behavior in achieving that dominance attracted the attention of the Justice Department, but the case eventually fizzled into a pointless consent decree. So things were good for Microsoft – it had successfully defended its status as the gatekeeper to the world’s information. Companies like Google were doing some interesting things on the server side, where Microsoft had never been as dominant, but nothing ever seriously threatened the iron grip of Windows directly.

Then the iPhone happened.

Apple showed the world that you didn’t need a PC anymore, and they did so essentially overnight. It was immediately obvious to everyone except Steve Ballmer that the old equilibrium had shifted. And because Apple is only interested in the expensive, high-margin segment of any market, the iPhone also created a brand new market for the 60+% of consumers that want a smartphone but are never going to buy an iPhone. Like the PC market, the hardware would be competitive and low-margin, but there was only room for one software ecosystem beside Apple. Microsoft was the most obvious candidate to provide that ecosystem, but its effort was too little too late. Google filled the gap with Android, and it looks increasingly unlikely that anything will change until the next major disruptive technology comes along.

Windows is no longer indispensable. Most people still can’t get real work done without Windows and Office, but it’s no longer inconceivable that an alternative will emerge. And for the average consumer, a smartphone or (non-Windows) tablet is almost as good as a PC for the stuff you do every day. For some, the simplicity may be even better than a PC.

That’s where we are today. Microsoft is still a huge company, and Windows is still essential, especially for businesses, but it’s no longer the only ecosystem that matters.

Over the next few posts, I’ll lay out some of the reasons why Microsoft has responded so slowly to competition and why its responses haven’t been good enough. I don’t have any particular insight into corporate strategy (and I’d be legally prevented from disclosing it even if I did), but I do know what the daily life of an engineer is like in both Office and Windows.

Microsoft is an extremely dysfunctional company. My purpose in exploring that dysfunction in this blog is to help people inside and outside the company understand that dysfunction and how it affects what the company builds and how it acts.