Microsoft's chairman speaks with InformationWeek about Visual Studio.Net development tools, which were launched last week.
Microsoft launched its Visual Studio.Net development tools last week. Bill Gates, chairman and chief software architect, spoke with InformationWeek senior writer Aaron Ricadela about the software.
InformationWeek: I've heard .Net described by Microsoft as a new platform or a new software layer that developers are going to write to in order to gain access to computing resources and to services. There's also the Windows layer. Over time, if you had to look out over the next year to two years, what resources and computing services will more likely move into that .Net layer, and what more appropriately stays as part of Windows?
Gates: Well, there's really no difference between Windows and .Net. We picked the .Net name to explain the bet that we were making around XML and Web services and around some user features where applications would work across many different devices instead of just on a single device. And so putting those new capabilities into all the Microsoft products was something we bet our company on.
In the last few years the excitement around XML and Web services has been very gratifying to us because that's the direction we chose for all our R&D. And we spend over $5 billion a year on building software around one common architecture. That's my job as chief software architect. We call that architecture .Net. That's the architecture for this decade. And it's profound in terms of what it's meant for our tool that we spent the last three years building. So now it's called Visual Studio.Net. It's profound for the Windows platform--that's where the .Net framework and the Common Language Runtime run in the Windows environment. And so you're seeing this .Net strategy touch all the Microsoft products. But the key run time for the client, the server, and the service is the .Net layer we're putting into Windows itself.
InformationWeek: Your "trustworthy computing" memo last month appeared to be a stake in the ground for Microsoft. You made the point in the memo that as software becomes more interconnected and more interdependent, that it's increasingly important for your reputation as a company that that software is secure, always available, reliable, ready to update. That seems like it might be a little counter to the way software development works, where people seem to advance or get rewarded for adding new features or for hitting ship dates. What are you prepared to change about Microsoft's development process or about your culture to make sure the products are more trustworthy?
Gates: Well, people aren't rewarded for making ship dates. People are rewarded for shipping products that customers like. And people's reward is owning part of the company. There's no other reward system. And so as we're sitting down talking with customers, we're always hearing about where they want more simplicity, where they want support for their privacy initiatives, where they want support for new security things like using smart cards.
And if you just look at the basic infrastructure that's out there, there's a lot of advances that have to take place. Take E-mail protocols. Today when you get SMTP E-mail, you have no idea if it really comes from the person who it appears to come from. So somebody can pretend to be your IT department sending mail about "don't install this" or "do install that," and create a lot of havoc. And so for these systems to achieve their potential, things like E-mail, authentication, the way that software gets updated, the way that you recover from any issue with a problem--all of those are going to have to be advanced. And there's this broad label called trustworthy computing which is about our investments in that area.
InformationWeek: Yet you seem to make the point that there would be many times where the these trustworthy, these available, these secure and reliable products would take precedence over new features. Does that require a change in the culture in some of the processes?
Gates: People build the software products that we think are going to be successful, and we're very proud of the fact that we've had very reliable code, we've had less security incidents than others, by any way you measure it. Then again, we have to raise our standards quite dramatically, and developers enjoy working on these problems. That's one thing to understand--these are very interesting problems. Making sure something is going to have total availability so it has this transactive fault-tolerant approach, making sure that there's no ways that code is running outside the sandbox--those are fascinating problems that take the incredible talent of the development teams we've built up and engage them in a very strong way.
InformationWeek: At your financial analyst meeting last July, one of the first things Microsoft president Rick Belluzzo said was the company needs to redistribute its investment in order to stay competitive. Even at a high level, what are some of the criteria that you and top management set for where you'll invest and add people and where you're cutting back?
Gates: Well, there aren't too many areas we're cutting back in. Our R&D budgets continue to go up. And we're a pure software company and we spend more than three times as much on software R&D as any other company. Obviously the Windows platform is the biggest area; the Office platform is the second biggest area. Both of those are increasing development. Now, a lot of it's around .Net; .Net has a profound impact on all Microsoft software. We take XML and embrace it into all the different products that we do.
.Net, that was a big increased investment; the PDA area was big increased investment; some consumer things that became oriented towards other businesses than just great software--things like Expedia--we chose to spin off. We were able to sell it for over a billion dollars, and we learned a lot when Expedia was part of Microsoft about building a very, very rich Web site. A lot of that's reflected in the development tools we built. But as their business became more about pre-booking things and really travel-related competition, it didn't fit in. And so that's an area where we chose to just completely move it out to be part of another business.
InformationWeek: Speaking of research and development, I think at your early September research day, and maybe a couple of other times, you've mentioned this initiative called Always Works. At one point you said Microsoft's highest R&D priority is this Always Works initiative. I understood it as some kind of change or enhancement to the PC user experience that makes new version distribution and software updates more central to that user experience. Could you give us more of a detailed overview of what Always Works is?
Gates: Well, Always Works is really just a part of trustworthy computing. A lot of these things you've seen us make investments in for a number of years. Now you can see with Windows XP, that it tells you when there are updates. You get that little bubble to the right, you click, and you get those updates. You can see with XP that we've got a perfect feedback mechanism--that if the system ever hangs or crashes, it offers to send a report back to Microsoft. So on a real-time basis we're seeing exactly: Are there third-party drivers that aren't fitting? Are there applications that aren't working? We have such an open ecosystem that leads to so much innovation. But how do you get a truly statistical view of when there are any problems and how those pieces work? And the answer is, that's built into Windows XP now, so we can say, "OK, this video driver, the developers need to do more work." And then you complete that by having the update send the information out.
The issue about research is really--that's a separate topic. Microsoft, in terms of software research, is pretty phenomenal and pretty exceptional in terms of what we do. If you want to look at great new things coming out of Microsoft, you can go up to the Microsoft Research Web site and see what they're doing. You can go to conferences; go to the Sigraph conferences and see what percentage of our papers there are, or go to the languages conferences, or go to the operating system conferences. We built up an incredible team and that's the future of Microsoft--the work going on there in research.
... An interesting side story is that so many of the great Xerox Palo Alto Research Center guys now work for Microsoft. They're both doing great work themselves, but also helping to develop the next generation of young researchers that we've been able to bring in. Butler Lampson and Chuck Thacker and Gary Starkweather ... anyway, that's a really fun part of my job.
InformationWeek: I have one more research question while we're on that topic, and it has to do with this area of grid computing. Last August you contributed a million dollars to the Globus Project. Two years ago you made a contribution to a grid project at University of Tennessee. I'm curious, what do you think Microsoft can learn about some of the research that's under way in the area of grid computing?
Gates: It's kind of a holy grail of computer science to get the sum of all the power of all the computers working together. The challenge, of course, is that as you move data across the boundaries between computers, that tends to become the limiting step. And so some programs lend themselves to being broken down into pieces and then the results come back over the network, and some don't. Things like searching for signs of extraterrestrial intelligence; of course, that's probably the most famous distributed grid program that people run, the SETI stuff. Some problems like direct research lend themselves to that. How broad a set of problems lend themselves to be broken down that way is an issue that some of our smarter researchers are working on, and there's a lot of this going on in the university environment as well.
But every time you can bring a problem into this realm it's great, because then you can tap literally tens of thousands of computers instead of just one.
InformationWeek: I thought I had read someplace that part of this investment in the Globus project at Argonne National Lab was to deal with trying to transfer some of that expertise to Windows.Net. That sounded wrong because it sounded like it's way too short of a horizon.
Gates: Well, when it comes to taking multiple servers and having them work together, this fault-tolerant approach we're taking where literally you can have hundreds of servers that in combination execute a problem--what we call scale out--is key to the .Net strategy. And that's well-understood technology that companies like Tandem and Stratus did. Now, we're bringing it to the mainstream of computing built into the Windows server. But there you're running in a data center, and you have high-speed connections between the various machines. Grid computing talks about going even beyond that, to cases where the machines are all over the globe. So .Net includes the scale-out stuff, which is a step in that direction, and will certainly include whatever advances come along for being even more distributed in program execution.
The Business of Going DigitalDigital business isn't about changing code; it's about changing what legacy sales, distribution, customer service, and product groups do in the new digital age. It's about bringing big data analytics, mobile, social, marketing automation, cloud computing, and the app economy together to launch new products and services. We're seeing new titles in this digital revolution, new responsibilities, new business models, and major shifts in technology spending.