It may be hard to believe now, but when Windows first launched it was an underdog in the industry. Twenty years later it is the default OS on nearly every PC shipped nationwide. Earlier this month Microsoft Chairman and CEO Bill Gates spoke with PC Magazine Editor-in-Chief Michael Miller to discuss what made Windows such a big success and what innovations to expect in future releases.

MM: What would you say was the most important decision you made that made Windows so successful?

BG: It is not as easy to recognize today that PCs didn't [always] have the power to do a graphical interface, so writing very clever code, and being will to wait a bit while the hardware grew into it was a big part of it.

Also developing these graphical applications was very different. People like PARC and Xerox never thought about getting a broad set of developers to write these modeless-type applications. So having the right toolset and the right evangelism behind Windows was very key.

Basically with Windows, we had the first decade, which was driving it to mainstream acceptance, and then a second decade, where it had become mainstream, so there was a lot of evolution and improvement but not this question of whether it was the right approach.

MM: When you first showed [Windows] to me as Interface Manager 22 years ago, did you believe it would become as ubiquitous as it did?

BG: We weren't kidding that we bet the entire company on it. The strange thing was we were a much smaller company at the time. We were competing to establish this platform with companies larger than ourselves.

One famous episode was that after we'd seen [Lotus] 1-2-3 for the first time there was a question of whether to chase 1-2-3 and try to make a better product in character mode, which internally was code-named Odyssey, or, because it was so good, should we risk of putting our energy into a graphical spreadsheet. That was hotly debated from both sides, and I chose to bet on the graphical interface. This, of course, became Excel.

MM: You came out with a lot more DOS programs at that point. Word shipped for DOS, but it didn't ship for Windows until seven years later.

BG: But we were working on it, believe me.

MM: In those early days, from 1983 to 1990, there weren't that many users of Windows.

BG: That's for sure. It was a tough sell, boy!

MM: Then in 1990, Word came out, Windows 3.0 came out. Was that a vindication of the strategy? At that point do you say "Yes, this really works"?

BG: The funny thing about controversy in the computer industry is there's a period when things are controversial, and then a period when they are obvious. You never get your moment where people say "Oh you were right." It went from "Windows is a joke, who needs it, it's slow" to "Well, of course we're using Windows, are you kidding me, let's move on to the next topic." I'm not sure we achieved ultimate mainstream until the shipment of Windows 95

MM: Let's talk about OS/2. Clearly that was controversial. In 1986 you do your deal with IBM, and you announce it in 1987, along with the PS/2.

BG: This was super controversial, because IBM was a partner originally on OS/2, so their view was they wanted OS2 for everything or as much as possible, whereas we were establishing Windows on our own.

We were very concerned about being in a joint venture with what I called the "high cost producer" – that is the company whose code was the largest and that used the most developers to get something done. It sounds really rude, and all that, but in terms of the team they had on OS/2 at the time, it was an awkward partnership because of the difference in the software development teams.

By then [IBM's] share of hardware market had dropped, and so they were trying to use the software to move their hardware share up. So they had this thing called OS/2 Extended Edition that they were only qualifying on IBM hardware. And they kept making statements about how OS/2 Extended Edition worked best with this thing called Micro Channel Architecture. Of course there was no reality to that, but then of course they could have always put hooks in like they had been allowed to do in mainframe microcode that would have made it only work that way. So NCR came along and licensed Micro Channel, and there were charging higher patent fees for Micro Channel so they could get profits that way.

They didn't want us to have Extended Edition. They were willing to have us work with them on Standard Edition, but then they went to all the ISVs and said we want you to require Extended Edition for your applications, which none of the other OEMs would have. And the other OEMs were coming to us and saying "What about this Extended Edition? What are we supposed to do about that, because it's not qualified to run on our hardware. Are you going to get that from IBM or create a clone? What is your view of this Extended Edition?"

Meanwhile OS/2 is big – it is really big. For the graphics piece, which we had originally proposed to IBM just be the exact piece from Windows, they had this mainframe thing called GDDM [Graphical Data Display Manager] that [the IBM] Hursley lab really liked.

MM: So you're still pushing Windows.

BG: The key issue was whether we would ship the version of Windows that does direct addressing of greater than 1 MB. Internally, we had Windows running directly against large memory. IBM used a lot of pressure on us to tell us not to release that.

But OS/2 was getting so big, and schedules were pushed out and it was getting so mainframe-like that we did go ahead and release Windows.

MM: And that was Windows 3?

BG: Windows 3.0, exactly, which does this memory addressing in this natural way, and it's catching on. Even the demanding ISVs were saying Windows gives them lots of headroom.

Then people are getting confused by what they hear from IBM. There's a period where we don't know if we're in partnership with IBM because they won't talk to us. They won't talk to us, then we have a reconciliation, and then they won't talk to us again. Finally, they broke off relationships with us, and then you had a very clear OS/2 vs. Windows competition, where [former IBM General Manager] Lee Reiswig is crashing Windows in IBM demonstrations.

It's all very ironic, because it's most of the OS/2 code is still our code and we're still selling LAN Manager. Whenever we'd go out and criticize OS/2, that group would say "we just took more friendly fire."

MM: By Windows 95, you'd won that battle.

BG: It was clear to us. I don't know when IBM gave up. I remember flying over to Australia long after that, where [IBM was] still trying to get design wins, but basically yes, after that's, its over.

MM: Obviously now you're working on Vista. But what is your vision for the future? What would you like to see over the next 10 years, the next 20 years?

BG: In the future, things are going to be far more user-centric where a user will have a computer at work, a computer at home, a phone, and other devices. So instead of starting with your state being on that computer, you really want your state – your documents, your contacts, your schedule -- all to be available to you on every device. And if you personalize something and say you like this, it shows up on all those other devices.

So, we need a lot more richness in Windows itself, in particular in areas like speech recognition, ink recognition, visual recognition, and much more structured data on the machine that leads to automatic replication of the parts. It should include going up into the cloud where you can get [your information] even in a device you borrow, so you don't have to worry about it to back up, because it goes out into the cloud.

And PCs will get more specialized. We'll have ones that get down to be as small as a phone, and ones that control big wall-sized displays. Obviously, with Media Center we're now controlling the big screen in the living room and connecting you up at 10 feet away, so we're able to have communications between the 10 foot and 2 foot experience.

We're also doing more to unify the model between dedicated video gaming APIs, like the Xbox API, and the Windows graphics API. We also want to take all the rich services around what has been Xbox Live, and bring those to the PC as well.

The differences between a set-top box, a videogame, and a PC--those boundaries won't be the same as they've been.

MM: Now you're talking about things that are more like gaming machines like Xbox, things that are more browser centric. A lot of people say the browser becomes the operating system or the Internet becomes the operating system. How much of it is desktop centric or notebook centric and how much of it something else?

BG: There are two models that are important. There is the developer model where you, as a developer, understand what your storage services are and what your security services are. And then there's a user model: as you move between your devices, how do find things that you care about? How do you find new applications, get those on the machine, and use them? So the Windows developer model and the Windows user model are as important as ever.

Some of the services will be delivered locally from the disk that is in the portable machine you've got on the airplane, others will come off of a disk on server connected through the Internet.

Storage will not be in one place. We have to make it available everywhere so the user doesn't have to think about backing it up, or versioning it, or replicating it, but it's there for them at high bandwidth; it's there for them offline.

Likewise, [when using] the richer new applications where you have speech and ink, you want [processing] power right next to you because of latency. Fortunately, the power of microprocessor keeps going up and they keep getting cheaper. There was this whole movement called 'network computers' about 10 years ago. There's a reason why none of those [solutions] delivered the kind of empowerment and flexibility that the PC did.

In the meantime we've been hard at work on addressing the criticisms of the PC that gave rise to those discussions about state management, easy policy handling, and easy updating. The difference between having a Windows terminal server connected up or just having a full blown PC [is getting smaller.] They should both be extremely manageable where somebody is just setting policies and the state is replicated, so even if a device breaks you can immediately get at [your information.]

So we need a model that is not as single device-centric as Windows originally was, but brings all of these richer services, both local and remote, into that developer picture and into that user model.