Speech Transcript – Jim Allchin, .NET Briefing Day

Remarks by Jim Allchin
.NET Briefing Day
Redmond, Washington
July 24, 2002

JIM ALLCHIN: Good morning. What I get the pleasure of doing is drilling into the platform investments that Bill talked about to address the five barriers that he just highlighted. Now, for my talk, I’m going through each of those barriers, talk about the platform investments, and then, in each area, I’m going to do an illustrative example trying to highlight some of the advances that we expect, both in terms of the raw platform and what can be done on top of that investment.

Now, some of those examples are very near-term, very tangible, and some of those demos that we’re going to do are very conceptual and long-term. So I want to set that up, up-front. What we’re talking about is a long-term vision, and as with any house or apartment building that you’re building, you start at the very foundation. It takes a long time as you methodically build up. So, we want to give you an idea, a rendering, of what it looks like when we’re completed.

So, the first area that I want to drill into is the barriers between systems. Now, TCP has been around a long time, and at one level you could say, we already have that standard gauge. Remember in the era of 1886, when they decided that the standard gauge of railroads should be the same in the United States, well, you could say that TCP sort of did that. Well, not really, which is why we continue to work on this foundation that Bill talked about — XML, SOAP, WSDL, UDDI — all foundation pieces that today the industry has adopted, and there are incredible systems that can be built. You’ve just seen some of those customers that are using it. Our internal systems within Microsoft are using these.

Well, great progress. This is what we call part of phase one. Last summer, we spent time with about 50 customers, and we started to talk to them. These are people who are experts in Web services and were building them. And we said, what types of technology are you still putting in your applications? What’s missing from this basic one level above TCP? What sort of things could we add that would let them spend less time building infrastructure, and more time building their applications?

And through our work with those customers, as well as partners, we came up with what we consider to be an extended foundation that, if you will, still a little more concrete in plumbing that we need to work on. And in this particular diagram, I’ve broken it down into sections, technology areas, where we are making investments. These are essential protocols to allow some of the other things that I’m going to talk about in my presentation to come to fruition.

So, let me just highlight a few of them. Descriptions: there is WSDL today, it’s a nice description language, but if you could decorate it with more policy, more metadata, you could avoid having to write more coding into your applications. You take something like attachments, in that area we’re working to try to make them more efficient, so you can be able to send messages, which can be done with SOAP today, but you make them more efficient.

Routing: obviously, you want to send messages around the Internet and have the system route them for you.

And security. Well, today, you can do very secure Web services, but you have to roll all that technology yourself. So, in April of this year, we spent time with a set of other partners, and produced a specification that lets much richer security be done on this Web services.

And the core part of all of the things I’m talking about is about interop, so that different vendors, and customers can choose from different vendors, and have these systems work together in a very rich way regardless of the particular application that they’re building.

On top of that, federation. Bill talked about the work that’s necessary there. Privacy, think about it as P3P for Web services. Reliable messages, you can send a message today, but wouldn’t it be nice instead of having to handle all the synchronization in your application that there could be some infrastructure, some protocols, some standards that applications could depend on.

And then, finally, transactions, if you’re going to run your business on this instead of having to use an application like this, just have the system provide the infrastructure.

Now, this barrier about systems and organization, it really is about finding new concrete and protocols. In most ways, its impact is to developers, it makes your life easier. The result, as I said, is that over a period of time, it helps us break down these other barriers.

What I want to do is highlight in hopefully very simple terms, because it’s hard to get sexy about protocols, but I wanted to try to do a demonstration, and I want Robert Hess to come out, and show you some improvements in this extended foundation when you’re looking at both security and in the performance area.

So, Robert.

ROBERT HESS: As Jim mentioned, over the last two years, we’ve made great progress with XML Web services. He also outlined some of the capabilities we’re assisting on the future to even further increase the assistance to developers in creating great applications.

What I’m going to do is show you a small, little application that highlights two specific capabilities about XML Web services, hopefully in a way that helps you visualize the benefits that you’re providing the user, as well as how it’s doing from an infrastructure standpoint for the developer.

So this little application you see on the screen is basically an image transfer application. Imagine, if you will, you were sitting in your office, or whatever, and you wanted to download images off of an image server, a secure image server. They’re providing you artwork for your brochure or something like that. Let me just kind of start this running, and you can kind of see how the application is built.

I’ve started off a request cycle; I’m requesting a number of images. On the left-hand side, you see the actual images that are coming down off the image server. On the right-hand side, to help you see under the covers what’s going on, I’m show two additional windows. The yellow window on the top is showing you the client request for the images, very simple XML packet with one little line down here that says ‘looking for Photo10A.jpg,’ or something like that. In the bottom window, you get the XML response coming back from the server, sort of the standard XML packet, that additional envelope of information in XML nomenclature. Also down here I see image data, photo, whatever, jpg, and this gobbledy-gook, which is the actual image encoded in standard XML format.

So, what I want to do is show you the benefits that two specific services can apply to this application. One is DIME, Direct Internet Messaging Encapsulation. This is what allows data optimization across XML standards. The second one I’m going to show you is WS Security. And this is what allows the client and the server to exchange security certificates in a very fundamental fashion.

Let me start with DIME. I’m going to click this check box, and that’s going to turn on DIME encapsulation for this message stream. Watch what happens to the photo. Immediately they speed up. Let me stop here, and make sure you can take a look at the information coming through. What’s happened here is that XML, by its very foundation, is a text-based protocol, that means it’s seven-bit ASCII. However, images on your system are ASIC binary. To convert that ASIC binary to a seven-bit ASCII that runs off XML requires some processing power. It turns it into a larger file, which takes more time on the network, which has to be parked on the client, which has to be converted again back to binary format so we can see the image.

What DIME is doing is allowing the image to go across as a binary file, so there is no extra processing, and then it will turn that into a seven-bit ASCII file. Let’s see how that’s done.

In the request up here, all I’ve done is modified my request to say caption equals binary. This is the method being used by the server to indicate that he wants it passed back as a DIME packet. The response from the server has some binary information at the very front of it that identifies this as a DIME packet, as well as the size of the information. It then has a regular XML packet that follows clear to the end. The only difference is, rather than the data of the image being included in the XML packet, the data is actually attached to the end of the XML packet, and that’s what we see down here, all this binary gobbledy-gook is basically the binary file of the image coming through, did not have to be transferred over to ASIC before becoming seven-bit ASCII. Keeping an ASIC binary allows the information to go across the wire that much faster, giving us the speed increase that we saw.

Let me show you the second version. What I’m going to show you now is security, and this is how digital certificates are attached to this data stream to request information. When I click on this, the first thing that pops up is this little dialog box that allows me to pick the certificate on my end, the client side, that I’m going to attach to this string. There’s the certificate, I’m going to say okay, what this does now is attach that certificate to my request for the image. The server then can process, look at that certificate, understand who I am, pass me back the data in a fully encrypted fashion, recognizing the fact that I’m authorized to get a different version of this image.

Let me start that up and show you what happens. So, what happens now is, you see the watermarking has disappeared. That’s because I have identified myself to the server as someone who is authorized to get a non-watermarked version, so I can actually use this artwork in my brochures and stuff like that.

Let me stop it and just kind of show you briefly exactly how this is done inside the XML packet. Inside the packet, we’ve got a slightly richer version of the request coming from the client; it has to include some header information that identifies the security program being attached to the stream. In this particular case, I’m packing in an X509 digital certificate. Since this is XML, since XML is extremely flexible, I could have attached any form of certificate in there that I knew the server was capable of recognizing. If I had attached a certificate and the server did not recognize it, it would send back saying, unable to detect that type of certificate. I could then perhaps have the option to send a different type of certificate. This allows the transaction to happen in a very rich fashion, in a discoverable way across client and server.

Now, the response from the server also takes an attachment to the message so that I’m able to decrypt the information that comes back at me. You might imagine that the image rather than being passed across in straight, plain-text XML you might want to actually secure that, and this allows you to do that.

So, we’ve seen here in this simple demonstration just how XML Web Services is advancing to address some of the needs the programmers have. The benefit they get out of this is two-fold. One, it allows them not to have to focus on the infrastructure, and rebuilding the infrastructure of the application. They can rely upon the XML Web Services as a standard.

Secondly, it also allows two separate applications that aren’t necessarily knowing about each other originally but are speaking the same language to share this information back and forth. And that’s what XML Web services, and how we’re guiding it forward, can be important.

JIM ALLCHIN: Now, we feel like we were leaders in the foundation and, as Bill said, in showing the way to XML Web Services. I think working with the industry, we will continue to be leaders, as we’ve shown in the WS security, work that we’ve done as we layer the rest of these protocols and specifications onto our products, and also for the industry to use.

I want to switch gears and talk about the barriers of trust. Pretty much we’re at a crisis of confidence level, and the crisis I’m talking about is not in the stock market. I’m talking about in terms of whether people can trust their computers. We have an incredibly open environment in the PC. It’s great, and even in UNIX and other systems, it’s a very typically open environment.

Now, people know about these problems, whether it be viruses, security breaches, vulnerable code, I also think that people understand that today the industry as a whole, we haven’t really agreed on the nomenclature for the different security risk levels a particular system should be on, or a particular network. But when a particular virus happens, what grade level is that virus, are there ways that we can categorize that.

Across all of it, the customers need that trust, or they’re not going to purchase technology from basically any of us. This really got hammered home to me. We were deeply investing in security for years. I was incredibly proud of our work in Windows XP. We had had it outside reviewed. We spent hiring some of the best security people. But on December 21st last year, I was traveling, I was in Houston, and I picked up the newspaper, and there was a problem in AT & T, which was in Windows XP. That problem was a buffer overflow, which is a coding error, and it created in some situations a possible exploit on the system.

That made me very, very angry, and I had a conversation with Brian Valentine, who is responsible for the Windows system, and we decided on the phone, basically, this was the last straw, and although we had trained the organization in security, and had a set of practices, we clearly weren’t doing good enough. So, we decided that we were going to start in Windows, and throughout my whole platform organization, we were going to retrain everyone from the best security people that we had, we were going to stop all development work that we were currently doing. And we were going to create threat models, in other words, models about how the system could be attacked, to hone in on focus areas, use experts who had seen particular coding problems before, and create a new tool, which were already under development, and we stopped work in Windows while we made a focus just on security. And then that has continued to be a technique that we use across all of our platform products. What it did is make us stop and rethink about security. And we came up with four tenets: security by design, security by default, operationally secure, and user in control. And what I want to do is just walk through some of the areas of our focus, and re-commitment to sort of the basics of security.

I mentioned that now have gone through and created threat models. Weve had experts go through, and multiple code was used of the areas of the system. The whole foundation of the way the .NET framework and CLR is created is designed to be security aware, so that you can, in fact, have more confidence that the code people run is run in its own protected world. We created a new security business unit, and the security push that I mentioned here is this sort of stopping, taking a breather and saying, okay, lets make sure that were focused on the real basics here.

In the security by default area, we made the decision before to say, compatibility was in some cases very important to customers, and so we opted in some cases to leave stuff in. NetBEUI, which is a very, very old protocol, it definitely wasnt secure, we left it in for compatibility reasons, and we just changed that mind set. We said, were turning off services in the system unless you turn them on, and everything that comes up on the system will be secure by default, and if we can remove code that is legacy, and we know long term is not going to be secure ever, then we will do that.

And I sort of itemized those principles, and the techniques that we use for that. We also went back and said, well, even if the system is architecturally secure, even if we set it up secure by default, somebody can decide to just change the configuration and take it our of secure mode, and how are we going to help customers maintain operational security. And even if they dont touch the configuration, if you leave your house unlocked someone can come in and take your possessions. So we recommitted ourselves to training materials, to descriptive guidance, the secure technology protection program, which is using some of the customer feedback loop technology that Bill talked about, that we can help customers get updates and security fixes in a very, very fast way.

The last area is a tenet that we heard very clearly once we spent more time with customers, that we as a Microsoft platform group are going to commit to, and that is user in control. And by that I mean that the user gets to decide about information coming to them that they get to decide control over their personal data, what happens to that personal data. And throughout all of the work that were doing, were trying to keep that tenet directly in focus. Now, today Im incredibly happy to announce that we are releasing our R21 release candidate of Windows .NET Server today. And its the first operating system that really has gone through that set of tenets in a very hardcore way. So were very proud of this system, its a very comprehensive system, but the reason why Im highlighting it at this talk is because of the security ramifications. And its a holistic aspect that we put into this product.

Windows .NET server has been running Microsoft.com, about 50 percent of the nodes in that cluster. Within six weeks all of Microsoft.com will be running it. It shows our confidence in this product, and of course, the infrastructure of Microsoft has been running on this for some time, our internal structure. Now, Windows .NET server is a very comprehensive product, as I mentioned. The goal of the product was to address IT infrastructure issues, developer issues, and information worker, or somebody sitting at their desk, how do they see benefits out of a server. And Im not going to drill into this. I just wanted to put it up here to have you get an idea of the comprehensive nature of it.

But, as you will see scattered through here, the core elements that I was talking about in terms of breaking down the barriers to these systems in organizations. One that I will highlight right now is, for example, this area. We put for the first time a UDDI server directly into the operating system. So you can go and use XML, SOAP and WSDL, and then be able to locate that service within your enterprise, or if youre running on the Internet, on the Internet. So weve taken those basics and put them into Windows .NET Server. Weve also focused on all those security issues I just spoke of. But, probably even more impressive is not only what weve done in .NET Server, but what we laid the foundation in .NET server for other things coming.

Now, in a Web services world the requirements get even more stringent of what people are going to expect. Youve got programs talking to each other, and able to gain access to all sorts of information. You certainly want to know, using WS security and other technologies that you have locked down exactly what those applications can touch. So in the example that Bill talked about, of sharing some information with a partner, say, Intel, and you want to share a file, can you really do that? Well, what we put into .NET Server is federation ready. And by that I mean that, lets suppose that one of your partners, suppose youre a manufacturer and you have a vendor. Suppose that vendors site is compromised, if theres some way, if youre federated, to get in and infect your company, well, we put in technology to prevent that from happening in .NET Server. And, as Bill said, if you take Trust Bridge, which runs on the .NET server, you take that, then you can end up with a completely open, federated authentication model, whether youre using Kerberos, or other technologies, again, based on the WS security standards.

So in the Web services world you also have the issue that typically these applications are very task oriented, theyre really not based on the user per se, or the group. And so one of the things we did is added a rich, role based authorization model to .NET server. What people were doing today is, when they wrote an applications they were putting the checks, these one off checks, this person is in the is acting as an accountant today, or theyre acting as some other function. So we added the support so they could rip it out of their application and just depend on the base level infrastructure in a more generic way.

Lastly, and Bill mentioned this, corporate IT has very rich infrastructure today for doing authentication and authorization within their company. So the problem surfaces that youre going to have lots of different types of authentication models coming into your front end to those companies. An example, which I know youve heard of, is SSL, where thats an authentication system that comes into, say, a Web service. But, what you really want to do is access databases and other technology within, say, your Internet service, or within your company. Well, when you map that ID into the authentication model, so that you can quickly say, this person authenticated with SSL should be able to access this or other technology. So weve added the techniques so that you can do that mapping, so that you have control delegation, which just makes it, again, simpler. Again, pretty what I would say, complex, plumbing, but it enables amazing scenarios that today were really struggling with, where you end up with multiple IDs, and having do deal with that.

The last area in my focus was about user control. And I thought probably the best way to demonstrate that would be to show what were doing in Passport, in terms of making sure the user has control, so theres no funny ways for people on the Internet to come in and decide, talking to Passport, or talking to your machine, to gain information, your private information that you didnt want to give to them. So Id like to ask Darren Kall to come out, and give an example of what were doing in Passport for user in control.

DARREN KALL: Thanks, Jim. So Im going to present a short demo of per site consent. Its going to be Passports next step in responding to user requests to have more control over whats happening with their information. Today, users of Passport have some control, they can choose to share or not share information from their profile. But, theres four problems with that. The first one is that they share that information with every site they sign into, or none of them. Its not always clear what they get in exchange for giving their information, and honestly, some people just forget whats in their profile. The fourth point, and most important one, is that they have no idea of what that site intends to do with their data. Per site consent changes all of that, puts the user in control. Let me show you how it works.

So I surfed to Localjazz.com. Its a national site, it has news, interviews, and jazz events across the nation. I love to go to this site, I love to dig in, find out if theres anything that meets my interests happening in the Seattle area. But, if I were to become a member, you see their banner ads here, theyll do the digging for me. Theyll set up a personalized Web page just about Seattle, and that matches my interests.

So I click on the banner, nothing new here, standard Passport log in interaction. I put in my password to complete the authentication, and I get the Localjazz.com consent page. So I now know that Im dealing with just consent for Localjazz.com, I get some information here, and up on the top about why I would want to give this information, what do I benefit from this? In this box there are two important interactions going on. First, I know exactly the fields of information that they want from me, first name, email address, country, zip, and gender. I also know what information I have in my profile that will be given to them if I agree. You see that information on the right.

So weve presented these concepts to users for over a year now, all of the things that weve heard back I can boil down into three major concerns. They want to make sure that this site does not spam them, that it does not sell their name, and that they will not call them on the phone. So if I look at this consent page for Localjazz.com, Im still not convinced that I have that reassurance, so I have the ability to look under view details on their intent. Theyve listed two intents, theyre going to use my information to personalize the content and ads I get on my page, and theyre going to share that information with third parties to do the same. Now, I dont have a problem with that basic idea, but I dont understand why they need gender to do that. So its an optional field signaled by the check box there, and if I could hit it, Ill shut it off, and they dont get that information. Just to make sure that they dont send me email I can also un-check that field. So now when I send this theyre getting first name, country, and zip code. Im fine with that.

I have one more decision to make, I can do this consent interaction every time I come back and sign in at Localjazz.com, or by checking this box I can make it automatic, so that I just have to sign in and authenticate. Of course, I can go back at any time, review this, and all of my consent history, in a group, if I wanted to change it. I say okay, I get my page. It has my name, my zip, events for this week, and maps of where to find them.

So what Ive shown you is that per site consent is the way that users are going to take that control. And what did I do? I went to one site, I gave them explicit consent, and them only, I learned what I get in exchange, I knew exactly the information they were getting, and most importantly, I know exactly what they intend to do with my data. I dont feel Im taking a risk with Localjazz.com, now I trust them.

JIM ALLCHIN: Thanks.

So what youve seen so far is fairly near term, with all the things I talked about. Either, as I said, RTME, today, the release candidate, and Trust Bridge, and the like, or the user in control work with Passport. I want to switch gears to a longer term initiative that you probably havent heard much about. Its something we call Palladium. Its a set of Windows technologies that allows us to combine software and hardware together to give new levels of system integrity, data integrity, and privacy.

Now, when you think about it, PC is great, its an open environment, its not a set top box, closed, hard to get into, special security stuff. But, we love the PC being open. The trick here is, though, that user authentication, data privacy, those are based on top of software, which is based on top of the hardware. Can you trust the hardware? Can you trust that the software hasnt been modified in some way? So we set upon a very aggressive, long term approach to say, what could we do that would say that unless you have physical access, and could change the hardware, what could we do to create an environment so that software hackers couldnt do anything to your machine unless you had given them specific rights to do that.

Well, today thats certainly not possible. We build user authentication assuming that the operating system has integrity and the like. So what were trying to do in Palladium is add machine integrity to the security mix. And if you do that, you start with a more solid foundation, you know that the machine has not been tampered with, you know operating system hasnt been tampered with, you know certain trusted agents havent been tampered with. You sort of start this transitive closure field, so that you know from the beginning that youre starting with a solid foundation.

This does require some hardware changes, and so we’re working with partners so that that hardware will become standardized in the industry. We’re still a long ways off. The concept is that not only do you have a little key capability, a little storage; you also have the ability to execute code without hackers being able to debug it, without them being able to change it or modify it. We call it code curtaining so that we can take certain pieces of code and run it in an environment.

So you can think of your standard PC, dont think about it as anything significantly different, but its got these new technologies based into the system so that the operating system can count and have certain parts of code, or the trusted applications can have certain parts of code run in an environment that just basically no one can attack it. The result is that its going to enhance the software DRM that exists today. It has great applicability in VPN, steering commerce, and banking scenarios.

This is a very aggressive initiative. And I think weve done incredible work. It requires the whole industry to come together with this, so weve been having an open product planning work thats going on with a variety of security experts, government, hardware vendors, in order to pull this together. A core tenet of this is that users, even further, get more in control of how their data will be accessed.

When a particular web service comes to their local machine to get some information which is now stored locally on their machine, they can control exactly whether or not that information is given. So its sort of the opposite end of having it out in Passport, it would be on your local machine, and you can control who could touch it, and for what reason. So were very excited about this. Its a long ways off. We are making good progress on this. But, its again more a vision than a direct here and now solution.

I want to switch gears to another barrier, which is the barrier between people. And when I say a barrier between people, Im mainly talking about the barrier in communicating between people. And if you think about all of the barriers that exist, weve got the simplicity of the phone, and weve got the richness of the PC. Certainly it would be nice to have the benefits of both of them together. And even if you are on a PC, you have a whole set of islands that exist there. Youve got islands between email, and instant message, and real time video, and the like, theyre separate applications, you sometimes have to log into them in different ways. It doesnt present a unified experience at all. And its even worse if youre working inside your company you have one set of environments for doing instant messaging, but if youre home youve got a different set. So in order to communicate and have somebody find you present, if you will, you end up having two IDs often, because theres not federation, as Bill talked about, in things like presence. So you end up with this discontinuity between the external Internet world, and the world inside a business.

And finally, just in one particular discipline, take instant messaging, how many instant messaging clients exist? A lot of them. Can they interoperate? And the answer is, no, not really, today. And so thats another type of barrier that I think we need to solve if we want to drop these barriers between people. Thats between a couple of people. Imagine that youve got a lot of people that youre trying to have conversations with, and some of them are offline, some of them are online, some of them are in different time zones, and so the complexity between the different technologies of instant messaging, and email, and the like, it just becomes pretty overwhelming. So we have a set of platform investments that were working on, toward building this people-centric view. And let me start by first just being able to discover where somebody is on what device, I want to be able to send a notification, say, a message to somebody, but I want it on the right device. If theyre on their PC I want the richest experience, if theyre on the phone, and away from their office, and dont have a PC, Ill do that. Somebody, some technology needs to be created so that you can actually find the device that that person is using right now. And of course, the interoperability problem is one that were addressing through a set of standard protocols to be able to address presence.

Second is, there are a bunch of roadblocks in the way to just do the basic things. I love Windows XP. We have the ability to do connections across the Internet; its the way I talk to my mom; its the way she sees her grandson, with a video call each Sunday morning. Well, it just so happens it works great. But, if there were some kinds of NATs, or network address translator units in the middle, which a lot of home customers have, or a firewall if youre in the enterprise, they can block that communication. So weve come up with techniques, using IPV6, in order to get around, or advance the problems that are here with real solutions.

Federation: wherever I am, I want to be found, if Im at work or if Im at home and I want one ID in order to do that. That takes federation of where Im at, a rich set of APIs. Its not hugely interesting to have the monolithic apps, that all you can do is send messages and the like. We wanted to unleash the creativity of the developer community of all the things that they could do, once they could get a hold of these APIs, and be able to say, oh, somebody has just come online, or such and such information just happened. And then they could write an application to take advantage of it. So we think that we could have incredible scenarios there.

Lastly, today you can have, obviously, text messages that talk about the particular name, and they can be embedded in applications. But, theyre not really first class objects in the system. It does require a little bit of storage improvements that were working on. But, we want to take people in groups and make them first class objects. To give you a slight demonstration, just the basics of what well be able to do, we built a prototype with Verizon to try to bridge some of the connection between things like phone and the PC.

So imagine the situation where the phone rings, and at the same time that youre answering the phone up on your PC youve figured out the caller ID, and you know who it is calling on your machine, and this is demonstration code that we have working based on all the .NET technologies. And when I answer the phone, and at the same time if I click on my PC, I can pull together all the information, all the meetings, the times that I met, the phone calls, the email messages, everything Ive been dealing with, with that person. And Ill have this record. Imagine what this could do for sales rep, so that they could quickly get the information, figure out, across all their information sources, and pull those together about the particular customers children, the particular products that they purchased last, and whatever.

So in order to be able to do these types of very, in my opinion, pretty primitive, incredibly compelling scenarios, there is more infrastructure that we need to build. And one piece of technology, which Bill touched on a little bit, was technology called Greenwich. And its a real-time communications environment that will be available on .NET server, and the three tenets, the three core things that I want to leave you about this technology is a standards based; IETS based standards, so that it allows presence, so that youll be able to interoperate with any other vendor thats based on presence, define somebody else on the Internet, are they online, and where theyre online; and simple, which standardizes some of the buddy list management, so that you can interoperate between different systems.

Second, its programmable, so that doing that scenario that I just showed you will be possible. But, many more scenarios can be done.

And last, that its federated through these protocols, so that you can be at work, and somebody on the outside, in their home, in a different country, will be able to wander through the presence and be able to find you, if you want to be found.

So I want to bring Robert Hess back up and have him do a more comprehensive demo than what I just did here, example, to give you an idea of what would be possible, by piecing together a little bit more of the technology investment that were doing between people.

Robert.

ROBERT HESS: Thanks, Jim.

So, breaking down the barriers between people. Youre probably already familiar with using email, chat, and instant messaging and things like that. But, to truly break down that barrier we cant just rely on secondary applications. We need support that is built in and pervasive in the operating system itself. Im going to show you a simple, little visual demonstration we put together that focuses on three key things that I think are very important to really breaking down these barriers.

First is having a person be a first class data object in the operating system. Second is technologies to actually allow people to interact with each other, regardless of what the network infrastructure theyre on, what topography, what ISP theyre using, whether theyre inside the company or out. And thirdly, how applications that you use today, that you might not expect to be interested in people, can actually utilize these technologies to add a pervasive understanding of who a person is, based upon this infrastructure.

Let me start the application here. We see here, like I said, its a visual prototype Im using to illustrate these features. On the right hand side we see that Abbey Salizar (sp) has a list of the people that shes working with in a daily fashion, similar to the way you might use messenger or something like that today. So think about a simple scenario, Abbey has just gotten back from vacation. She took some digital pictures, and she wants to share them with her family. Its a very simple idea, but unfortunately today thats actually a fairly difficult thing to do. Lets see how Abbey actually solves that problem in a very simple fashion. First, she needs to go down and actually locate the location where shes storing her pictures at. Here it is, vacation pictures. So she clicks on that folder, and says, share this folder. Now, so far what Ive shown you isnt any different than what you might do today, the key difference is going to happen in a couple of seconds here.

Today, if you said share this folder out, youd be sharing it generically with everybody, as long as theyre on the local network, which is exactly the opposite of what Abbey wants. Abbey wants to share this folder out with a specific set of people that are anywhere in the network. As a matter of fact, shes already got those people defined over here in a little people collaboration application, her “my family” group. What she wants to be able to do is just drag and drop this family group over there into this authorization page, and immediately give them access to the folder.

She can do more than that. Lets say Abbey is not really computer savvy. But, someone in her family actually is. So Toby over here is the person she always relies on to take care of computer things for her. So she wants to give Toby a little bit of extended access to this folder. So she drags and drops that into the group, as well, and gives him author privileges. Now, if she clicks okay, the folder is shared out, and there you see that shes got a visual indication this particular folder is shared out with groups that are important to her. Very simple to do, exactly the sort of format that Abbey wants to do when she shares out pictures with her family.

Lets take a look on the other side of this. What does this look like to someone who shes shared this information out with? Lets switch over to Toby. Heres what Toby sees on his screen. He comes back to his computer, takes a look at this little people in group thing on the side, and he sees that Abbey is flashing on the screen there. That means that recent activity has happened from Abbey. So he clicks on Abbeys icon, and he sees that the recent activity is that theres a new shared folder. Clicking on that brings up further information about this shared folder. He says, ‘Thats right, Abbey just got back from vacation, Im going to go check out what some of those pictures look like.’

So he clicks on add network places, and this brings up his network places view, here he sees all the different information he can get to on the network, and then he sees the added icon for Abbey. Note, this isnt a cryptically named computer name that Abbey might have on her system, this is Abbeys information, displaying that information in a way that Toby realizes who Abbey is, with the same icon associated, that Toby has associated with her in the buddy list.

He can now click on this folder, and dive into that – okay, this is the folder for vacation pictures. What I want to do is, since I know Abbey is probably going to be adding more vacation pictures later, I want to subscribe to this folder, so that every time Abbey adds a new picture I can be alerted to it, and dive in and take a look. So he clicks on subscribe to alert, and he says, I want to be notified when files are added to this folder, and he subscribes. Since Abbey is still adding files to the folder, Toby gets an information pop up pretty quick here that Abbey has added more pictures.

Clicking on that takes him to the file folder, here he sees not only all the pictures in the folder, but he also sees a visual indication of which pictures are new since he added this folder to his list, or the last time he visited, immediately giving Toby visual feedback on the information thats important to him, that Abbey is carrying out with him.

Now, what I just showed you was a very much consumer centric view. Hopefully, we can also realize how from an enterprise standpoint this also can be very important. Imagine youve got a spreadsheet, or presentation, or some important document that your group is working on, and you want to be notified every single time somebody has modified that document, or a folder where a certain document is being stored at. The same capability could also be extended to the enterprise. Lets take a look at what that might be like.

For example here, Patrick has modified the media launch plan. This is a file that I told I want to be alerted to every time somebody makes a modification here, this is the important project were working on. I see that Patrick has added information I asked him to, and now its my turn to add some more information of who the owners of each of these project items are. Now, with something like Excel or any application of this notion, I could simply type in the name, and the people I want to assign this to, but actually Ive already got those names assigned, those names are assigned over here in this little list Im calling Launch Team. What I want to do is have these names reflected into the spreadsheet. So I just drag and drop this name, and drop it onto the column, and we see a bit of a visual indication that Excel is giving us to tell us that it has some background data to add to this column. Now, I can just take and very simply go through, and click on each one of these items, and add people to this list.

Now, the important thing to remember here is that these arent just text tricks. This isnt just text that Excel knows about as a word; its actually a person, as a rich data object, which means Excel knows something about these individuals; it can deal with those people, in a way that the system can help and support.

For example, with Kate, lets say Ive got some questions about the particular project shes working on, and I want to interact with her, but at a richer level. I can juts click on this, up comes a pop up menu, and I can see all the different ways I can interact with Kate. I want to take and actually start a video conference, so lets take a look at that.

Hey, Kate. So Ive got some questions about this spreadsheet I want to work on with you, but Ive got a presentation Ive got to finish first, so if you dont mind hang right there for a second, Ill get right back to you.

So not only did I take and start this very rich discussion from inside and application, but also you saw some of the technology were working on for doing full screen, approaching 32 frames per second, real time video conferencing. That also is some of the rich capabilities that we can add to breaking down the barriers between people.

What I’ve shown you in this demo hopefully illustrates three specific points I think are extremely important to breaking down these barriers. First is that the operating system needs to and can understand who people are at a very rich level, elevating them to a first class data object. Second, is have the technology built into the system that allows interaction to happen regardless of the network typography, connecting people across different systems, allowing that rich level of interaction. And, thirdly, and most importantly is that applications themselves can actually utilize these technology and expose them to you so that you can break down the barriers using the applications you use today.

Thank you.

JIM ALLCHIN: Thanks, Robert.

It’s awful cool. I want to move to the fourth area, a barrier perspective which is knowledge, and Bill motivated this already, so I won’t spend as much time as I might on this. You’ve got too much, and it’s too hard. And it’s really not knowledge, it’s a bunch of information. I’m overwhelmed at how much email I get. I’m overwhelmed by how many people want my instant message address. And I’ve got all this data on servers, I’ve got the data in my local machine, and of course as I mentioned, I’ve got several accounts in different places, so it’s just overwhelming.

Clearly, search and a new rich storage system are key to that. It’s also key to be able to distill this data down to where you can actually do something with for programming. And it would be really good if I didn’t have to organize it all myself. I do a lot of photos and, boy, putting them into each folder is tedious. What if I want to look at it in a different way? Anyway, it’s fairly overwhelming.

Again, at the bottom of this, applications need to be able to use that data. Well, the wonderful thing of the work in .NET and XML Web Services is XML if used properly can do amazing things to help address this along with a richer storage system. So, markup obviously can put the semantics on the data so that programs, not just humans, can start dealing with it. And it can clearly improve your searches and narrow it down.

If you have common schemas, then across businesses, and across industries, you can show that data and manipulate that data without having to transform it all the time. I mean, they’re an incredible set of standards that just deal with transforming data. Imagine if you didn’t have to do that. And, in terms of another platform investment we’ve been working on is just new ways to automatically organize.

And I mentioned notification, notification is really important to get all this data sometimes you may not be thinking about it, it may be in some remote place, but you do want to know when it changes.

Now, I put this one diagram in to help explain this notification flow. You could have a particular application that generates some event, stock price has gone up to such-and-such amount, and recently gone down to such-and-such amount, or you could depend on some base level technology, which we’re adding to things like SQL Server where the data changes there could raise an event, then be routed for a set of different vehicles to a set of end points.

Now, when you go through this routing, it might go to the Internet, it might go through an SMS message where you’re actually pinged, or to the Internet through .NET Alert, or it might be done within your company with something like the Greenwich Services that I mentioned before. So, could do all of this event stuff without the routing taking place out on the Internet. And it could do to a variety of end nodes. Of course, you want to pick the end node where you are.

So, we have some new technology, SQL Server Notification Services, which Bill mentioned, but I want to try to pull them altogether, and have Mitch come out and give you a demonstration of a more holistic view of both the SQL Server technology, as well as the notification, and pull it altogether.

Mitch.

MITCH GATCHALIAN: Thanks, Jim.

Today, I would like to show you how three technologies can come together to break down the barriers to knowledge. These are SQL Server, Yukon, the next major release of SQL Server; SQL Server Notification Services, the product that we’re releasing this summer; and the Greenwich technology that Jim has already discussed.

And to do that, I would like to present to you how we envision the one world challenge, how they could harness knowledge in their quest to win America’s most strategic boat race, the Americas Cup. You’re probably sitting down there thinking, what kind of barriers could a sailing team possibly encounter? Well, let me bring you through some of them, and you will probably see some commonality between the challenges they face, and businesses today.

First, though the sailing team is onsite in New Zealand, their extended team of design engineers and manufacturing partners are geographically dispersed all over the United States. Now, each person from that team needs immediate access to the latest performance data as if they were physically present in New Zealand.

That brings about the second challenge, all the data that they capture on the boat, like the rudder configuration and performance, the stress on the keel bulb, sail configurations captured by photos, videos captured by the chasing boat, all this information are recorded and captured in a variety of very diverse and complex formats. The ability to easily and efficiently store and share this information using the data infrastructure is a big problem.

Now, the third challenge simply use due to the massive amount of information captured at the end of each individual boat run. So think of me as one of the engineers looking at the data. Rather than having to go through a really monstrous heap of information on a server, there’s got to be a way for that information to be visible to me, the data that I care about has to be presented to me. So, that way, I’m able to stay on top of the performance trends, or the boat trends, and allow me to get insight into the boat’s performance.

So, let me show how it’s done, let me get started with this application. Let me go ahead and sign in via Passport, and though it seems right here like I’m signing onto a web page, what I’m really doing is signing onto a very powerful infrastructure that allows me to pull in the latest performance information, and allows me to analyze information and get my insight as if I was physically present in New Zealand.

Let’s go ahead and take a look at the performance data that they’re actually able to capture, and the telemetry data. So here, I’ve always traditionally been able to look at thin slices of information for specific components and graphical views. This is specifically what the engineers normally see, the kinds of data. Now, in a process like this, imagine having to go through a lot of this information, having to piece together all this diverse information and context format, put them together and get the big picture. That’s a very complex problem. What I really need is to be able to simultaneously view all the data collected in the boat regardless of format, so that I actually gain the knowledge of what really happened on that boat in that last performance run.

So, let me show you how Microsoft technology turns this around. Let me now rerun the race on this computer using the actual race data rendered directly from Yukon. Now, here I see the big picture, I can visualize the actual boat in sync with the wind direction, I can see the video on the side, I can see the crew annotations, and other data on the side, helping me discover insights as to what really happened to this race, which just probably concluded minutes ago. This is what our design engineers want to see.

Now, how does this all come together. Well, Yukon’s new database allows you to mark up all that data, define common schemas, and store all that information natively, so that the management and analysis of that data is a lot easier and much more efficient. This is a great way to turn diverse information into knowledge whether you’re an engineer or CFO or any user on the system.

Now, we take a look at it, our engineers are happy, but you know what, even with all the features that I just mentioned, our engineers still need a little bit more help. I mentioned this is just a massive amount of information, and there’s too much data to monitor, and it’s possible to miss those critical data changes. So, we need to find a way for our engineers to be actually notified when the data that they care about crosses critical thresholds, and that’s what SQL Server Notification Services and the Greenwich technology can help. Our engineers can set aside key performance indicators or thresholds, and when the data that they care about crosses that threshold, a timely notification message can be sent to their instant messenger, or email, or mobile phone, pocket PC, whatever channel that they choose.

So, here’s how it’s happening: at the end of each boat run, all that data is uploaded to the server. SQL Server monitors that data drop point, analyzes the data, sees if there’s any significant changes, and if there’s significant data that we care about, it automatically generates, formats, and routes a notification message together with an action point.

So, for the purposes of this demo, I will manually load the information to simulate the end of boat run. I’ll just go ahead and drop that information in that data drop. And what’s happening now, SQL Server is going to see that new data has come in, do some analysis, and match it together with our thresholds, and here we see that a notification just was sent to us. I’ll go ahead and click on it and tell you what actually happened.

It’s noticed that there was a slowdown in boat speed, and said that there’s a key performance indication that there was as slowdown in your boat in that last performance run. So what it did, it led me to view the top-level performance indicators of our race. This race was broken down into 10-minute segments, and I can already see from the fourth segment that there was a red light flashing, indicating that I may have a rudder flap problem rounding the mark as I made that turn, causing a boat slowdown. I also see in the top three segments there were already warning signals out as I was trying to make my way up wind.

The point here is how quickly I’m actually brought to the significant data by the notification. Clearly, the value of knowledge is increased dramatically through timely and precise notification.

So, after more analysis, Jim, we decide that’s not the rudder that we want; it’s causing us problems. Let’s go ahead and choose and manufacture a new rudder design. So, I go ahead and select a new rudder design that our engineers have been working on. And here I am pulling up a three-dimensional diagram of a rudder rendered directly out of the database as pure XML.

Now, again, this is using all the new data bites in Yukon, and I’m able to store a lot of rich information and objects. Now, the question is, how do I get all of this information out to my manufacturing partners? Well, because of Yukon’s new Web Services capabilities, I’m able to take this information stored in this object, and allow my partners to see exactly what I see, every piece of information in there, and that’s what gives them the ability to integrate the data here with the ordering and manufacturing system.

So, let me go ahead and check out which vendors can actually manufacture my rudder, and I see that there are three vendors that can create the rudder for us. And, Jim, on the left side, we see that there is also present information from my personal contacts. Now, having this feature here gives me the ability to immediately inquire, if I have any question in my mind like whether they can actually fulfill my order or have a question about the order process, having these features here continually allows us to break down more barrier to knowledge.

So, let me go ahead and select Northern Tide, since they’re the only ones who can deliver it in three days, and place an order. I have a problem with one rudder, and I’ll need it by the first of August, because we’re probably doing another performance run by then.

This order is actually sent out to my partners’ order and manufacturing system. The cool thing is that my partner’s manufacturing system is also covered by XML Web Services, which in turn allows me to gain the knowledge of their production line that actually services my order. And here I can actually see that there are two production lines, which allows me to pick the earlier delivery date to avoid any delays in my team’s performance testing.

So, here again, we can see that Yukon, SQL Server Notification Services, and the Greenwich technology allows us to see what we can do, a vision of how we can search, view, analyze, share and enhance, breaking down more barriers to knowledge.

JIM ALLCHIN: Now, what we just showed was more on the server side, but think about the same type of technology, the same type of rich storage seen on the client. We’re clearly committed to that. There’s work going underway to do that — so, schematized storage with all the richness and notification capable on the client.

So, we’ve talked about four of the areas, and it may link more concrete and plumbing, but we want to bring it home to the user. What is the vision that can be accomplished once you have some of these infrastructures in place? And so I want to move to the barriers to every day use. Everybody knows the number of digital devices is exploding. The use, connecting them to PCs is also exploding, but paper is still more convenient, the TV and the phone is more connected. The TV is definitely more entertaining, you don’t have to install service packs on the TV. And some people believe that the PC isn’t approachable enough, which I agree with, and that’s part of our challenge.

So, what are we doing about it? Well, we’re doing a whole series of things, in terms of raw infrastructure, which unfortunately I don’t have the time to talk about, we’re also committing new form factors and new experiences with these devices to be able to move beyond the limitations of what the PC has, as well as the limitations of what those special purpose devices had.

You’ve heard a lot about the tablet. It obviously is in our opinion destined to be a smash hit because it helped move you beyond the limitations of the current PC as well as gives you all the benefits that you had with paper. Jeff Raikes is going to be talking about that later.

Another device that were working on to deal with the “roam-ability,” if you will, is what we call smart displays for the home. And it is think about it as a portable phone in the home. It is a display that you can pick up and take around to any place in your home, and have information go to where you are. Of course, you need the infrastructure I talked about. But, if you cant get the information where you want to be, then its not as impactful to you.

Those are all about convenience. Well, it turns out that quality is also a big deal. I made a little pun about the service pack on a TV, but in reality the TV does come on faster, and when you switch channels it really switches, you dont see the buffering type messages. So thats an area in terms of just quality of experience that weve worked very, very hard on.

For time Im not going to be able to do demonstrations of these areas today. Theyre very compelling in how far weve already come. And these are all very, very near term improvements.

Another area where we wanted to take XML services was to the living room. We can take it to a set of devices, whether it be smart phones, or whether it be the PCs in your office, but we wanted to take web services into the living room, and have an updated, Windows 2000 Professional version, that runs on specialized PCs, which we call media centers, and these systems for the home give us the first entry to really be able to do exactly what I said, take those web services into the living room.

Molly Scoville Rhoten is here, and Im going to have her come out and do a demonstration of the device that you see right over here to my left.

MOLLY SCOVILLE RHOTEN: Thanks, Jim. Im really glad I could be here today and talk about some of the ways were breaking barriers to every day use with Windows XP Media Center Edition. I work on the team thats building this product, and were pretty excited about what were going to be able to deliver to customers when this product becomes available later this year. Jim pointed out that I brought on stage with me one of the concept PCs that one of our OEM partners is working on.

This doesnt look like a traditional PC, and thats on purpose. Its not a traditional PC. Were breaking down barriers to every day use by making the PC work more like a consumer electronics device. For example, when I want to watch a movie I pick up my remote control, and I press the power button, and I turn on the TV, I turn on the DVD player, so that I can watch a movie. At a minimum the media center PC has to be able to do the same thing.

So Ive started with my PC turned off. I have a black screen here. So I press the power button on my remote control. My PC turns on. We put in a stand by state, so its an always on PC, it makes it very easy and quick for it to turn on.

I think that I actually just turned it off. I was wondering why that responded so quickly. It was actually already on, somebody turned it on before I came on stage. So I powered it down, and back up again. You can see how quick that power experience is. I can then use my Windows XP Media Center remote control to navigate the log in screen, and log in as myself. The remote control is fully functional with XP. And this is a Windows XP PC, it does everything that youd expect XP to do. Ill come back to that later.

First I want to show you some of the cool things that media center can do. Im going to press the start button on my remote control, and this is the same as pressing the start button on the desktop that everybody is used to today, except the start menu that we see here shows experiences that makes sense for use with a remote control. So I can use audio, video, and photos from anywhere in the room with my remote control.

When people think of media one of the key things they think of is watching TV, so lets go ahead and watch some TV. I have a live TV feed coming into the room, and theres a TV tuner card built into my PC. So what we have here is live TV. I think weve go The Young and the Restless on today. This is what everybody is watching while all of us are at work. We can go make this feel like a very traditional TV experience, I can make it full screen, I can actually turn that volume down myself, so well turn it down. I can also change the channel, so we can jump up and down between channels. It does what you expect your TV to do.

Along those same lines, anybody who watches a lot of TV is really used to using the program guide a lot, to find out whats on. The great thing about our programming guide is its an XML based web service, so I can navigate around the guide to find out whats on, and I can also do rich searches on the data thats in this guide.

Im going to jump forward in time – it looks like Teletubbies is on, great. So Teletubbies is on later, but since its not on right now I cant watch it. What its telling me is that I can record this for later. We have digital video recording capabilities built into the PC, so I can record anything I want and come back later, and watch it at my own convenience.

Along those same lines, if I go choose something thats on now, Mr. Rogers Neighborhood, that looks great. Because we have digital video recording capabilities I can go ahead and pause that live TV experience, and start playing it again. So I can answer the phone and not get interrupted, or if I missed something that was quick, I can jump back in time and go watch it again. So I have complete capability to watch TV exactly the way that I would want to watch TV, right here on my PC.

So lets jump back to that start menu. We took a good look at the broadcast TV scenarios. We can do the same things with other kinds of video, like home movies, or DVDs, and also with other kinds of media. So lets go take a look at music. These days, lots of people have large digital music collections stored on their PCs. What media center does is it makes it really easy to go find what you want to listen to, and you dont have to keep walking over to the PC in order to do that. The remote control essentially turns the PC into a CD player, so you can navigate through your music the way you want to. Except, we have this incredibly rich interface for you to find that music. And this is built on a .NET service, so all of the meta data comes automatically to the PC, so the album cover art, the album names, the artist information, all comes directly to my PC, just by putting a CD in the drive, and using Windows Media Player to copy that music onto the computer. It will show up automatically in Media Center.

So we can go ahead and play one of these albums. I mentioned that this will work just like a consumer electronics device. I can go ahead and skip tracks; I dont like this track very much. I can listen to something else, thats better. I can pause that music, all the capabilities Id want. Except its even better than a CD player, I could have hundreds of albums stored on my PC, and I have access to all of them with my remote control from anywhere.

So Im going to jump back to that start menu again. People behind the scenes are going to kill me for not remembering to mention at the beginning, everything that Im showing you here is actually built on the .NET framework. So what youre seeing today is the way that weve harnessed the power of the PC and the power of .NET to bring some really compelling end user scenarios to our customers.

Now, if Ive done a good job showing you the way that weve broken down barriers to every day use you might have forgotten that I said at the beginning that this is just a traditional PC. So lets go take a look at what else we have here. This user interface is completely mouse and keyboard enabled. So I can go back to watching a full screen TV experience, and I can put it in a window, and I can shrink that window, and we can move it off to the side. We have an XP desktop underneath; it will do everything I expect my XP PC to do.

I’ll go ahead and launch a web browser. And we can surf the web while watching the game that we recorded, or even watching live TV, and still have the ability to pause that live TV experience while I’m surfing the web, sending email, working on a Word document, whatever I want.

There’s just one more thing I want to show before I finish today, and that’s a way that partners can participate with us in our Media Center vision. It’s really easy to add menu items onto that start menu that I showed you earlier. All I have to do is put a shortcut into the right folder. And when we go back to that start menu, you’ll see that solitaire, which is what I just dragged in there, shows up on the start menu. So solitaire is a pretty simple choice for me to make, it choose it because it works really well with our remote control. So, I can go ahead and play solitaire right from my remote control. But you can imagine from the really compelling scenarios, as our partners start building things that make even more sense to be used with Media Center, somebody might build a home automation application, so I can turn the lights down with my remote control before I start watching my movie. I think as the industry starts getting used to the concept of controlling their PC with a remote control, we’re going to see some pretty exciting things happen in the Media Center.

JIM ALLCHIN: Thank you, Molly.

(Applause.)

I think it’s awesome. So, I’m glad you clapped. I mentioned, Molly mentioned, this is Windows XP. It’s souped up a little bit, but it’s basically Windows XP. We’re very, very proud of the foundation that we’ve put there. We’re also very proud of all the work in the .NET framework that we are able to leverage. That’s why we’re able to do this work so fast, and all the web services that are an integral part of this offering.

That’s very here and now. I wanted to just move a little bit to talking about where we want to go. The PC is integral to people’s lives, but it’s not as immersive, you don’t take it out on the lawn very often, although I did on my recent vacation, but most people don’t take PCs out on their lawn, most people don’t have PCs in their car. There is a whole set of platform innovations that we need to work with the industry on as well as our technology in order to harness all the great capabilities that I’ve been talking about, and drive those into the most powerful device that we know of, which is the PC.

Our goals are to be able to make people work together, have more fun together, to empower both consumers as well as information you work with,

hat you can build a very rich, immersive application to take advantage of that data. Plus, you’ve got very rich presentation and graphics that are based on the .NET framework.

So, with that, I want to bring Hillel Cooperman out and have him do a little look to the future.

HILLEL COOPERMAN: Thanks, Jim.

Let’s say I’m a software developer and I’ve been listening to you talk all day, and we’re excited about all the thing up here, and, like you said, I want to bring it all together in a really rich, and immersive, and exciting way.

There’s really two reasons I want to do that, all the data I have access to I want to be able to show to my customers, to my users, to my partners in a really compelling way that highlights the relationship between the data and what’s special about that data; and also I just want it to look great so that they’re really excited about using my software and diving into the information that I have to present.

So, you’ll see in a second on the screen, this is a vision for a connected application of the future, like Jim said, and I want to dive into how this might look down the road, taking advantage of our rich presentation platform.

I want you to watch what happens when I launch this application, because it’s not a typical way you’d launch a Windows application, at least not the typical launching experience. This is the Aspen World Cup 2004 connected application. We want to present all manner of information, schedules, video clips, et cetera, to their audience.

But notice a few things. As exciting as it was to see the Media Center example where I could put the TV in a window, and surf the web while I’m doing that, this software developer wants to bring it all together in one immersive full screen experience. As exciting as the TV is, the PC is an incredible rich presentation device, and we should be able to embed all the stuff together. He just broke a barrier on his own there.

So, notice, the video is streaming into my application, I do live reflection on the video right here below it. In the background, that 3D globe is rotating, all again, presented to the user in a truly immersive way.

Let’s assume another example where let’s say maybe you want to surf between different sports that are available, and see sort of what interesting information is available about them. Or maybe I want to see clips, photos and news stories about what’s going on at the world cup.

Notice, again, how rich this information is, what a great job it does presenting it, not just the images, but also look at the text that you can sort of see it slide by there, slowly, fast, whatever it is. But, again, just a really beautiful presentation that the PC is capable of doing, leveraging all of the .NET framework, and all of these services, and being able to access this data and present it to the user in a compelling way.

Last of all, this is one more example where I’m getting video streamed in, but I really want to supplant it with other additional information that I have access to so I can show the users of my application where it is here on the site, what statistics are interesting, et cetera. You get the idea.

Again, even though we’ve picked an example that targets consumers to a certain extent, the ability to do rich visualization of data and have an incredibly attractive software that people are excited to use, applies to all users, whether they’re consumers or knowledge workers.

So, with that, I’ll just leave you right here to sort of marvel at these images. That’s it.

JIM ALLCHIN: Thanks.

This demonstration that you’re seeing right now is sort of the ultimate, where we’re going with our platform investments. I don’t know about you, but that’s the type of applications that I want coming to the future. We think they’ll be indispensable and irresistible, and that’s why we’re pulling so much of Microsoft together from the platform side in order to make this a reality.

Thank you very much.