Archive for May, 2008

The Decline and Fall of Microsoft? Part 4.

Wednesday, May 28th, 2008

Contrary to what many believe, innovation has been central to the success of Microsoft. The reason why some people fail to see the innovative side of the company is because they are looking in the wrong places. Although there has been some innovation in the visible side of software, the innovation at the API level has been much more significant.

Before leaving HP in 1986, I’d spent my last year there working on something called “New Wave.” This project was trying to figure out a software architecture that would support many useful concepts: embedding of documents inside other documents, providing “links” between documents. allowing “drag & drop” between documents. If these features sound familiar, they should. They were enabled by Microsoft’s “OLE” (Object Linking and Embedding) in the late 80s/early 90s. The concept wasn’t invented by Microsoft (nor HP for that matter) but the software mechanism to make the features available and to work in an efficient process was. OLE later morphed into “COM” – a technology that did much to enable software “building blocks”.

Does anyone remember CORBA? Can anyone name 3 major applications that supported it? Probably not. While Microsoft was developing OLE and COM, the Object Management Group (composed of HP, IBM, Sun, Apple and others) was trying to do the same in an multi-vendor, cooperative, fashion. While Microsoft solved the problem exclusively for Windows on Intel architectures and only when using C++ or Visual BASIC, The OMG was trying to solve the problem in an OS-idependent, architecture-independent, and language-independent fashion.

We used to say at Microsoft, “if one person can do a job in a year, two people can do the job in two years.” Imagine the efficiency of 11 companies trying to design CORBA by committee.

OLE/COM is but one example of Microsoft innovations at the API level. The Windows GDI API unified display and printing code (in a way Postscript/News once sought to do). The DirectX API allowed game developers to efficiently access hardware while exploiting graphics and sound accelerators provided via Windows drivers. ODBC, ODB and ADO (and now LinQ) have provided progressively easier ways of accessing data in relational databases.

As a long-time software developer (pre Altair!), I can say that C# and .NET, coupled with Visual Studio, have made programming incredibly productive and even “fun” again.

Beyond these are things like the Microsoft Office API (including the functionality available to built-in macros), the various specialized APIs (driver layer, speech, NLP, etc.) and now Silverlight 2.0 which promises to finally make writing Web 2.0 applications a less-than wretched experience.

Alas, these API innovations are no longer enough to guarantee Microsoft’s success.

Windows has 90%+ of the desktop computer market and 65% or so of the server market. Microsoft office has 90%+ of the office software suite. 

Improving the Windows or Office APIs does not help Microsoft make any more money. Operating systems and productivity applications pretty much do what people need them to do. Purchase decisions are beginning to be made based on criteria other than technical prowess.

To continue to succeed, Microsoft needs to grow into new markets. Here are a few businesses that Microsoft is trying to develop:

  • Mobile-phone and PDA software (Windows Mobile)
  • Web-based search (advertising)
  • Game consoles (XBox) 
  • Media players (Zune)
  • Enterprise line-of-business applications (ERP, CRM, etc.)

In which of these markets has Microsoft achieved at least 50% market share? None! 30%? None! The XBox is most successful at just under 30% market share (sales, not units). Windows mobile is at about 6% (below the iPhone!). MSN? 10%. Zune? Even my Microsoft friends laugh when I tell them I bought a Zune.

That the XBox is the most successful business is consistent with my focus on APIs; game developers are still very much interested in platform features, tools and functionality.

Microsoft started as a developer tools company (Microsoft BASIC). Some prodding by IBM got it into the OS and, thus, the API business. As it grew its Applications business, it never lost its core focus. I heard Bill Gates once comment on how “all great applications have been programmable” and I think he was stating, not only a truism, but also Microsoft’s subconcious mantra.

As long as tools and APIs were driving product functionality and purchasing decisions, Microsoft would see tremendous success. Now that this is no longer the case, Microsoft will begin to suffer.

The Decline and Fall of Microsoft? Part 3.

Tuesday, May 27th, 2008

For various reasons, I find myself flying much more frequently now than I ever have. Being a frequent flyer, I’m occasionally upgraded to first class where I get to sit with…other frequent flyers. These fellow FF’ers are often fellow businesspeople, too. Although I mostly like to keep quiet and read some airport fiction, I sometimes end up striking a conversation with a neighbor.

On a flight not too long ago, I sat next to a man who had started a business that makes high-tech coatings for glass. These are not the sticky films they sell on late night TV; they’re chemically deposited coatings used by premium glass manufacturers. I wasn’t surprised that the company is starting to focus on “green” coatings that reduce energy use or actually generate electricity while remaining transparent. What surprised me, however, was the reason the executive had decided to focus on green products. It wasn’t because the economic math was starting to make sense. Quite the opposite, the company had decided to develop green products because “it (was) no longer a purely economic argument”. He explained that “cultural elements had taken hold” that convinced them the trend would be long lasting. He was convinced that the world’s interest in reducing energy use and carbon emissions had reached a level of acceptance that it would be, for all intents and purposes, “permanent.” At first, this sounded completely backward to me. I could imagine them ignoring purely cultural trends if the economic terms were not favorable but I could not imagine them doing the opposite — ignoring economic conditions because the cultural trends were lacking.

I’ve discussed this anecdote with several people and the more I think and talk about it, the more I accept the argument. Cultural movements can be much more effective and long-lasting than economic parameters. Although it can be argued that we’ve yet to achieve the goals of the civil rights or the equal rights movements – it can not be argued that each of these hasn’t permanently affected the way that we consider race and gender. Campaigns against littering and smoking have also seen great success once they’ve achieved at setting the “norm.” If you see someone throw out empty food wrappers from his/her car you probably have a strong visceral reaction (“what a pig!”). My smoker friends tell me they definitely feel similar contempt rays emanating from non-smokers.

I believe we are beginning to see cultural trends that bode badly for Microsoft. Microsoft is simply not cool anymore. (Arguably, Microsoft was never “cool” but is now, perhaps, explicitly “uncool”).

There’s some clear evidence of this. Consider how Microsoft and Apple have fared on the Forbes “Most Admired Companies” list during the last few years:

Apple Microsoft
2006 11 10
2007 7 12
2008 1 16

In 2008, both Target and P&G were listed higher on the Forbes “most admired companies” list. Now, I’m not sure I agree 100% with Forbes’ methodology but any methodology that ends up with a low-cost retailer and a toothpaste company ahead of Microsoft tells me that Microsoft is, indeed, losing its mojo.

Another clear evidence point can be seen by visiting your neighborhood Starbucks and counting Mac vs. Windows laptops. While the numbers are higher in Bellevue and Redmond, they’re dismal in San Franciso, Boston and New York. My own family, Windows users for many years, are checking out the “cute” Mac laptops and Mac Minis. My son, perhaps the most loyal to Microsoft (he’s a gamer), has been Beta testing the one-laptop-per-child OS in his high-school and is asking about how one installs Linux.

I won’t go into why Apple is succeeding where Microsoft is not. Anyone who has looked at iPods and Zunes or iPhones and Windows Mobile phones knows the answer to this question.

Beyond Apple’s success is Microsoft’s failure. Windows Vista is not cool. Sure, it has pretty graphics, but we were already seeing those graphics on the Mac and I can also see them on my $400 Ubuntu Eee PC machine that doesn’t require 2Gb of memory to run well. Microsoft Office 2007 is also not cool. Sure it has a couple of neat features here and there but why does it force me to re-learn a UI that I’ve known for years? Why does it default to the new file format? Why is it so incredibly slow on my cool Mac laptop?

MSN is the new AOL. The only people I know who have their home page on MSN are those who haven’t figured out how to change it to Google. Microsoft buying Yahoo search is tantamount to Ford buying Yugo for its engineering prowess.

There are still a few cool things at Microsoft. The XBox 360 is cool. Sure, the PS3 folk scoff, but XBox live rocks and there’s still very few games that take advantage of the PS3. If you want a great multi-player gaming experience there’s no better alternative.

There’s stuff at Microsoft Research that’s incredibly cool. Check out “Group Shot” or  “Photo Synth”.

As a whole, however, the public perception of Microsoft has changed. There was a time when everyone was using Windows XP and Microsoft Office at work and could not imagine anything that worked better. Macs were around but occasionally blew up with “sad Mac error #6” or whatever. Those days are gone. There are kids in college now who’ve remember only Windows computers. For them, Microsoft represents “their father’s operating system.”  Apple is the cool “new” company. Google is the best place to work.

Macs may be more expensive than PCs. There are strong economic arguments for buying Microsoft products. Personally, though, I’d keep my eye on the cultural arguments for not buying them.

The Decline and Fall of Microsoft? Part 2.

Monday, May 26th, 2008

If you have ever had to manage employees, you’ve probably had to deal with performance reviews. A performance review gives you an opportunity to discuss an employee’s effectiveness at reaching previously established goals and gives you an opportunity to establish new goals for the next review period.

It is my experience that reviews, although painful to perform, are extremely successful at accomplishing one thing: getting employees to focus on whatever metrics you are using to measure them. If you rate them on finished widgets per hour, they will give you lots of widgets. If you measure them on the quality of produced widgets, they will give you very fine widgets. People are smart – they will focus on what you consider important.

This principle applies at the institutional level, too. If the CEO establishes a set of goals, his/her lieutenants will work to accomplish those goals. The lieutentants will accomplish this by turning around and establishing goals for their own lieutenants (captains or sergeants or whatever the right rank would be). Ultimately, some shmoe will be tasked with accomplishing some specific micro-goal that contributes to the überscheme.

And thus, bad policy can flow from top to bottom.

In my 11 years at Microsoft, I never had a manager (and I had at least 6 during that time) that valued people Management. Not a single manager who set goals for me that included developing my people. Not a one ever asked me to read The One Minute Manager or The Pursuit of Excellence. I generally had excellent “employee feedback” scores, but received few kudos for them. I’m pretty sure my experience was not unique. My fellow managers certainly did not spend much time discussing their management theories or employee enrichment programs with me. Microsoft valued management to the extent that it helped deliver great product but never from the perspective of delivering great people.

Microsoft (at least, from 1987-98) was a very technology driven and product driven company. Software developers were tasked with completing components on time. Development managers were charged with delivering product. Business Unit Managers were measured on whether they won or not. Did they ship their product? Was it reviewed better than the competitions’? Was it outselling the competition?

The old “Systems” group at Microsoft was particularly known for its hard driving fashion. While the Applications group was known for being methodical and consistent, the Systems group was intense and mercurial. Steve Ballmer always paid special attention to Systems and drove it hard. Developers were expected to write tight, fast, code at breakneck speeds. Test was expected to validate code against dozens of different OEM systems. Program Managers scurried to coordinate Development, Test and User Ed. Screaming was a completely acceptable form of employee motivation. It was okay that Windows 95 was a year late because, heck, it would have been 3 years late had management not pushed so hard.

The arrival of Dave Cutler did little to change this. Windows NT was run in a similar fashion (although with a truly excellent crew; if Cutler yelled at you it was probably because you screwed something up.) If anything, the success of Windows NT and Cutler helped to reinforce the Systems culture. If Windows 95 had given screaming a black eye, Windows NT had helped to heal the welt and make screaming acceptable again.

And thus, decades later, Microsoft finds itself with an executive staff that knows little about good people Management (with a capital M). The Developers and Development Managers and Business Unit Managers are now the Architects and Vice Presidents and Executive Vice Presidents who run the company. Having never experienced good people management it’s difficult for them to spontaneously develop such skills themselves.

I still have many friends at Microsoft and several of them are exactly these Architects, VPs and EVPs. They are fine people with tremendous technical skills. Some of them have learned business skills and understand their markets remarkably well. They understand their competition, they understand the business and they understand the underlying technology. When I step back and consider them as a whole, with few exceptions (TW, KR, SD – you know who you are), I know that none of them were chosen for their positions because they were great at managing people. On the contrary, when I look at senior Microsoft executives (at least, the ones I’ve met), I can say that many of them are well known for having poor people skills.

This then is my first observation regarding the Decline and Fall of Microsoft: it is doomed because it has failed to develop a culture of excellence with regards to management. It has defined quality management only from the perspective of delivering product and not from the perspective of managing people well and delivering talent.

Hiring people from outside the company does not help. Already, Microsoft consumes a large percentage of the available talent pool. There are hundreds of development and managerial jobs that go unfilled because quality people can not be found. The company has had to lower its hiring standards to simply be able to limp along. When outside managers are hired, it doesn’t take them long to figure out how  they’re being measured.

As long as the company cares only about product, that’s all that it will get. What it doesn’t “get” however, is that the best way to develop quality product is to first develop quality people. Take some of the old-time developers (AP, RM, JG, you know who you are) and have them teach mediocre developers to be great developers. Send first-level managers to management classes run by outside firms. Set management goals at all levels that provide incentives for internal employee development and promotion. Measure people on their ability to develop others and watch what happens.

I think this is unlikely to happen. Large companies have a tendency to become “brittle”. The ranks of Microsoft managers consist of people who are already culturally acclimated to the norm and who have little incentive to bring up such initiatives. Microsoft will continue to lose good people to other companies. College graduates, already leery of Microsoft, will increasingly choose to take jobs elsewhere. Microsoft will end up with the kind of folk that it used to scorn when it was a small company.

The rest is simply “math”. Eventually, Windows and Office (and their offspring) will not be enough to pay the bills. There’s only so much you can do when you near 100% market share. Microsoft needs to develop successful new product lines. Does it have the right people to make this happen?