No Microsoft End-game strategy for Linux
It's very hard for me to see the end-game strategy for Microsoft if it genuinely wants to 'defeat' Linux. With traditional commercial PC software vendors (Microsoft's usual competitor), such as Lotus or Borland or WordPerfect, there is a clear painting-by-numbers strategy that Microsoft uses:
- Study any potential competitor carefully
- Identify whether the competitor's market is, or may become, a strategic market
- If so, or even if unsure, announce your product, and hype how good it will be when released.
- Build your product
- When it's nearing completion, give beta copies and product previews to the press and professionals in that industry.
- Product release – make your product easy to install, and easy to use
- Sell your product for less than your competitor.
- Keep on developing the product, adding new features, giving customers things they keep asking for. Do this enough times, and you create a big barrier to entry for any new competitors.
- If at all possible, leverage your existing assets. Sell it in a bundle with your other products, make it work really well with your other existing products, do cross-promotions, special offers, and in special cases include it on the CD with as many of your other products as possible.
- Create the impression in the customer's mind that the competitor's product has no future or upgrade path – then they're less likely to want to buy it
- As a corollary of the above, always try to offer your customer an upgrade path, and always try to be backwards compatible. So even Microsoft products that died went somewhere – e.g. Dos to windows, FoxPro to Access / SQL, LAN manager to Windows NT; and Word can still open word processor formats that have long since passed.
- And after doing the above hard enough and long enough, you can usually deprive a company of its revenue stream and critical mass, and then it either withers and dies or moves into another market.
- If after doing the above, you still haven't won, then and only then try to purchase your competitor.
This is a good strategy, and I really only take exception to it for a few reasons in Microsoft's case, namely:
- As a result of their large revenue stream and deep pockets, Microsoft can produce loss-leading products until they have eliminated most or all of their competitors and can then raise prices (same strategy as previously used by Japanese firms in certain strategic markets).
- As a result of their dominant position, when Microsoft announces their product, customers are inclined to write off their competitors before Microsoft has even shipped a single shrink-wrapped box (use of FUD)
- Microsoft leverages its own products - this is fine for small companies, but when you hold such a dominant position then this can very easily become anti-competitive (witness the DOJ Vs. Microsoft)
Now, the above strategy isn't going to work well with Linux for a number of reasons:
- The motivation for Linux developers is a heady of mix of ideology, kudos, and exploration/discovery – not money
- Microsoft won't release any products for Linux because they're afraid they might 'legitimise' it, so the standard Microsoft slow but steady progression of domination (embrace and extend) over an operating system by building on existing products won't even begin on Linux.
- For once, Microsoft are competing against a cheaper product – free is pretty damn hard to beat. Furthermore, as PC's get cheaper and cheaper, the proportional price of the software needed to run them is only going to become a bigger and bigger issue – an issue which might hurt Microsoft, but not Linux.
- Hype, marketing or spin doctoring won't work with developers and users of Linux – this is a base of technically savvy people, and Linux has a far better public image than Microsoft could ever dream of.
- There quite clearly is an upgrade path for Linux – the pace of development from scratch in 1991 to what exists now has been phenomenal, and shows no signs of abating.
- There is no real central point of failure in the Linux development model – there is no one person without whom development would stop (even Linus), and there is frequently duplication of development effort, so where one team fails another might succeed.
- Linux is being ported to more platforms than you can poke a stick at – whilst Microsoft's bread-and-butter win32 business is at the time of writing entirely founded on Intel's x86 processors. No matter what computer hardware succeeds in the future, it has an excellent chance of Linux, and running Linux a long time before it might run a Microsoft operating system.
- As a corollary of the above, I think Microsoft is going to have hard time when the time comes to port their software to the new 64-bit chips that Intel expects us all to switch to in 2001. I sometimes go to Microsoft-run events, and one of the favourite things Microsoft spokespeople love to harp on about to a technical audience is how many tens of millions of lines of code are in Microsoft's flagship Windows 2000 product, and how it was the biggest project the company has ever undertaken. The bizarre thing about this is that the Microsoft spokespeople say this like it's a good thing – but to anyone who knows anything about writing software and the gotchas involved in porting it to another platform, porting this monstrosity of code has "disaster" written in flashing neon all over it.
- Conversely, companies who create new processors have a very strong self-interest in getting their new products to run Linux as quickly as possible – doing this provides an instant cross-platform library of quality software. Witness Intel's increasingly friendly stance towards Linux.
- Under the GPL, BSD, or similar licenses (the main body of licenses used by most Linux software), once source code has been released to the public, you can't take it back – it can subsequently be modified, improved, and extended quite legally without any further involvement from the original author, and because the improvements are made freely available, everyone benefits. So even if Microsoft hypothetically bought off the original authors of a software package, it wouldn't do much good.
- Unlike Microsoft, no one could ever accuse Linux of being anti-competitive.
- Linux isn't a corporate creation - it will survive as long as people want to maintain and improve it, and there are hundreds of thousands who help do so.
So to summarise, Microsoft can't fight the people, and it's fighting a losing battle against the process.
So the converse question has to be asked – can Linux defeat Microsoft? At this point in time, I'd have to say no. The reasons for this are equally fundamental:
- Microsoft understands the customer and their desire for ease-of-use
- Microsoft has the entrenched position on the corporate desktop.
- Microsoft has incredible financial resources
- Microsoft is very aggressive and very adaptive to change
- Microsoft is very good at leveraging and capitalizing on its assets
- Linux is, in Linus Torvalds' own words "not yet ready for the desktop."
So, this begs the question of what do I see as the most probable outcome of this competition?
No clear victory. I can foresee an ongoing evolutionary competition between these two camps, with both having to make progress in their weakest areas. Microsoft will have to learn to make its software cheaper, to be more standards-based, to build software that is more robust and stable, and perhaps eat a bit of humble pie. Linux will have to become fundamentally much easier to use, with a suite of office-equivalent desktop applications, and push to be bundled on new PCs – and the Linux community's mindset will have to get off its high moral horse and learn to happily accept the Mom-and-Pop "I just want it to work" type of user.
Fortunately, this is also a best-case outcome. It will force both Microsoft and Linux to focus on those areas where they are weakest. As a user of software, I see this as a very good thing. It's sure going to be an interesting coming few years in the computer industry!