Sunday, February 1, 2009

Why Windows Must Go Open Source

To maintain its developer ecosystem and protect its apps business, Microsoft has no choice but to loosen its grip on the Windows source code and drive down costs.

Suggest that Microsoft's Windows operating system will one day become open source, and knowledgeable observers will give you a baleful look--maybe even laugh in your face. "I had to chuckle," says Forrester Research analyst John Rymer, in response to my query on the subject. "No, I don't think Windows will ever become open source code." OK, so Windows will never become an open source project in the same vein as Linux, with 2,000 developers worldwide submitting code. Microsoft has enough trouble with its own developers submitting code, never mind all those outsiders. And I'll concede that some Windows source code probably will never see the light of day.

But people are wrong when they assume that Microsoft will never move Windows down the open source path. To neutralize the advantages of Linux and other open source competitors, Microsoft will have to make Windows more like them. If it doesn't, it risks losing the 6-million-plus developer base that's made the Windows platform great. Microsoft may not want to open up Windows to the world, but it will. Indeed, it must.

Microsoft cares about two things: Its lucrative software line, and the outside programmers who add value to its core platform with their own innovations. It's done a masterful job of cultivating that crowd, giving them tools, early code releases, and information on upcoming features to keep them engaged. It can't afford to lose them.

Yet Microsoft is in a quandary over its product line. The company's Windows client revenue, including that from Windows Vista, declined 8% in the quarter ended Dec. 31, and Vista has become a marketing albatross, with a reputation as an intrusive, underperforming OS. The answer, however, isn't Windows 7, which is more a Vista service pack than new platform. Microsoft's challenges run deeper than that, and maintaining its Windows revenue stream isn't the win-at-all-cost endgame.

Windows XP reportedly brings in about $34 each time it's loaded on a new PC shipped by a manufacturer, the way most people get a new copy. Microsoft Office, on the other hand, brings in four to 12 times as much, depending on which version of the suite comes bundled with a PC.

Not only do Office and related applications, like Publisher and Office Mobile, generate a torrent of license revenue, they tie into Microsoft's server applications. SharePoint starts at $4,350, when discounted, according to NexTag, the online service that seeks the lowest software prices available.

In other words, Windows may be what established Microsoft, but Windows can't sustain the company. Applications are what give it a competitive edge--and what generate billions of dollars in pure profit.

Microsoft's applications are vulnerable, as well. The proprietary file formats that have protected Microsoft apps have been offset by Office Open XML, the default format for Office 2007 and now an international standard.

So for the first time there are no real technical barriers preventing other vendors from playing in the end-user applications market, and competitors are nipping away. Office alternatives include IBM Lotus Symphony, Sun Microsystems Star Office and the related Open Office open source code project, Google Docs, Yahoo's Zimbra open source apps, and Zoho.

Will enterprises take those offerings seriously? For the first time, the Burton Group is advising clients who ask how to save money in a recession to "envision a split scenario" in which they deploy Office on Windows for power users and Google Apps for others. "Such a split could significantly reduce licensing costs without seriously impacting productivity," says Burton analyst Guy Creese.

Both startups and major manufacturers are beginning to offer Linux PCs with open source application suites. They include Hewlett-Packard's HP Linux dc 5850 and Dell's Mini 9 with Ubuntu Linux. Eventually, somebody is going get the functionality and the price point right.

To stay competitive and encourage the continued growth of its application ecosystem, Microsoft will have to make Windows a near-zero cost equivalent. Not that Microsoft will come to this decision easily. It will be a last-ditch, deprive-the-enemy-of-his-major-weapon adjustment. Microsoft CEO Steve Ballmer, who once railed against open source as being a form of "cancer," would probably swear that he won't ever do it. Perhaps his successor will. (I reached out to Microsoft to talk about open source Windows, but it seems this is a subject it would rather avoid.)

Remember that Sun's Scott McNealy swore on Wall Street he would never allow Solaris to become open source, and we know the end to that story.

Microsoft will be spurred to do so by more and more defections of both its application customers and the third-party developers who surround Windows with much of its added value. In the long run, developer defections pose a greater strategic risk to Microsoft than the loss of revenue posed by a free Windows. Developers prefer open source because it gives them independence, flexibility, and lower cost.

Virtualization is also a driver. Windows used to go out the door on every x86 instruction set computer that shipped, and it still does on most. But Dell, Fujitsu Siemens, HP, IBM, and NEC all ship servers with x86 virtualization, often VMware's ESX, built in. A hypervisor talks directly to the hardware in lieu of the operating system. It lifts the OS up a layer and assigns it the task of communicating with the application. Windows used to talk directly to the hardware; in virtualized environments, it just hands off requests for hardware services to the hypervisor.

This doesn't sound like a big change, but the stranglehold Windows once held on the hardware layer has been loosened. The hypervisor doesn't care what operating system is running above it. It could be Windows, NetWare, Solaris 10, BeOS, or whatever. Now a business user can run applications written for Windows, Linux, Apple Mac OS, or Solaris on the same machine. As virtualization spreads, users are likely to become less Windows-centric.

User Mindshare
in the next round of computing, independent developers will punish closed systems and reward open ones. The only way to remain closed will be to command high-end consumer mindshare, the way Apple does with its iPhone, a consummate consumer device backed up by cool advertising and the distinctive Apple store buying experience. Research In Motion's BlackBerry also does it with a superior text device combined with strong network access.

Microsoft tried to do it with Windows Mobile, Jerry Seinfeld and Bill Gates ads, and its "I'm a PC" marketing campaign, but those efforts have been flops. The Windows brand doesn't command consumer mindshare the way it used to. Windows is being managed by Microsoft senior VP Bill Veghte, who actually worked on Windows 95 development. But it's just not 1995 anymore, and Microsoft's proprietary OS is in many ways a relic. The next wave isn't about bigger and fatter desktop PCs, the place where Microsoft has excelled. Laptops now outsell desktops. Future computing devices are lighter, smaller, sometimes connected, sometimes not. They follow the end user around, like cell phones. The desktop is migrating toward the mobile device.

Microsoft is well aware of this evolution. In a December TV interview with Charlie Rose, chairman Bill Gates said that "mobile phones are the PC of the future." And he called Microsoft "the underdog in that space."

"That market is going through an incredible shift" away from hardware-specific devices toward software-differentiated devices, Gates said. "Software will be at the center of it. We're in the game. The only question is, how much market share will we end up with?"

In one format, the computer of the future will be the shrunken laptop known as a netbook, with flash drive instead of hard drive, Internet connectivity, and long battery life. If Windows doesn't dominate this new form factor, it will slip further off its perch. Already, there are signs of trouble. Dell's low- end $349 netbook runs with consumer-friendly Ubuntu Linux.

Most early netbooks tended to run Linux, but as they gained acceptance in 2008, more and more manufacturers offered them with Windows, and now Windows runs on 70% of netbooks sold. That may seem like a lot, but Microsoft is used to market share of greater than 90% on PCs, and its margins on netbooks are lower.

Microsoft's Veghte, speaking at a Credit Suisse technology conference in December, conceded that netbooks represented an unexpectedly large share of the 10% to 12% growth Microsoft expected in PC sales last year. Microsoft's return on a netbook sale "is significantly lower than what you might take as a midrange or high-end PC," he said, indicating that netbooks, particularly those running Linux, were "cannibalizing" what would have been a regular PC sale.

Jim Zemlin, CEO of the Linux Foundation, points out that even some Windows laptops and netbooks come equipped with Linux for quick startup and Internet connectivity. Netbooks are the first new x86 computing device that Windows hasn't completely dominated from birth. And the version of Windows that runs on netbooks is Windows XP, not Vista, another sign of Windows' vulnerability at the low end.

Likewise, Microsoft is struggling to keep up in the market for cellular devices with mobile Web browsing, despite its keen focus on Windows Mobile. Microsoft's already up against popular devices like the BlackBerry and Apple's iPhone. An open source version of Nokia's Symbian mobile operating system, long dominant overseas, is due to hit the United States next year, and AT&T plans to produce a Symbian-based cell phone.

Google's open source Android, essentially a mobile version of Linux, has already won widespread adherents. Operator T-Mobile and device makers Ericsson, Garmin, Lenovo Mobile, Motorola, and Samsung are flocking around Android. Even if Android doesn't have everything they want in its first iteration, those manufacturers see Google as a company with both online applications and the staying power to get the OS right.

The new mobile device on the block, the iPhone, running Mac OS X, has already passed Windows Mobile with 12.9% of the market, compared with Microsoft's 11.1%, according to Gartner.

Android is just beginning to build steam. Even Palm, in decline with five losing quarters in a row, just collected $100 million from Elevation Partners because its backers have confidence Palm can compete--probably not with the iPhone or BlackBerry, but with Windows Mobile.

It's clear that Microsoft senses that mobile application writers are shifting away from Windows Mobile, and in Redmond's culture, that's a precursor to decisive action. On Dec. 15, Microsoft revealed it's bringing out its own iPhone image browsing application, called Seagarden. The move is a concession that Windows Mobile will never roll back the gains that Apple has made.

Microsoft can still compete for the mass market with Windows Mobile, but how will it do so when the competition is both technically strong and open source? Microsoft will grit its teeth and try to neutralize the advantages of open source code. My candidate for the first Windows system that will become open source code is Windows Mobile.

So what does Forrester analyst Rymer say to that? He says Microsoft has the inherent advantage over open source of owning the user's existing desktop space, and theoretically it can extend Windows developers' skills into its mobile environment. But that alone, so far, hasn't been enough, he concedes. "To compete effectively, Microsoft will have to give developers the flexibility that they have with other mobile systems," he says.

I couldn't have said it better myself. Windows will have to become freely available to developers, one way or another.

Even the full-form-factor PCs are no longer sacrosanct. Low-end PCs were once Windows' exclusive domain. Asus, Dell, HP, and Lenovo have started making Linux PCs for business--loaded with open source applications. They represent a miniscule share of the market, but it's the first time that this crack in Windows' front has appeared. Apple is growing its desktop OS share (now more than 9%, up two points from 2007) with $1,000 to $3,000 Macs. Smartphones, netbooks, and Linux PCs are undercutting Windows PCs at the bottom. "For the first time, Microsoft is being squeezed on the high and low end," says Zemlin of the Linux Foundation.

HP is offering a $729 business PC based on Novell's SUSE Linux and open source applications. The standard HP Vista PC with Office 2007 Pro is $1,399, or $670 more.

Past attempts to offer a Linux PC consisted of selling a plain vanilla box and telling the customer to download Linux, network connectivity, and applications. "There were no professional transition services available," says Kirk Godkin, HP's North America business PC manager. This time, customers can introduce low-cost desktops with help from HP's services organization. Drivers and utilities for a wide variety of devices are available online, as they are with Windows, Godkin says.

Zemlin argues that most consumers are defining their computing experience in terms of the Web, not a desktop machine. "That's a major problem for Microsoft," he says.

Cloud Computing Looms
Linux, open source apps, and virtualization threaten to loosen Windows' grip in another place: the cloud.

Cloud computing's hourly fees seem unreal compared with the daily costs of running an enterprise data center. With services such as Terremark or Amazon EC2 available at the swipe of a credit card, they'll be tapped and tested in a down economy.

"The cloud today is almost entirely run by Linux and other open source," notes Andi Gutmans, CTO of Zend Technologies, supplier of the PHP dynamic language and the Zend Framework. Microsoft's cloud OS, Windows Azure, is still in development.

Clouds scale up by generating more Linux virtual machines. The Linux open source license allows any number of servers to be activated with no increase in cost. Microsoft hasn't been able to rationalize its pay-per-copy business with the cloud.

"Why would I want to buy a license to use something perpetually when I only want to run it for 20 minutes?" asks Billy Marshall, CEO of rPath, provider of a virtual appliance service for packaging Amazon Machine Images.

To compete in the cloud, Microsoft will have to find a way to shed the Windows price-per-copy model--that is, make Windows freely downloadable to developers accompanied by many open APIs--or concede cloud computing operations to Linux. The cleanest way to do so, and the way most persuasive to developers, is to make Windows open source.

Many would say Microsoft is culturally and ideologically incapable of doing such a thing, but empathy for open source projects runs deep in Microsoft's own programming ranks.

Even Microsoft's top lawyer, Brad Smith, has struck a conciliatory tone. "We at Microsoft respect and appreciate the important role that open source software plays in our industry. We respect and appreciate the passion and great contribution that open source developers make in our industry. ... That is not what you have always heard from us," Smith said last March at the Open Source Business Conference in San Francisco.

Indeed, Microsoft has been experimenting with the open source model for years. Its "shared source" concept was a first, weak step. And last year it won approval for two open source licenses, the Microsoft Public License and the Microsoft Reciprocal License, from the Open Source Initiative.

If Microsoft were to move in the direction of making Windows open source, how would the company do it? It could go several routes. The most radical would be to invoke an open source license (most likely not the General Public License), make Windows freely downloadable, and publish information on its interfaces, APIs, and file formats.

Microsoft could then mimic companies like Red Hat by issuing a freebie version of Windows to the teeming masses, while offering a commercial version to businesses with enterprise features and support.

But Microsoft's approach most likely will be more subtle than that, embracing the open source model in part, if not in whole, and perhaps not even calling it open source. But the effect will be the same: Microsoft will gradually open up more of the Windows source code to developers, while driving the price down for users.


Already you can see evidence of that with Windows 7. As it made the beta release available, Microsoft lifted previous restrictions on the number of downloads, following an open source practice of getting the code into the hands of as many users as possible for testing and feedback.

Microsoft will push this process further to keep developers committed to Windows. It will push it until the difference between Windows and open source becomes negligible. At some point, it will take the plunge and declare Windows open source.