|
Remarks by Bill Gates, Chairman and Chief Software Architect, Microsoft Corporation
Microsoft Research Faculty Summit 2004
Redmond, Washington
August 2, 2004
BILL GATES: Good morning. It's great to have you here at Microsoft, and have a chance to talk about the frontiers of computer science, and the amazing things that will happen in software over the next decade. We're very optimistic about the position that software is in. Certainly, the hardware folks are giving us lots of opportunity, by providing a very powerful platform for us to take some of the things we've talked about for many decades, and make those a reality.
In the processor area, the move to 64-bit will actually be the smoothest address base transition we've had in the history of personal computing. The chips will go out over the next couple of years, run all the 32-bit software, and yet have the 64-bit capability at no increase in price. That's pretty fantastic.
The fact that recompiling the code, mixing 32 and 64-bit code is going to be very straightforward. It means pretty quickly, for high end workstations and servers, we'll be able to take 64-bit for granted. Likewise, in the networking area, what's being delivered at low cost is pretty fantastic. We're spending a lot of time with both cable and phone companies now saying, it's finally time to take a pure-IT approach. It's finally time with gigabit equipment to say that you can have many high-definition feeds for every screen in the house, and make it personal, make it interactive, make it very rich in a way that hasn't been done before.
If you think about that, coupled with the advances in graphics hardware, that will deliver real-time scene generation at a much, much higher level of quality than ever before, we can say that there's an opportunity here for software to redefine TV, for software to redefine video gaming, to take video gaming simply from something that has a few genres, mostly shoot 'em up, racing, and expands it to be a more social activity, as we bring in the ability to talk, and see, and compete, to be a spectator. All those things are software challenges, and yet the platform is going to be in place for us to do that work.
The cost of storage, of course, is a pretty unbelievable thing, allowing now unbelievable sized mailboxes, databases like TerraServer that Rick talked about. These things become practical. Lots of problems that wouldn't have been solvable in the past are now solvable because of the platform that we live on.
The focus here, of course, is very high-volume, very low-cost software, software that's going to change the way that not just a few million people work, and entertain themselves, but literally hundreds of millions, and eventually billions. PCs today, there's about 600 million in active use, and we'll pass over 1 billion in four years or so. So a decade from now we'll be close to a couple billion PCs in active use.
One of the big challenges, of course, is connecting them all together at high speed as you get out into residential and rural areas. And even there, software magic is very important in terms of taking wireless capabilities and having automatically organizing mesh type networks. And that's an area that we're working on, and wanting to collaborate with many of you to make that absolutely a reality.
Our view is that software is where the action is. A lot of tough problems to solve, starting really with security and reliability. The PC experience definitely has been affected by having to buy AV software, and patch things where you have to see the user interface. It's certainly been affected by malware that comes in, and causes your system to perform in some strange way, or spyware or spam.
So in order to achieve this, the vision, we actually have to have software systems that work on behalf of the user, where the user understands exactly what they're allowing to take place. We see a lot of room for breakthroughs here, ways that we can use virtual machine technology, ways that we can use rules to understand what normal behavior is, and detect abnormal behavior.
One of the things that's really been a big deal to us over the last several years is connecting up with the user experience, seeing exactly when the user is having a problem, when does the system crash or hang, when is it not giving them what they want. A great example of that is in our software that recognizes Japanese and Chinese input, so-called IME software, we didn't realize that people were trying to type in acronyms. So even though we had about a 99-percent accuracy rate modeling the input we thought was going in, in fact, it was more like 97 percent because of the different usage that we hadn't expected.
So by having that model, seeing what was going on, then constantly being able to improve the data tables there, we were able to drive the quality of that up by about 90 percent. So that constant feedback loop, what drivers are causing problems. What systems are causing race conditions, really knowing a lot about that has allowed us to direct our activities in a more focused way. Even in, say, the Office software, we understand exactly what commands people use, we understand what cryptic error messages they get, and what they do after that.
So all the way up the application stack, having a sense of how can we improve the experience, and then being able to get those improvements out without the user having to do much, just automatically throw those things out there, that's a very big deal to us.
There are some huge challenges in the security area, being able to prove programs correct, having the right layering, being able to take a situation like software that might flood the network, and make sure that whatever fixes actually get through the network. Making sure that you can diagnose what's going on at very rapid speeds, being able to remediate that, even find out who did that. Those are going to be very important things.
People have made analogies between computer systems, cyber-viruses and biological viruses. And, in fact, cyber-viruses in some ways are more virulent. The fact that, literally within a few minutes you can have total spread, that's not something you see in biology. So actually having the systems to detect that behavior, see what's going on, is even more important in this environment.
Another area that we've moved towards very aggressively is using model-based approaches. When we look at business software, and we think about one bank and another bank, and how much different code they have to write, what huge IT expenditures they have, relative to the rather modest differences in their business activities. And the difficulty when they change to create a new product, to buy a new company, the difficulty they have in terms of IT costs, and executing on that, it's clear that we're not expressing what they're interested in, in terms of business rules, business processes in very high-level fashion. We're allowing lots and lots of code that behaves in complex ways to be the expression of what's going on with that business.
Certainly, we need to change that. There's way too much going on in terms of consulting costs, development costs, that leaves people far short of the information visibility and IT systems they ought to have. And the thing that can really make a difference here is model-based approaches. Modeling all the way down to individual software components and saying, essentially, what the contract is of what they do, modeling all the way up to, what is the system, what are the different servers, how are those being used. What's a model of the application, what's a model of the business process. And being able to relate from the low-level components all the way up to that business activity, and saying things like, what is the status of these inquiries, what is the status of these customers, and having that show through, including whatever problems are taking place.
One of the key elements of this is arriving at standards around so-called Web services. We feel that over the last year we've made a lot of progress defining very high-level Web service protocols, working with IBM in particular, but many other companies, as well, having things like reliable messaging, transactions, advanced security concepts expressed at that protocol level, allows there to be heterogeneity of systems, and a level of flexibility that didn't even exist in the homogenous case before. So we expect very message-oriented approaches, with very rich models on top of those to be the way that we think about applications, and we think about systems interacting with each other in the future.
Another area that's very important for us is moving towards more natural interfaces. This is a very rich area, I'm sure everyone here has had dreams about the fact that these breakthroughs are getting fairly close. For example, in the ink area, we feel very good about the Tablet computer, how that's gone out, really started off people thinking about that as a way of doing input to the machine. We'll have a very significant update of our Tablet software this year, over the next couple of years we need to move to an even more powerful ink-recognition capability, to have dynamic personalization, really adapt to exactly what that user is doing.
Today we have very rich models, but a very limited degree of adaptation once you're using the system. So the idea of how you shape fours, and semicolons, and things like that; the system isn't automatically understanding that the way it should. So it's confusing your letter forms, with sort of the letter forms of the general population. We have a basis for moving forward on that, but we really need to get up to that level.
In the area of machine translation, we've been running some interesting experiments where we take our support databases and have half of them hand translated and half of them machine translated. And what we're seeing when we did that, taking English articles and putting them in Spanish, is that the satisfaction was every bit as high for the machine-translated articles. Now, that's just in one specific domain. Obviously, that's where we have a huge database of hand-translation that's been done, so the learning approach, which we really believe in for most of these natural interface systems, it really draws on the human work in order to create the intelligence to do the machine activity.
Vision we think of as a very important area. We think of that being used in many different ways. Simple things, like having dual cameras, and correcting the gaze, so that if you're doing a video conference-type interface it actually appears to work in a reasonable way. Understanding where the user is, are they there, what's their activity, having that context to know what should happen in terms of communication type things that are going on.
We see the cell phone as almost like the peripheral, that the cameras there are improving so dramatically that things like being able to recognize a bar code, or taking a sign that you might want translated into English, taking the image of that and having that be processed, that should be very possible. So the mobile device will fit in, and be a lot richer than just something you can do voice calls or simple text-type messages with.
When we think about natural interface, that includes speech, it includes vision; these are very tough problems, and they're a great example of problems that we need a variety of approaches. And one thing that university research is fantastic for is that each different university, or groups within a university, can go off and take a new approach. We want to make sure that we're a collaborator, helping out, providing tools, providing what we know, and then seeing which of the approaches are making the advances, and making sure that we, along with other companies like startups, can take that and make sure it has the impact in the marketplace that it should have. So we're very optimistic about the progress coming in, in this area.
Another area for us has been thinking about business productivity. And really with Office we have a very strong franchise, Word, PowerPoint, Excel, in a sense they've changed the language of how we talk about giving a speech, is using a lot of PowerPoint slides, or organizing a business plan is going to Excel and doing that. There's really, though, a change in terms of how we think about that Office Suite. We're moving to think about it much more in terms of team-type activity, instead of just individual activity. We're also thinking about it in terms of unlocking the wealth of information that exists inside the company, and trying to raise expectations for people in terms of how productive they are, productive in finding out what happened in the company in the past, finding out what the customers are thinking, finding out what the key drivers of profitability are, finding out what's going on in terms of sales activities.
People are used to having very bad tools. And so even in things as simple as, say, a personnel review process, they're not used to being able to get lots of inputs and compare lots of things and doing that in an effective way.
And so we want to spread best practices around productivity and implement very simple, built-in capabilities for those things in the Office suite.
So when we think about Office now, we're thinking about document lifecycle and the information rights management we want to do around that, the idea that if you send a piece of mail, if you choose to have control over who that gets forwarded to you, you ought to be able to indicate your judgment on that, and having deep notions of workflow, simple workflows like many doing approvals or more complex workflows that would flow into another organization, or even to have notions of escalations and timeouts so that things are happening in a much more automatic way.
We need to connect the Office world up to the real world. Things like RFID, we're very excited about the work going on there to bring back a wealth of information, let things be done.
We also think it's finally time that when people think about filing documents and storing documents, we should make sure that the digital approach to that makes it easier to get the information, more sure that the information will be preserved, more control over what's done there and it's almost surprising that paper-based filing is still viewed as the best way to do those things. Certainly that's collaboration, getting the platform in terms of how it handles storage, the user interface, in terms of how you navigate that storage, moving that forward is very important.
Many of you have heard about the next generation of Windows work we're doing under the codename "Longhorn" and that's got many aspects to it, including the Web Services being built into the platform, that's called "Indigo." It's got the new presentation approach that's a far more structured, high level presentation environment called "Avalon." And then the storage work, which is literally taking the database and making it a very flexible database, understanding XML, objects, heterogeneity, and moving that in to be the file system. And so we won't have to think about storage, searching and replication as being something that's very different as we move into domains like photos and music and e-mail and all the different user interfaces that have been created around those things.
It means having a database that understands lists and relationships, having essentially a pointer-type capability in there that's a very natural thing for people and presenting that with a very simple user interface. So once you learn those base constructs, your ability to navigate your information of all types and mix those together and share it with other people and understand what's on different machines, what's up in the cloud, we take that to a whole new level.
That's a very large investment for us and it's something that we need to learn a lot as we go and we need to have lots of developers building on top of that, showing us where we can take that idea of storage in a very different way.
I had a chance this year to get out and visit a few universities. I didn't get to visit most of your universities, although I look forward to doing more tours like this in the future. Really the goal for me in doing this was to have a chance really to sit down with faculty and understand what kind of problems they're going after and see how that connects with the opportunities we're seeing. And I was very gratified that the conversations around all the topics I've just mentioned, including some of the tough challenges in security, really jibed with the great work that was going on.
I was pleased to see the renewed optimism about various machine-learning techniques because certainly we're investing in those and we feel like universities have probably the most important role to play in taking that cutting-edge capability and showing how finally we can move that into real use in a very broad spread way.
I also had a chance to have a dialogue with the students and talk to them about why I think computer science is exciting. I think it's a concern to all of us that computer science in many countries, including the United States, is not attracting as many people at the graduate level as it did in the past. Having those numbers decline and particularly the numbers of minorities and women going into the field, having those, which have always been a challenge, also continue to be weak, that's something that we need to focus on and really change to renew the future of the field we're in.
And it's ironic to me to think that we have this challenge, because when I think about different areas of activity, really to me other than some neat stuff in biology, it's hard to think of a domain that's going to change the world one 100th as much as advanced software will in the decades ahead. The very interesting problems that will change work, home, education, these are the things that you work on, things that you get to try out new capabilities. These are the things that developers at Microsoft get to come to work every day and dream about and look at what you're doing, look at what Microsoft Research is doing and think about how to get those new ideas in the products and in very widespread use.
And so these are fun jobs; being involved in breakthroughs and having those opportunities; it's very different than, say, going off, I don't know, to Wall Street or something where it's just numbers, you're not really changing anything, and so the IQ ought to be coming almost entirely in our direction.
So we'll see if we can get that picture across, because I think it's really this is the place where the kind of advances that drive the economy are going to be coming from.
And so Microsoft wants to do its part on that. I'm sure over your days here there will be some dialogue about how do we take those issues and make sure we're doing the right thing.
So we're very optimistic here. The place you're visiting in a sense is the world's largest software factory. We constantly try and make this factory more and more productive and, of course, it's the tools of software that will allow us to do that. We spend a lot of time looking at where do these bugs come from, why do we have to write this much code, why do we need testers to do these various things, and I think we are on the verge of some pretty substantial advances.
Our challenge is a very big one, because the body of code that we're dealing with, say, the Windows code base, is tens of millions of lines of code. The kind of commitment we make to backwards compatibility even for applications that have used the system in ways that were not part of the guaranteed specification, that's a big challenge to us to make sure that we're bringing in new capabilities while we maintain that compatibility. Again, that's a place where tools and modeling should come in and allow us to be far more effective.
I said that the hardware base is giving us the opportunities; I don't see that really slowing down in any way. The only thing that I think holds us back from it right now are the communications costs and even there with the magic of wireless and the software around Mesh networking, even that piece can be, I think, addressed in a pretty direct way.
And so it's very exciting to have you here and I hope a lot comes out of the conference in terms of the work we can do together to really show how magic software is and how it can improve the world.
Thank you. (Applause.)
|
|
Related Links
|