Remarks by Sanjay Pathasarathy
Anaheim, Calif., March 26, 2001
MR. SANJAY PARTHASARATHY: The next generation Internet is going to use XML-based technology to stitch together all of the different islands of information, including devices, Web sites, applications, and entire infrastructure, like storage infrastructure or the communications infrastructure.
The revolution of XML Web Services has started, and its going to drive the way the Internet, software in general, and computing is going to evolve over the next few years.
Microsoft is betting the company on XML Web Services, just as we bet on the Internet five years ago, and on graphical user interfaces over a decade ago. And .NET is that bet. So what is .NET? Probably the best way to describe .NET is to describe the kinds of applications that can be written using .NET. And what do these applications look like? They consist of some client code --not just the browser -- talking to a set of Web Services in the cloud and using other clients and servers in the network as resources.
How do you get this move to this next generation of software accelerated? I think that there are three levers that need to be pulled. The first lever, I think, is that everything needs to be a Web service, an XML Web service. And Im not just talking about your calendar application that is exposed as a Web service, but all of computing is exposed as a Web service. So storage needs to be a Web service, management of servers needs to be a Web service, and I think that is a very important first step to this next generation.
The second thing that needs to happen, the second lever that needs to be pulled, is that these Web Services have to be aggregated and integrated in very simple and easy ways.
And, finally, the most important, youve got to have a simple and compelling user experience that pulls these Web Services together so that the end-user has a very, very good and rich experience.
So what I want to do now is actually show you a demonstration of what some of our partners, in this case eBay, is doing to take the steps into this next generation of software. And Id like Gundotra, who is general manager of Developer Evangelism, to take you through what eBay is doing in this space to move to the next generation.
VIC GUNDOTRA: Great. Thank you, Sanjay.
You know, more than 10 years ago, Microsoft, as well as many of you in this room, made a big bet. We believed that the graphical user interface was going to change how applications were going to be written, and then that GUI was going to change the industry. Of course that was a good bet for many in this room, as well as for Microsoft. And since then, Bill and Michael have talked about other major inflection points that weve gone through: client server computing, the Internet.
Today were seeing another one of those dramatic changes thats providing tremendous opportunity for all of us, and that is a shift to Web Services. Its a quiet revolution, but its happening. Companies from Alibre to eBay to Verizon are rethinking their business and thinking about how they expose their functionality as a Web service.
And just in case anyones confused, whats a Web service? Its simply taking an application or a Website and exposing its capabilities programmatically via XML. And that Website or service now becomes a building block that you can aggregate together to do some pretty exciting things.
If youve been watching Microsoft over the last year, you know were serious about enabling people to write Web Services. We put hundreds of man-years of investment into our next generation tool set, that makes it easier for any VB developer or C developer to write a Web service. But much more than making it easy to write Web Services is required; broad, horizontal platform services are required. Let me explain.
Think about authentication. How many of the Web sites you visit today require you to log-in? How many devices, applications? For me its dozens and dozens of passwords I have to manage. Shouldnt authentication be a broad, horizontal, programmatically acceptable Web service? What about notification? Michael and Angie just showed you a demonstration of rebooting a server based on a notification that came to a small device. Wouldnt it be great if there was a programmatic method that you could fire a notification to a user no matter device he was on? Well, thats just the beginnings of the .NET strategy. And no doubt youve seen Microsoft already move in that direction with things like Passport. Today we have 160 million Passport accounts. For those of you who use Hotmail or Microsoft Investor, youre already users of Passport. Let me give you a demonstration through several partners who have incorporated these early .NET platform technologies and, as Sanjay has said, how these technologies change the end-user experience for the better.
With me I have Robert Hess, whos a senior developer. And hes going to walk you through what eBay has done. Now, if you look on the screen you have a wizard there. And the wizard allows you to create an auction on eBay. Its a nice little application; you can create an auction offline. You dont have to be connected. You dont have to go through many html pages. If you click on "next" there, click on "update list," you can get a list of the auctions that are -- or the categories that are available on eBay.
Now, let me just stop here for a second. The fact that we could have a wizard that drives the eBay site is amazing. Thats only possible because eBay, independent of Microsoft, has bought into the Web Services vision. And theyre exposing functionality, programmatically, through XML. And thus you can even write an application like this. In the past, before Web Services, many people wrote applications that were on top of the eBay auction engine. They screen-scraped eBay sites -- you can imagine. In this case, eBay changes its structure of the category that it allows auctions on on a daily basis. And why, those applications broke.
And so, much of what you are seeing in this wizard is very subtle. The fact that I have programmatic access to the eBay site, I can get the updated list of categories, and I can go ahead and create an auction -- in this case, create an auction for some sports memorabilia. Ill drag a picture, Roberts going to go ahead and create the auction, fill in some forms, choose a payment type, and continue on with this wizard.
Now, in addition to being able to drive the eBay site, because it supports Web Services, theres something else thats very subtle that you may have missed, but very profound. How was Robert able to create an auction on eBay without entering in a user name or password? The wizard never asked for it. Well, the reason this was possible was through some pretty cool innovation that youll first see in Windows XP.
Two things have happened here. Number one, eBay is supporting, through this prototype demonstration, Passport. And as a Passport user, theyre programmatically authenticating Robert. And they know who he is. Well, you might still ask the question, "Okay, well where did he enter in his Passport credentials?" Well, Windows XP allows you to cache your Passport credentials with a log-on into Windows. Let me put that in English. What that means is a log-on to Windows, through that single user name and password, can be a log-on to the entire Web; to all sites that support Passport. No longer do you have to manage user name and password across all sites -- very simple, very easy to manage; pretty cool stuff.
Let me show you another innovation. Before we close out this wizard, let me show you another innovation in Windows XP thats built on these .NET Web Services.
What youre looking at is a new feature of the Windows XP shell. If youve ever used Instant Messaging -- Im sure everyone in this room has -- you have your buddy list in a separate Instant Messaging application. You see it here very nicely integrated into Windows XP. And you can see Ive got my buddies there. But whats interesting here is that were using the buddy list for far more than just teen chat. If you think about a buddy list in a messaging platform, it really can be used more broadly for all kinds of interesting applications. Why cant the server fire you off a notification that its gone down, or that your auction has been created? In fact, if you note there, theres an eBay tab. This is customizable by our partners. And you know, in this case eBay has done a fantastic job of building an application that allows me to see all the auctions that Im currently bidding on, or auctions, you know there in the right-hand the red "R" that my reserve has been met.
Now, theres plenty of advantages to this approach. Number one, I dont have to go to the eBay Web site and hit refresh, refresh, refresh, refresh, seeing if I was outbid. By using the broad notification platform, eBay is able to programmatically alert the user that, "Hey, youve been outbid." And I get that notification right into my desktop.
Now, if youve ever used Hotmail, you may be familiar with what we affectionately call "toast," those little pop-ups you get in the right-hand corner of your screen that say, "Youve got new mail." Well, that really is a form of alert, and weve made alerts generalized, programmatically acceptable. So when Robert clicks "finish" here on his eBay wizard, youll note that it will go out, create the actual auction on eBay, and youll get a pop-up toast on the bottom right-hand corner of your screen that lets you know that that eBay -- there you go, youve got two alerts there. One alert says, "The auction has been created." The other alert says, "Youve been outbid."
Now, you know Robert clicked on that. Let me explain once again something very subtle but profound. Remember we said this was more than just teen chat. This is more than just instant messaging. In that pop-up alert that youve got that said, "Youve been outbid" was metadata associated with that, a URL. So when Robert clicked on that, it opened him up directly to the page to the auction where he was outbid. The authentication, logon process happened seamlessly in the background, and why he was able to go ahead and adjust his bid.
Two simple examples of how .NET services such as Passport and notification allow you to create a more compelling user experience; in this case just for auctions. As we continue on well show you some more demonstrations that we think youll find quite interesting.
MR. PARTHASARATHY: Thank you, Vic. Pretty cool, huh?
What eBay has done is fundamentally moved its thinking to the XML Web Services generation. Its moving to integrate Web Services that make for a simpler and more compelling user experience, and theyre moving forward to aggregate and integrate a whole collection of these Web Services.
Now, what is Microsoft doing to make sure that we pull these levers as hard as we can? Thats where .NET comes in. The first thing that were doing is were building a programming model, a set of run-time and a set of tools that makes creating Web Services super, super easy. Our goal is that everybody out here in this audience and everywhere in the world can build Web Services as easy as pie. And Visual Studio is the toolset thats going to help people do that.
If you think back to a decade or so, Visual Basic enabled a whole new audience, a whole new set of people to build graphical applications by dragging and dropping components on a page. We think that Visual Studio, with the framework and runtime, is going to make it super easy for people to build Web Services.
The second thing that were doing is building a set of servers that make it super easy to run, to operate, to manage these XML Web Services. And Id like you to think about these servers in a couple of different dimensions. The first thing that these servers are going to do is embed XML and XML technologies at the core, so its really easy to integrate these Web Services using XML and SOAP.
The second thing is theyre building a whole new set of servers like BizTalk Server that allows you to do aggregation and integration based on richer models like process workflows or contracts.
So our server family, the .NET enterprise server family really is going to make it easier for you to host, to run, to manage and operate these sets of XML Web Services.
What are we doing to pull the lever of simple, compelling end user experiences? This is probably the most important thing because this is where the end user interacts with .NET. Vic talked about notification and authentication through Passport as examples of some of the Web Services that were building to make it easy for end users to interact with these Web Services. And it doesnt just end there, because it also makes it easier for the developer, through programmatic access to these Web Services, to focus on the things that theyre best at.
Think about when the PC started. Everybody wrote their memory manager. Everybody wrote the file systems. And what Microsoft added in that environment was to generalize and make available in a guaranteed way a standard way to think about the file system and the memory manager. Thats akin to what were doing here. Were taking some of the most commonly requested and required Web Services and were building and hosting them so that developers can program to them and end users can use them.
The next thing that were doing is were assuming that end users are going to want to work with a family of devices, both at home and at business. And were building a set of software to make these devices smart and to deliver very compelling user experience to the people who use these devices.
I think of these four components -- the frameworks and tools, the servers, the Web Services in the cloud and these smart devices -- as making up the .NET platform. And on top of this platform, people are going to build experiences that really target the end user that used those experiences.
Theres been incredible excitement about .NET and the way people are integrating on .NET. Even in these early stages, its quite, quite mind-boggling. Just last Monday, another five companies stood up and demonstrated their support for .NET by demonstrating some prototypes at the " Hailstorm launch on March 19th. And these are some of the marquee names of the next generation of software.
What Id like to do now is to announce an additional partner, who is here to talk you through a prototype that theyve developed. And Id like to welcome aboard Daniel Chartier, who is director of development at LiveVault Corporation, to take you through what his company is doing with .NET.
MR. CHARTIER: Thank you, Sanjay.
Good morning. This is a pretty exciting day for LiveVault. This is the first time well be publicly demonstrating the LiveVault service integrated with the .NET technology. In fact, the relationship with Microsoft is so new the press release just went out this morning. So Im excited to be here.
Im going to start by telling you a little bit about LiveVault backup service. LiveVault provides backup, recovery and e-vaulting services for Windows servers. Our customers are usually large enterprise customers that have many remote servers, and small and medium businesses that have Windows servers on their sites. The common thread is that there was not enough IT staff trained and on site to manage and monitor their backups. So theyre not getting good backups. They cant get their data back.
What LiveVault is offering is a service to back up your corporate servers over the Internet in a secure fashion to our data centers, and we monitor and manage those backups 24 hours a day, seven days a week, to ensure you have good data.
So what Im going to be showing today is a backup and a restorer, using the LiveVault service, and Im going to show how the .NET technologies enhance the end-user experience when backing up their data.
So theres four components important in this demonstration. Theres the servers were going to be backing up, which I believe are on the screen now. Theres these three servers, all of them are located in Massachusetts, so this is a live demo over the Internet. The second component is the LiveVault Data Center, which is where we gather all of our customers data, we archive it for long-term storage, and we make it available for immediate restores. The third component is the .NET technologys "Hailstorm" Services Server, which is in Redmond, Washington. The fourth component is a workstation that youre going to be seeing, and this is the one that Im going to use to manage and monitor all the backups and restores.
So what are you seeing on the screen right now? You see three servers; theres two of them that are backed up 100 percent and were totally running our backup. Any changed data will be backed up immediately. So we detect when your files change and we back them up as it happens. Theres one server here, the sales server, which is not backed up at all, so Im going to show you how that works. So were going to go in and were going to configure the backup. When LiveVault backs up your data, it grabs the first copy of the data and brings it over to the data center. After that, we never again copy over all of your data; we only take the bytes that change. That way we stay efficient and can work over lower-speed bandwidths.
So configuring backup is really simple. Weve tried to make this for a non-technical user. So heres your sales server. We know on the sales server theres an Exchange database you want to back up; you simply select your database. It takes a moment; were contacting the server out in Massachusetts to get the data. And its coming. There it is. We select Exchange, we save this data, we submit it to LiveVault to back up the data. Now, what Im going to do, once this is submitted, Im going to come in here, close this browser so we dont see any interaction or any feedback from LiveVault, and were going to get notification through .NET services that my backup is complete and were now continuously backing up my sales server. Now, this notification is interesting in that its not just a message; this is live, interactive data. I was able to click on it; it launches a browser, gets me back into my Web application, and brings me right to the page that tells you all the details of the backup we just completed.
Now, this uses a lot of the .NET technologies in that the notification of where I was and what work station I was logged into; it also was able to interact, using Passport, to get me back into my application without me having to log-in again. Theres a lot going on in the background here. And you see our backup is now 100 percent complete.
So backup, as you know, is only one side of the backup and restore coin. The other side is restore. I want to show you how restore works in LiveVault. Were going to restore a couple of files -- or one file, actually, from my WinHEC server. Its a presentation Ive been working on for a while now to describe "Hailstorm" to the engineers that work with me. If you look at this screen, you see that theres no restores currently going on, and were going to start a new one. Now, LiveVault will restore your data two ways. One, it will restore your data over the Internet, which is what Im going to show here. If youre trying to restore a lot of data, we will actually put the data onto some kind of media, like a CD or a NAS device and ship that to you overnight so you have your data the next day.
The other nice thing about LiveVault is it monitors your backup and restores 24 hours a day; meaning if I had trouble with this restore, our services operations center would notice it, contact me immediately and ask me if I want to resubmit the restore, if there was some other problem they can help fix, and keep you going and get your data back as quickly as possible.
Now, the restore screen, as you know, is, again, very simple, easy to use. Looks very much like the backup screen. Name the restore. Select your files. The LiveVault has the ability to say, "I dont want my latest files. I want to go back and I want to see my files as they were, say, two days ago. I like the way my presentation read back then so Im going to go back and get it on the 24th." And then, like backup, I drill down and I select the file through store -- theres my "HailStorm" presentation -- and I save this. I submit it to LiveVault to process. And again, Im going to close my browser so you dont see any status that you would normally see through my LiveVault. And we are getting notified when this restore is complete. Not only that, so I can walk away from the system, Im going to get notified on my cell phone over here, to tell me that my file is restored. Now, you saw the notification come up, I clicked through so I can get back to my Web path. I dont know if you just heard that beep, but thats my -- lets see, there it is -- (pause) -- that one shows I have one file restored. I dont know if you can see that.
So what you see is a lot of different technologies here, integrating both LiveVault service and Microsofts .NET technologies. Weve used Passport to get in and out of our application multiple times without ever having to log-in. We used notification to locate me at my workstation. I could have moved to another workstation; it would have located me there. It located me on my cell phone. And so, you always know whats going on. Weve really enhanced the end user experience by integrating the .NET technologies with Microsoft.
MR. PARTHASARATHY: Thats great. Thank you, Daniel.
MR. CHARTIER: Youre welcome. (Applause.) Thank you.
MR. PARTHASARATHY: It is amazing how people are innovating around the .NET platform today. And its not just in the consumer space, its not just in the business-to-business space, its not just in the enterprise space. People are popping up everyday with some cool new application that really enhances the end user experience; really focuses on delivering something completely different to their customers and their end users.
Daniel showed how he used "HailStorm" , which is a very important component of .NET. Now, "HailStorm" is a new breed of platform that is programmable by developers such as LiveVault. And it really is a set of end user-centric XML Web Services that includes things like authentication, notification, calendar, and things like that, that are accessible from any device, running any operating system from anywhere, using XML and SOAP. And we think this is going to revolutionize, amongst other things, the way people program this next generation of software. And its going to revolutionize the way the end users are going to experience this world of distributive computing.
So Im very excited about all the innovation thats going on around .NET. And for one last demonstration, Id like to invite Vic Vendotra (sp) back on stage to show you how Expedia, which is a travel Website, is innovating around .NET and "HailStorm" , to deliver a compelling end user experience.
MR. GUNDOTRA: Great, thank you, Sanjay. No doubt if youve been watching these demonstrations of Passport authentication and notification, youve been thinking that a flight -- or a travel agency would be a great way to utilize these .NET services. And sure enough, Expedia has done some fantastic work in utilizing the .NET services.
What youre looking at here is, once again, integration into the Windows XP shell; more than your buddy lists. You see the Expedia tab. The Expedia tab allows me to use that notification platform to be alerted about things that I care about -- my flight itinerary. Maybe Im interested in keeping track of the lowest fare between two cities. So you note there Im tracking fare. Theres a fare at the top, $254. Thats pretty low. I can click on that and go right to Expedia to go ahead and book a flight.
Now a couple of things that are interesting on this page -- youll note that Expedia is supporting Passport login, but as you might imagine, Expedia today is one of the most successful travel agencies. Theyre one of the top 10 travel agencies online or off-line in the world. And so you can imagine they have a lot of customers already. What they allow you to do is use your existing log-in and user name, and link that with Passport. So from that point onward, a log-on to Windows XP gets you right into Expedia.
In this case, Robert will go ahead and log on to Expedia using Passport. So his accounts then are linked, and he doesnt have to go through this process again.
Were going to jump ahead, for the purposes of time, and assume that Robert has created an itinerary. How could .NET help improve the experience?
Well, if you go all the way to the bottom of the page, you note that Expedia that offered a new feature. It says "notify," "change notification settings." So lets click on that, and lets see how we can change notification settings.
You note that for both legs of my flight I can change who gets notified. So Ill click "notify others," and it brings up the list of people that I care about.
Now once again, something very subtle is going on. How did Expedia know that I cared about Karen, my mom, Bob the assistant, or Chris Danglen? Did I have to go in and enter in all my friends?
Well, whats happening here is pretty amazing. We have for the first time enabled programmatic access to the buddy list -- provided that the user has given permission and consent. In this case, the user has. And so Expedia is able to go look at the persons buddy list, bring that into the act, and then allow Robert to select who gets notified.
In this case, my mom is going to pick me up from the airport, so Ill say: Why dont I notify her one hour before the flight arrives? And should the flight get late, why, Mom gets notified on her device that the plane is coming late, so shes not waiting at the airport. Note that I can also notify Bob, my assistant, a couple of hours in advance. I can also add to the calendar for Mom.
Now, a couple of fascinating things that are going on here:
How is it that Expedia is able to add an event to Moms calendar? Well, what youre seeing here is a demonstration of another one of "Hailstorm" Services, another part of .NET: programmatic access to ones calendar. So, provided that Mom has given permission -- youll note that Bob, the assistant, has not given permission for Expedia to access his calendar, but Mom has -- why, Expedia can make the entire process very seamless. It can not only let Mom know when Im coming and book that on her calendar, but it can alert her on her device if the plane happens to be an hour late.
Of course, I can also notify myself. Can we just exit out of there? I can choose on what -- how much advance warning I want to be notified. Lets say I want to be notified two hours before the flight leaves, so I dont miss my flight. And sure enough, now, I save those settings, and I can be notified.
Not only can I be notified on that device -- in this case, Roberts running on a Windows XP machine -- so on that Windows XP machine, I could get a pop-up toast that says, "Vic, your United Airlines flight will leave in two hours." In fact, there you go; theres a pop-up toast. Dont you just love demos? And click. We know that youre going to leave in a few hours.
But more importantly, .NET works across devices. So your phone there is vibrating. Can you put that up on that display? Pretend this is moms phone. Shes out shopping. Sure enough, here she gets a notification. Im not sure if you can see that. But even on that device shes notified that the plane is coming in a little bit late and she can be at the airport just in time.
So once again, a powerful demonstration how .NET can even improve successful businesses today by improving the end-user experience through these services.
MR. PARTHASARATHY: Great. Thank you, Vic. (Applause.)
So, hopefully thats given you a taste of how .NET is getting developers -- software developers fired up and, hopefully, make for a better experience for all of us in the near future.
One very important pillar of .NET is the notion of "smart devices" that deliver a really compelling experience to the people who use them. And at Microsoft, were building software that makes these devices smart about you through the use of Web Services like "Hailstorm" ; makes these devices smart about the network so that you can detect what bandwidth is available and do the right thing; building the software to make these devices smart about software and Web Services through the use of XML, for example, and also smart about other devices, using technologies like UP & P and XML.
This is a very important component of .NET, and we think it is absolutely essential to deliver a super compelling experience to the end-user.
Now, the thing thats got me really excited in the short term is Windows XP, because not only is it fundamental to the computing industry, but it is also a very important milestone for .NET. Windows XP will be the first and best "Hailstorm" endpoint by the end of this year. And Vic already talked about the Passport and notification support in Windows XP. It is also a great platform for .NET, and its something that software developers and end-users and yourselves can take advantage this calendar year.
When you move beyond the PC, were also working on a whole set of software that is available for lightweight configuration for a whole family of devices. The .NET compact frameworks really bring the programming model and the run time to these lightweight devices so that applications developers who build applications and experiences for the PC can take advantage of this capability in a family of devices, and the end-users can move seamlessly from one device to the other.
So theres a lot of very exciting things going on, and Im convinced that .NET is an incredible opportunity for the people in this audience to take the step to the next generation with their devices and with your services. And a lot of this is going to happen this year. And if I were to summarize the kinds of things that you need to focus on and bet on this year, Id reinforce the message around Windows XP; Id say take a much closer look at "Hailstorm" ; definitely bet on the .NET framework and the compact framework; and, of course, most of you are already betting on UP & P.
So I think with your help, we can make all of this happen as quickly as possible, and this year is a fundamentally important year for .NET. And thank you very much for your attention. (Applause.)