Doug Miller (no relation) is an amazingly affable and unflappable man. This interview came about because I asked Doug face-to-face if he'd do it when we met after a panel discussion he was part of in Washington DC a few weeks ago. He said "sure" without even a second's hesitation, let alone checking with PR people. His answers to the 10 selected questions we sent him are 100% straight-up. You may not like everything he says (devout Free Software people probably won't like any of it), but Doug Miller deserves your respect (and courtesy) for telling it like it is -- at least from Microsoft's point of view -- without a hint of weaseling.
1) Impact of DOJ case
In what ways, if any, has the DOJ anti-trust case affected Microsoft's "competitive strategies", as well as the work Towards "interoperability"?
Microsoft has always been a customer focused company and to satisfy customers, you need to build solutions that are competitive. I can't really say if anything has changed over the years, but I can tell you that today we are in a very competitive market - for all the technologies we are involved in. There is nothing like good competitors to help a company focused on building even more value in their offerings. As a result, we need to be even more diligent about building solutions that customers want. For example, in the server space we need to compete with Linux - a pretty good server operating system that is promoted as being free and has a solid following in the technical community. Our products need to show long term value that goes beyond the initial purchase price so the argument becomes not how much does your operating system cost up front but more importantly, how much will your operating system save you over the years that you use it.
Ultimately we believe some of the enhancements we have added to our Windows 2000 server operating system will save companies many times the cost of the operating system in productivity gains in areas such as of ease of use, management, applications choice and support and robustness. Regarding interoperability, we strongly believe the company that interoperates best, is the company that will win the business.
Interoperability is a key competitive strength. We clearly accept that customers will choose multiple operating systems depending on how they need to solve their business problems. Providing ways to plug into those other operating systems - both at a system level (e.g. files, user directories etc.) and at an application level (e.g. data formats) is essential. Microsoft has received unwarranted criticism by some for its ability to interoperate with other operating systems. I actually believe we have better interoperability today than any other OS out there. We fully support data, directory and system interop with UNIX, Linux, Novell, Mac, IBM mainframes through our base OS protocol support as well as through products like Services for UNIX, Interix, Services for NetWare, MetaDirectory and Host Integration Server.
2) OS X
With the recent release of MacOS X what are your reactions to it and what plans do you have to compete with a truly user-friendly desktop OS combined with the stability of a UNIX backend?
I'm not sure much will change with the release of the new Mac OS X, as a result of the new UNIX-like features. The Mac crowd has always been a special group that has been very dedicated to the Mac platform. We actually see this as a great market for us to sell some of our products into; of course Office for the Mac is a very successful product.
Ultimately application support will be the most important factor for OS X or as it is for any operating system. BeOS is a great operating system technically but hasn't offered the features to obtain the broad ISV support you need to catch on in the mainstream market. You could ask the same question for Linux with the GNOME or KDE desktop or any of the window managers that look like Mac or Windows desktops. In the end, the OS has to do something useful. The Mac platform has been very viable in the past and I'm sure it will continue to thrive in the future.
Reliability or stability has been a major focus for us as well. We are hearing very good reports from customers who are now using Windows 2000 - both on the desktop and the server. Of course, being user-friendly is also important to us. If you haven't seen the beta of Windows XP, check it out - it is VERY cool.
3) Explain this piece of competetive strategy to me
Why does it seem that Microsoft routinely ignores glaringly obvious security concerns in favor of "convenience"-related features? Is this a false impression, and if so, why is that the impression so many security professionals form when confronted with the history of security in Microsoft products?
As an example, I'd single out (though it is by no means the only example) Microsoft Outlook. The inclusion of active code (scripts, ActiveX controls) in what was formerly static data (SMTP email) combined with defaulting to the least secure configuration (opening and running emails without user intervention) left the door wide open for the Melissa virus and its desendants. What happened here?
You raise a good point - which is how to you balance ease of use and functionality with security and exposure to hostile attacks from the outside. We have always made an effort to provide highly functional software that makes the user experience as intuitive as possible. At the same time, we are sensitive to the growing security threats to our customers, and providing enhanced security has been and continues to be one of our top priorities. In the case of Outlook, we've taken several steps to provide improved security for users. For example, after the "I Love You" virus of last spring, we took the initiative to change the balance between security and functionality by releasing the Outlook E-Mail Security Update. The Update prevents executable attachments from being delivered to an Outlook user, and also prevents code from sending mail on the user's behalf without the user's permission. No user who's installed the Update has been harmed by any of the e-mail viruses that have been seen since "I Love You". The Update was made available as a standalone offering last spring, and has been included by default in Office 2000 SP2 and in Office XP.
We continue to enhance our offerings in this area - in fact next week, we will be showing some new technology at the RSA show to further protect users.
4) Lay it out for us
Can you ever see Microsoft applications like Office, Visio, and Project being ported to Linux, and why or why not?
"Never say never." Microsoft is continually looking at market opportunities for its products - on both our own platforms as well as on other platforms. As mentioned above we saw a great opportunity for selling our Office products on the Mac platform and have licensed a lot of our technology for use on other platforms. In order to consider porting our desktop products to Linux I think two things would need to happen.
First, there would need to be significant consumer demand from Linux users that actually use Linux as a desktop operating system and were all using the same desktop environment. Today we do not see a large installed base of Linux desktop users that use a single standard for desktop computing with Linux. Would we port to KDE or GNOME or would we try and make the products look exactly as they look today on the Windows platform? It is not obvious which way would be the right way and it would be a huge task to do this at all.
The second thing that would need to happen is Linux users would need to be willing to buy our products if we ported them. Today, there is an almost violent dislike for anything Microsoft in the Linux community - just look at some of the postings on slashdot! My sense is that a lot of people would not buy our products if they were available. But in some ways I think this really goes beyond Microsoft. We have spoken to a lot of Linux users and one of the things that they like is that they can get free Open Source applications on top of their free Open Source OS. I have yet to see any company using the traditional commercial software model become hugely successful selling their products into the Linux market. Take Corel for example. Their Linux product and the suite of applications they sold along side their Linux OS were really quite impressive. Despite this, they did not seem to end up selling very much.
I personally feel that there is little opportunity to make money selling software in the Linux marketplace - buying software goes against they whole Linux / Open Source culture.
That said, there are solutions out there that allow Linux users to run Windows applications today.
5) The "services" model
When I see Gates saying "all Microsoft software will be rented in ten years", I see IT managers scheduling exit strategies from Microsoft products. Clearly, a services model benefits Microsoft, but do you really think corporate America will go for it?
I personally think that we will see a mixed model for the foreseeable future. Some companies will sell, some will rent, some will provide hosted applications for a fee and some will do combination. We have been using our Enterprise Agreement system for providing our software to large corporations for some time and it seems to work well for both the customer and Microsoft. The customer pays a single fee for the use of Microsoft products for a period of time and they can then deploy the software as needed without having to purchase individual copies. They also get upgrades to the software automatically during the contract period. Microsoft has a predictable revenue stream for the period and can afford to support the customer and fund research and development to enhance the products going forward. In a sense, much of corporate America and corporations around the world are already using this system today.
The interesting challenge will be to see if we can provide a similar program for smaller companies and home users that offers the same customer benefits of license simplicity and paying for the services that you use. In some ways it is much like the system most phone or cable companies use today. Pay a monthly fee to subscribe to a set number of features. There is no reason why you can't do this with software and associated services.
6) Loosing the Golden Ring from Microsoft's fist?
When Compaq (later followed by others) loosened the Golden Ring from IBM's grasp by reverse engineering their proprietary bios, the Open Hardware PC platform revolution was ignited. Motherboards, memory, adapter cards, etc... could be made by anybody; hardware innovation increased at a rapid pace, and prices plummeted.
That left only two proprietary pieces atop the Open Hardware PC: the Intel CPU and the Microsoft OS.
Intel's been losing ground, especially with clone maker AMD (but, AMD still has to pay Intel royalties for every clone processor).
The OS, though, has proven tough to emulate. Not only does it reach the pinnacle of complexity (where chaos kicks in), but any emulator must chase Microsoft's tail: the emulation will be worthless come Microsoft's next OS patch (i.e. the DRDOS settlement).
Ballmer has recently stated that he thinks Linux is Microsoft's biggest potential competitor.
Could Open Source be a revolution similar to the PC Open Hardware revolution of the early 80's, bringing true competition and innovation to PC software, or is Ballmer's statement just a ruse?
We definitely take Linux very seriously.
First of all, Linux is a pretty good collection of technology and is able to do many things as well as UNIX, Windows or other operating systems. It is hard to call it an operating system when in fact "Linux" typically refers to a distribution that includes contributions from hundreds of projects. This is one of the most interesting aspects of Linux but also one of the biggest challenges for Linux users. Lots of technology but little in the way of integration for things like management, internationalization, documentation, installation, data sharing etc. But looking at Linux technically, there is no real revolution here. Linux looks and feels like UNIX and isn't any better than a commercial version of UNIX.
Secondly, the area that gets the most attention in the press is the fact that Linux is "free" and you can get the source. Again, I don't see a major revolution here. The BSD operating system has been free for more than 20 years and you have always been able to get the source as well. Other companies make their source freely available and give away their binaries as well (e.g. Sun). Even free has its costs in the end in the form of user training, support, applications etc. so the fact that the OS is "free" really has little bearing on the fully loaded costs of deploying and using a computing platform.
In the end, it all comes down to solving customers' problems and there is nothing revolutionary about that. Linux will only be hugely successful if it can solve customer problems better than UNIX, Windows and other OS platforms. I know there is a lot going on to enhance Linux but be assured Microsoft is not sitting still - we continue to proactively innovate and continue to be totally customer driven.
7) Copy protection at the hardware level
What are the current, and future opinions at Microsoft about Copy Protection at the hardware level?
If a spec is developed that has TRUE hardware-industry support, would Microsoft utilize it in its software, would it ignore such abilities, or would it give consumers the right to check a box to turn it on or off?
(And if you choose the check option, what would the default be) :
There are others at Microsoft who are better equipped to answer this question than me. I know we are continually looking at ways to protect our software but balance it with an acceptable user experience. Software piracy for all commercial software companies around the world is a huge problem. For companies that choose to charge money for their software, there should be ways to ensure they are paid appropriately. I know a lot of Open Source supporters seem to think that all software should be free and unprotected. I think it should be up to the software company or developer. If you want create a product and give it away, it's a free world - that's your choice. But you should also respect that if a developer wants to charge money for their software, they should be allowed to do that and have some legal or technical assistance to protect their property.
Doug, I was reading a review of Windows XP today, and came across some interesting information on the new licensing scheme. From what I read, the XP will use the current hardware configuration to generate an id string (I believe they called it a fingerprint), which you then tell Microsoft, over the phone, to get the license key for your machine. In an end-user environment (especially laptops), configurations change constantly, and thus the user would be calling in regularly to get a new key.
At the same time, several OS developers (e.g., Apple, various Linux distributions) are moving in a very different direction by open-sourcing their operating systems.
How do you feel this difference in policy will affect Microsoft in terms of new computer purchases (e.g., choosing a different OS - even a previous version of Windows) and upgrades to existing systems?
Microsoft is a commercial operating system company that makes most of its revenue from selling its software. We charge money for our software. That is how we pay our developers, our support people and others to provide for the ongoing existence of our company. Other operating system companies like Sun, Apple and IBM make most of their money selling hardware or services. These folks can afford to "give away" their software since they use it as a hook for selling more hardware or services. In the end, the customer pays something towards the cost of producing the operating system - either separately or embedded in the cost of the hardware.
The model around Linux is truly bizarre. How much do RedHat or Caldera really make from selling their distributions? It seems not very much. So in order for them to survive they rely on selling proprietary software, support, services, books, tee shirts, penguins etc. Not a very revolutionary business, but in the end they must sell something if they want to survive.
For Microsoft, we simply want to have a fair system to be compensated for the use of our software - much the same way other companies are compensated for the use of their products or services. It is sad that we have seen so much talk in the industry about devaluing the worth of software. Software is core to the computer experience. People create software and it is essential that we pay people for their valuable and creative work.
Microsoft representatives are often talking about innovation and it is well known in the developer communities that Microsoft often seeks to "embrace and extend" certain technologies. Examples include Kerberos and Java (although I'm sure there are others.)
Many readers/posters on Slashdot like to joke about this philosophy calling it instead "embrace and extinguish" because it seems that Microsoft, in their "extending" a particular technology, also make it incompatible with the originating technology. This "extending", coupled with Microsofts huge (some would say monopolistic) presence in the marketplace, places the original technology in jeopardy.
In another interoperability area, the SAMBA software suite has encountered more than a bit of difficulty in making it easier for Unix and Unix-like OS's to interoperate with Windows.
Since your focus at Microsoft seems to be the interoperability of your products with others, could you explain Microsoft's reluctance to "play fair" and adhere to existing standards?
First of all, I think it is worth pointing out that standards, on their own, are not substantial enough to fully solve customer requirements. If you look at the UNIX world, the POSIX standards were only a subset of what you needed in an OS. The attempt by the Open Group to define the UNIX 95 and UNIX 98 standards still fell short of what it would take to build a fully functional UNIX operating system. As a result, the UNIX OS vendors took the standards and extended them to add the appropriate functionality they felt they needed to meet their customers' needs. Some of these enhancements were based on other standards but often these features were proprietary code that they did not share with the rest of the world. Why? Because they wanted to have features that they felt were compelling to customers and gave them an edge over their competitors. Extending standards beyond a given specification is a way of life for all software vendors. Show me one product that is built exclusively on a standard specification that does not include code beyond the standard. It doesn't exist.
Microsoft is very standards driven. We are an active participant in many of the standards bodies and have been leading the charge in promoting the use of XML, SOAP and other standards for our .NET initiative. We have not only "embraced" many of the computing platform dejure standards but we have also built products to embrace defacto standards from other operating system platforms. For example, we fully support NFS and NIS in our Services for UNIX product to allow full file sharing and user directory interoperability between our platform and UNIX or Linux platforms.
We should be very clear in defining the difference between standards and proprietary intellectual property as the above question seems to arbitrarily mix the two. When it comes to implementing standards-based software, we respect the standard and expect that our software will fully interoperate with other products that have also implemented the standard. We also develop software that is not based on an established standard - either no standard exists or the standard that exists does not meet our customer requirements. Should we be required to publish the source code or underlying designs of all our software so that anyone can copy it? I would hope not - much the same that companies in other industries have the right to build products and retain the intellectual property rights associated with those products.
10) Microsoft and KDE vs GNOME
by Karma Sucks
Has Microsoft evaluated the latest Linux desktop technologies such as KDE2.1.1/Qt2.3.0 and Ximian GNOME 1.2? Well, we know you probably did because you mentioned KDE/KFM extensively in your anti-trust trial.
The advances that these projects have been making is incredible. And at the same time differences between these projects is amazing. So what is Microsoft's evaluation of the situation. What does Microsoft think of KDE vs GNOME, in terms of the consequences for Microsoft and Linux?
We have looked at both KDE and GNOME. There is some interesting work going on there. I personally feel it is too bad that the Linux community can't agree to build on one graphical environment. I had this debate with Bob Young once where he stated it was great that so many desktop options exist for the Linux user. I don't see it. Lots of choices of desktops in the academic community might be good for stimulating many different approaches but having too many choices in a commercial platform environment in the end, confuses developers and users. If the Linux community could take the best thinking from both the KDE and GNOME projects and join forces, they would have the best chance for success. ISVs would have one platform to write applications to and users would have one user experience to learn. However, that is only half the battle. Having a great graphical environment is a good start but commercial application developers need to be convinced that the platform can pay them dividends in future profits. As mentioned in a previous question, if the Linux community wants to attract great applications, then they need to be willing to compensate developers and that means paying for software.