During his keynote speech at Forum 2000, Microsoft Corporation Chairman
and Chief Software Architect Bill Gates talks about the next-generation platform
called .NET. A transcript of the speech is available at the Microsoft.com Web
site. Microsoft's efforts going forward will be focused on the .NET platform.
The .NET platform will affect every piece of application code that is written
and will redefine the user interface as much as the transition from MS-DOS to
Windows did. It will make it possible to get information anytime and anywhere,
using a natural interface. A new generation of full-screen and small-screen
devices will be available to the user. The world of programming will also
change, with XML being the base protocol for this new era. In the coming years,
Microsoft will continue to channel resources toward this exciting new platform.
Bill Gates: Well, it’s exciting to finally be here and have a
chance to talk about this next generation of software that we’re building. We
had a meeting a couple months ago where we sat down and said, "Okay, what is it
that we really want to explain here?" And when I walked into the meeting they
had a slide up that said, "We have to explain CSA." And I sat down and I
thought, "What does CSA stand for?" And I thought, "Well, I’ll just play along
here. It should become clear. You know, I understand what’s going on around
here."
And so they were talking and talking and, you know, it wasn’t clear at all.
So I thought, "Well, I guess I’ll have to make a fool of myself and ask what CSA
is, because it’s clearly this thing we have to explain at this event, so I’d
better know what it is." Well, it turns out that CSA stands for Chief Software
Architect. (Laughter.) And so in a little bit I get to explain how
I’ve spent the last six months since I’ve been Chief Software Architect, and
with the shipment of Windows 2000 we really have this opportunity to focus our
efforts in a new direction and conquer some new horizons.
A lot of what you’re going to hear about today are things that we’ve been
working towards for a long time. I’d even go back to vision efforts like the
Information At Your Fingertips work that we did back in 1990. There’s a big
difference between what we’re talking about today and that vision. The
difference is that the underlying technology and the ability to actually make
all of those things concrete is now quite clear—quite clear because of the
industry progress over the last few years, quite clear because of the
investments we’ve made in basic research over the intervening years. And so what
we’re going to be talking about today is something that is very concrete for us,
even though it rolls out over a many year period.
First, let me start by talking about how we see the industry framework,
what’s really going on.
Well, we’re certainly moving to a digital world. You know, we can see this
progress month by month. You know, photos with these great digital cameras, the
ability to touch them up, put them in an album, send them around; still a lot to
do before that’s 100 percent for the way that photos are done, but we’re getting
there.
Music: the ability to have small devices that contain literally hundreds or
thousands of your songs, where you can sequence them the way you want to. In
fact, the main issue about digital music is making sure that people are willing
to pay for it, as well as being able to use it.
Video editing has been a tough challenge, because of the size and the speed
of the processor required for that application. But with the next version of
Windows we include that application and you’re starting to see great digital
cameras.
Note taking is probably one that surprises you to see on the list there.
That’s something we’ll be talking about a fair bit today. We’ve always believed
that you should have a digital device, a full-screen device with you wherever
you go, so even in an event like this one it’s our view that you’d have a
full-screen digital device, where you’re fully connected and your notes are
recognized and searchable, just like all the other material you work with.
In the world of business we talk about how transactions are done over the
Internet, but if you really dig into that and say, "Okay, what happens if the
product’s going to be late? What happens if you receive what shipped and it
actually doesn’t meet the specifications?" Today, that kind of complex business
dialogue is not done on a digital basis. It’s only the most straightforward
transaction that goes on there.
And so the idea of taking buying and selling and really matching up every
buyer with every seller and taking the richness of that relationship, including
the customer service and the unexpected events and bringing digital efficiency
to that; that’s still a horizon that has not been conquered.
The final point here is thinking about knowledge workers. Their world today
is very bifurcated. Yes, the PC has been a wonderful thing in terms of document
creation, PowerPoint presentations and spreadsheets, but as they work through
their day there’s a lot of paperwork, there’s a lot of handwritten notes,
there’s a lot of meetings that, you know, are purely analog. They can’t go back
and take a snippet of that meeting, send it around. They can’t search the
meeting to see what happened. If they want to go to a meeting and learn
something, they can’t test their knowledge in a digital fashion.
So we have an opportunity to take this vision of a digital world and apply
the magic of software to make this a reality.
But it’s not quite like the past where there will be a single device that
defines all of this. There will be many different devices. We’ll talk today
about the relative role of the small-screen devices and the full-screen devices,
but I think you’ll agree there’s a substantial role for both of those, and even
some variety within each of those categories.
And so the question of how do you take software to enable across many
devices, that’s a challenge we’ve been thinking about for the last few years.
Well, the Internet is the starting point here. The fact that it’s at critical
mass in terms of not only having Web sites, but doing business across those Web
sites is very exciting. And that is truly a global phenomenon. The simplicity of
pointing your browser at a URL, the simplicity of following a link, having a
history list, that’s a fantastic thing. And so the Internet is very, very much
in the mainstream.
But what is it today? Well, primarily it’s being able to connect up your
screen to the presentation material on any different Web site. And so in a
certain technical sense it’s a lot like taking a 3270 terminal on a network and
simply being able to connect up to many mainframes.
What you see is one site at a time. And that site has to be authored to your
particular device, the kind of screen size that you’ve got, the kind of
interaction techniques that are available there, the resolution. And so we’re
connecting things together, but we’re not using the intelligence at either end,
and we’re not creating something that takes information from multiple sites.
When you get that page of information today it’s basically read-only. In
fact, imagine yourself trying to do a product forecast or even saying you want
to buy from many potential sellers. You have to manually go to those different
sites and either try and cut and paste the information, which doesn’t work very
well, or simply write it down on a piece of paper. And then you move from that
world into your productivity applications, like Microsoft Office and you
recreate the information there. And that’s where you’re able to compare the
data, look at it graphically, and combine it with your own thinking about it.
But that is a different world. That is not the world of the browser.
So we’ve got an environment that’s read-only. It’s an environment where the
user isn’t very much in control: the idea that somebody can send you junk mail
at any time or when you’re sitting and working on something mail that’s fairly
low priority will come in and grab your attention. All the different things that
are going on in the Internet, if you want to see if something changed, that’s
basically a manual process that you’re spending your time trying to find those
things out.
There are many islands in this world. If you take your PC at home, your PC at
work, it’s a manual operation to try and move your favorites, move your files or
any of the other things around between those. If you have a PDA type device, you
have to go through the effort of deciding what subset of the information you
want to download. When you’re connected up over a low-speed link, it’s very
complex to control which e-mail or other files or notifications come down onto
your device.
So it’s up to the user to manage these islands. And when you get into issues
like group naming and security across these various islands, it’s clear that the
infrastructure is simply not rich enough.
Finally, this is an Internet where the keyboard is our primary means of
interaction. We’re still typing in commands. Over the last few decades I’m sure
you’ve all seen lots and lots of demos of handwriting, speech recognition,
visual type inferences with a camera, but the question has always been when is
somebody going to build that into a system and create a programming model so
that all the applications—and when I say applications I include all Web sites in
that. It’s a broad definition. When is somebody going to define it so those
things can declare what sort of language, what sort of verbs or actions they’re
capable of?
So you need a programming model for this natural interface. And having the
tools that let you do that and having the rich system, that’s really the
starting point for getting away from the keyboard being the only way that we
interact.
So in the world where we go beyond browsing you can think of the Internet as
more than a presentation network. It truly becomes a full platform, where you
have intelligence on servers, intelligence on clients, working on behalf of the
user.
Now what does that mean? That means that when you want to see information, if
you’re planning a new product, your device can go out to many different Web
sites and extract exactly the information that’s interesting to you. And if we
do it right, it can bring it into the view that you’re using to do your
creativity, so that it’s not just a read only screen you’ve got there, it is the
full power of the device allowing you to do your work.
When we think about knowledge workers, they’re not paid simply to click
through screens and read what’s there; their value added is taking that
information and synthesizing it. And so by bringing those two worlds together,
the world of reading, writing and annotation, we can allow them to do their job
in a different way.
Now, when we think about multiple sites and customizing the information and
combining it in the right way, obviously we’re using a protocol that goes beyond
HTML. HTML is defined purely for presentation. As you’re going to hear today,
XML is the base protocol for this new era. It is the thing that will be
exchanged between sites, between sites and clients in order to build up these
new capabilities.
We are saying that the natural interface richness will be built into this
platform, and that’s really putting a stake in the ground, because we’re going
to go out to developers and say, "Here’s how you write your applications, so
that handwriting and speech can interact naturally with that application."
We’re also saying that the islands that we’ve got out there, certainly those
can be broken down. The way to break it down is by putting out services that
work across all the different devices, moving the information around, keeping
track of which information is important and working on behalf of the user.
So that’s the new concept, the concept of something running out in the
Internet, out in the clouds, working on your behalf.
Well, XML is something that actually grew out of a document format called
SGML, but it’s really transformed itself into an essential way of exchanging
heterogeneous data. And I’m not saying that the work around XML is done. In
fact, you might say that it’s just at the beginning, because for every real
world object, whether it’s a healthcare record, a banking record, a supply chain
dialogue, around every one of those things we need rich standards. And we need
very rich software tools that can map between different schemas, data layouts,
map between one version of a schema and another version of a schema. So the very
platform itself has to embrace XML in a very deep way.
It’s exciting the progress that’s taking place around XML just even in the
last six months. We’ve got here a standard that Microsoft is very much behind,
but not just Microsoft. We’ve got IBM and many others joining in things like the
SOAP definition that explain how XML can essentially be used as a program to
program protocol, how programs can exchange arbitrary data with each other.
And that’s why we talk about the Web as a platform. You know, using XML, the
idea that you go to many different sites and pull that information together
using the intelligence of the device that becomes a reality.
And so it’s really around those rich scenarios that all this work on XML is
going on.
XML will transform productivity tools. For example, the spreadsheet will be
changed by XML. The database will be changed by XML. The programming languages
themselves will be changed. In fact, there will be language innovation in every
popular programming language around XML. So it’s a very profound change, even
more profound than the change HTML brought to the world of presentation.
So what is Microsoft doing to help move this new world forward? One of the
other questions that we had up in that meeting where they asked me to explain
what CSA was, was that I had to explain why we spend billions and billions of
dollars on R&D, and what was it, what were the big things that we’re coming out
about.
Well, this idea that we need a new platform, a platform that takes as its
center the Internet and the user and then takes the devices and services those
rather than having the devices at the center; that idea’s been emerging for a
long time. And the question is what can be done to get enough of those pieces
together to really get that to critical mass.
Well, Microsoft is announcing today that our efforts as a company are going
to be focused around this next generation platform. We call it .NET. That’s a
term you’ll hear a lot today, and it encompasses more than one thinks. It
encompasses the idea of putting rich code onto every one of these clients. It
encompasses the idea of having services across the Internet that help every one
of these clients. And then there’s a new generation of servers that can work
together providing those services that can either run inside of corporations,
can run inside an ASP or can be run by the software creators themselves in order
to allow all the users to get at that service capability.
There are some breakthrough elements that are necessary for this world. The
user interface, which we’re talking about now, as the user experience, will be a
lot richer in this environment.
In order for this to become popular, it’s going to have to really put the
user back in control. It’s going to have to deal with their concerns about too
many notifications, too much junk mail. It’s going to have to deal with their
concerns about being interrupted by things that are not relevant to them. And
perhaps more importantly it’s going to have to help them feel that their privacy
is preserved. And this idea that you’ve got all your information essentially out
in the cloud and as soon as you authenticate yourself onto these difference
devices, that clearly raises the issue of whether the architecture at the very
core is designed so that you’re the only one who controls that information. And
that’s been a key point of discussion amongst the people exactly how we define
these schemas, how do we define the protocols and user interfaces so that
privacy and security are integrated in here.
Throughout all those futuristic demos you’ve seen over the last few decades,
there was always this concept of an agent, something working on your behalf. It
wasn’t just going to individual Web sites. The agent knew what you were
interested in and it would, based on a set of rules or implicit things that it
had learned by watching you do your work, it would work on your behalf. That
concept, that actually goes back to 1945, is a very powerful concept.
Well, we now have what it takes to really build an information agent. We have
XML as an interchange standard. We have rich decision software called Bayesian
Inference Software that we can build down into the system that can track your
usage and adjusting in an automatic fashion.
.NET is a very broad thing. There is code in Windows. There’s code up on the
Internet. There’s code running in all the different devices that connect up here
that implement access to the .NET capabilities. There’s quite a spectrum of
capabilities there. You can actually get at these services with a device that
doesn’t have anything special. If you simply have a browser, you can connect up
and get to the .NET services. But it’s far richer if you have a device that
actually has the .NET code down on it.
So what does it look like diagrammatically? Well, you have the XML standards,
then you have .NET infrastructure and then people have building blocks that sit
on top of that, building blocks for things like storage, notification and
identity. And every Web site can choose optionally to participate in this by
offering up notifications. So if information changes that they think their user
might be interested in, it doesn’t just directly go in the form of emails to the
user, rather it goes to the information agent that’s working on behalf of that
user to decide what are they doing right now, what device are they using, what
priorities do they assign to information from this site that’s categorized in
this way, and do exactly the right thing on behalf of that user.
There’s a very strong analogy here between what we’re doing now and what we
did with Windows. And that is, you know, what we’re announcing today is more
analogous to the announcement of Windows than it is to our Internet Strategy Day
back in 1995. Back in 1995 we were talking about taking the world of Windows and
the world of browsing and making sure that those two things worked together,
making sure the Internet was going to be accessible to a lot of people. And that
was a very straightforward set of steps over an 18-month period that we did to
make that come true.
What we’re talking about today is far more ambitious than that. This is a new
platform. This will affect every piece of application code that gets written.
This will redefine the user interface, what you see on the screen and how you
interact, as much as the transition from DOS to Windows did. And so there’s no
Microsoft product that isn’t touched by this activity.
If you look at the capabilities that are in .NET, for almost all of them
there’s an analogy in terms of what was in the operating system that we provided
with Windows. For example, take storage. We’ve always had a file system. That’s
something that applications have used pervasively. If one application saves
something out, it’s available to the other applications.
Now that storage system was working only on the PC. And the storage system
wasn’t very rich. If you wanted to index those things or search them in a rich
fashion, you needed to go off and use something more powerful like a specialized
or general-purpose database to do that. But the idea that you had storage and
all the applications could count on that storage that was part of the Windows
platform.
The .NET platform has storage in a very analogous fashion. However, that
storage is out in the cloud; it’s not on any particular device. But the .NET
platform is incredibly intelligent about replicating that storage as appropriate
onto the different devices. It understands when you’re connected up over a
high-speed link. It understands the relevance of certain types of data,
depending on which device you’re using and what context you’re operating in.
It’s also a store that’s richer in the sense that the way it indexes things, the
way you can search those things is more powerful. And it’s actually based on
database technologies. So this is what we call the XML Store, which is one
element of this overall platform.
Also think in Windows about the clipboard, the fact that you could exchange
information between various applications. That was a key advance that was not
available in the DOS environment. Well, on the Internet today that idea of
assembling information from different sources and being able to share it in that
productivity world, that’s a very manual operation. So here we have the idea of
using XML, of gathering up the data, and integrating it together in a seamless
way.
One of the big advances in the Windows environment over the years was the
idea of that compound document, you know, object linking and embedding and all
the infrastructure that came along with that. That’s when Windows started to
really become object oriented, as we got different types of embedding and we
supported all the rich operations that third-party applications would bring in
with those embeddings.
Well, here we have the idea of the XML data in a universal canvas. This
universal canvas is the idea that you no longer leave the browser. The browser,
you’re always in the browser, even when you’re doing your creativity work. And
so we’ve talked about that as the universal canvas, and you’ll actually see our
universal canvas technology being demonstrated for the first time as part of the
presentation today.
So for every element of Windows—user interface, the APIs, the hardware
drivers that allowed it to work with all the different capabilities people
plugged into the PC—for each one of those things there’s an analogy here. But
it’s an analogy across all the different devices, and that includes the things
that go on in the clouds.
The key principle that this becomes successful by getting lots and lots, I
mean literally tens of thousands of applications that are written to it, that
principle is absolutely identical. And so it’s by creating those opportunities
and letting applications move up to a new level that this dot-net platform will
be successful.
What are these building blocks? I’ve already talked about the XML store,
which is a very central one. Identity will evolve out of the service we have
today called Passport. Notification is this idea of all the different websites
tracking things that you might be interested in and delivering them to your
agents. Calendar, not just individual calendar, but shared across many different
people; the ability to look things up, the ability to have your software always
kept up to date, those are examples of services that are completely
programmable. And so just like we did with Windows we’ll have development kits
in our tools that let people write applications, taking advantage of these
services.
We ourselves will, of course, build applications on top of these things, but
as a percentage of what gets built, that will be a fairly small portion.
I want to talk about the new user experience. When we broke down the
technology breakthroughs that were critical to .NET, we formed eight different
groups inside the company. And each of them went off and spent several months
working with the leading people in that area to decide exactly what our
architecture would look like.
The team that I chose to lead was the one defining the user experience, and
we had people from Windows and Office and Research and people with all sorts of
different views on exactly where the user interface should go.
One of the fantastic things when you step back and think about user interface
is that when you have essentially a clean sheet of paper, you can do a very rich
job of taking all the things that over the last really ten years, where the user
interface has simply been evolving and new things have been added to it, you can
anything that’s duplicative or that’s proven to be, you know, that there should
be just one simple way to do things and clean all of that up.
So having the new user interface is really a fantastic thing, but you’ve got
to start at a much higher level to justify doing that; in this case, just by
starting with the browser, starting by making it communication-centric, defining
it in such a way that all these natural interface technologies can work with the
applications that are written to this new user interface.
This user interface in a sense has to be more abstract, because the different
screen sizes that we’re working across here is incredibly broad. And the world
of the PC in any particular year we could tell you the screen resolution we were
targeting: 640x200, then 640x480, then 1024x768. You know, there was a clear
target in mind there.
Well, now when you’re going to have pagers and screen phones and TVs and
something in the car, as well as the full-screen PC device, where even there the
variety will get greater than it is today because you’ll not only have the
tablet form factor but there will be people who have an LCD that’s literally the
size of their desktop so that they get as much information viewing as possible.
So we need to abstract out the idea of how do you use that display surface.
We also need to make customization something that’s much more built in to the
environment. We also need to take the idea that the world of files and e-mail
and data, all those were really quite disparate and the commands you use to
navigate those things and work with those things were really very separate. And
if you look at the current user interface and say, "How many search commands do
you have in your PC", the answer would be literally dozens and dozens. And
sometimes it’s not even clear which one to use and the dialog that comes up is
very different there. So there’s a lot that can be done in the user experience.
The idea of accessing the information anywhere through that store has to be
defined; the idea that you can work offline and the information will be
replicated down based on knowing what kind of things you want to do while you’re
offline, without your having to get explicitly involved to think, "Okay, I’ll
download this code, this file, this e-mail," all the different kinds of
information that today you explicitly have to do manual work on.
Part of this is to create the creativity Web, the Web that is not just
reading. And you’ll find that the idea of annotation, whether it’s text
annotation, voice annotation, handwriting annotation, that’s a fundamental
capability across documents and Web sites. Your ability to create and view those
annotations, this user experience file guide will define exactly what those
things look like.
And so whether you’re using it from the keyboard or from one of the new
natural interfaces, the appearance of these applications will be quite different
than the applications we have today.
I wanted to give you a little sense of this by showing you some of the
elements that go into it, and, of course, a demo is the best way to really get a
feel for this. So I’d like to ask Jeff Rainier to come out and show us a few
examples of the natural interface element.
Jeff Rainier: Thanks, Bill. Today I’ll tell you about two of the .NET
user interface elements: Smart Tags and the type-in line.
Now, everybody knows that computers are really good at many things, but that
there are some simple things they just don’t do very well. For example, if I
type June 23rd, a computer might not know that that’s a date, or if I type 2:00
P.M., it might not know that that’s a time. And even if it did know those two
things, it wouldn’t necessarily know that times and dates are useful for things
like scheduling meetings.
But the .NET platform will know things like this. In fact, it will
automatically recognize and categorize important words and phrases while you
type them and it will turn them into smart tags. Company names, people names,
times, dates, a multitude of other things will all automatically be smart tagged
while you type.
Let me show you how this is going to work using some real live running code.
Imagine that I’ve gotten a mail message that asks me to write a report. I’d
probably start by gathering the data that I needed for the report. Now, today
that would mean remembering which database the information I needed was in,
knowing how to use that database software and probably transferring some
information into a spreadsheet to do some analysis.
But the .NET UI will make this much, much easier. It will eliminate many of
those steps.
Let me show you how.
Look carefully at this mail message, and in particular at Astro Mountain Bike
Company here. You see that dotted blue underline? .NET has placed that there,
because it automatically realized that Astro Mountain Bike Company was a company
name and turned it into a smart tag. As a result, if I move my mouse over top of
it a button will appear. And if I click that button a menu is revealed. On this
menu are a number of actions that are pertinent to Astro because it’s a company
name. So from here I can go to their home page, I can look at a financial report
on investor about the company or I can analyze their sales data. Let me do that.
You’ve seen how smart tags work in mail messages, but they’re everywhere in
the .NET platform, and they work pretty much the same way. Smart tags can also
be personalized. This way users are able to specify what words should be smart
tags, what categories they should fall into and what actions appear on that menu
that you just saw.
Here in this spreadsheet mountain bike models have been smart tagged, so I
can click on something like the MB3000 and get some more information about it.
In this case, I can go out to my corporate intranet and look at information
about this model.
But now let me show you .NET in action, recognizing smart tags.
I’ll switch to a word processor and do a little bit of typing now. You can
watch for that dotted blue underline to appear. That will mean that—there it is.
Hanson Brothers has been recognized as a smart tag and a company name, in
particular. So just like before I can get actions from this menu.
Now, one of the actions that’s worth pointing out is that I can go from here
to Hanson Brothers’ home page, but remember I never typed a URL or added a
hyperlink. This is possible because .NET noticed that companies often have home
pages and knows how to get from the name of a company out to that company’s
homepage.
Now that I’m on Hanson Brothers’ home page, you can see that there’s the
dotted blue underline here under this mountain bike, under the name of the
company again, and even under people’s names. That shows that smart tags work on
the web as well, and they work basically the same way, the same menu, the same
button and the same list of options.
But now let me shift gears and tell you about another .NET innovation.
The .NET user interface is powerful and more natural than past user
interfaces. This natural interface is based on emerging technologies like speech
recognition, natural language processing and handwriting recognition.
And one central feature of this user interface is something called the
type-in line. It’s right here. Now, from this place you can do a number of
simple things like issue commands, open documents, search the web, but the real
power of this interface applies beyond that sort of simple commanding. That’s
because dot-net is able to answer the questions that you asked and it’s able to
answer them in natural language and if you’d like it will even speak the answers
to you.
Let me show you how this works. (Typing.)
Computer Voice: Which index would you like?
Jeff Rainier: (Typing.) Okay. Checking for the latest
updates on that index.
Computer Voice: As of 9:10 A.M. the Dow industrial average is down
minus 64 at 10,433.74.
Jeff Rainier: Did you see how the computer asked me questions to
resolve ambiguity and kind of worked with me like a person might have? That’s
the sort of power and intelligence that’s built into the .NET platform.
Let me show you one more example. (Typing.)
Computer Voice: How long do you want to meet? (Typing.)
Where do you want to meet? (Typing.) Do you need to check my schedule?
(Typing.)
Jeff Rainier: Ooh, I think my typo there caused some problems. Let me
try that one more time.
Computer Voice: What would you like to do now? (Typing.) How
long do you want to meet?
Jeff Rainier: Okay, this is looking more promising. (Typing.)
Computer Voice: Where do you want to meet? (Typing.) Let me see
if you are both available at this time. Okay, I’ve scheduled an appointment with
Mark Leimberg on Friday, June 23rd at 2:00 P.M. for 30 minutes in his office.
Jeff Rainier: Okay, you’ve seen how this interface works with typing,
but this is much more natural and easier to use if you speak to your computer.
Imagine for a second using your cell phone to call in and get high priority
mail messages, maybe make dinner reservations or even check for the latest news,
all from your .NET server.
So I’ve shown you two elements of the .NET user interface today, all of which
are available with typed input, spoken input and handwritten input.
I’ve shown you smart tags, which automatically recognize and categorize words
and phrases and let you act on them.
And also the type-in line, which is just an example of the natural user
interface, a centralized place for issuing commands, asking questions and
working with your computer.
There are many more innovations in the pipeline. This is just a sample.
Thank you.
Bill Gates: Thanks, Jeff. That was great.
Obviously, natural language understanding is a very key element, and
particularly the idea of allowing third-party applications to come in and
declare exactly how they want to interact with the different utterances that are
made through speech or through that type–in line. And so it’s an API that is
very, very critical.
Well, let me move forward with our .NET work. We’re making some very exciting
assumptions about what our partners, who do hardware breakthroughs, will be
doing in parallel. We’re not assuming that the PC or the Internet network
capabilities will be standing still. And, in fact, we are dependent on a lot of
these breakthroughs. We’re assuming that broadband becomes more pervasive.
Broadband, of course, today is very prevalent in business–to–business
connectivity, but it’s going to take time for that to roll out to consumers,
particularly on a worldwide basis.
But some of the advanced capabilities here, where we use video streaming, we
have digital meetings, some of those are there to both take advantage of and
depend on those broadband advances.
We’re also very bullish on wireless, and you need to break wireless down into
several different categories. We’ve got wireless in the workplace. The buildings
at Microsoft now are wired up so that we can carry our PCs around with us as we
go to meetings or simply move around during the day and we’re connect up at
about 11 megabits wherever we go. And that kind of flexibility is very
inexpensive, and I think it will be very typical for a workplace to have that.
In the home there are some new standards emerging that are going to make very
high–speech home wireless networking quite inexpensive. And the ability to
distribute not only, you know, photos onto a simple LCD on the refrigerator or
anywhere in the house, but the ability to distribute your music, the ability
even to take the PC that might be in one room and distribute out that user
interface to any of those screens, that will be possible over this kind of
wireless network.
Now, what that means is that your photos can all be in one place, your
applications can all be in one place, and yet be available on a pervasive basis.
And those wireless networks will not have per minute charges. They’ll simply
be set up and you can use them as much as you want.
Now there will be wireless data in the wide area network. All the excitement
there, you know, the valuations, the investments relate to the idea of moving
beyond a pure voice market to a data market. Now, that data market will evolve
both small–screen and full–screen devices. The small–screen devices are
incredibly handy in terms of looking at a map, looking at your schedule, getting
high priority messages, but it’s the full screen device you’ll use as you’re
creating documents and really browsing through rich information. So we need to
make sure both of those are connected up to this wireless environment.
We’re very bullish on the idea that over the next few years this wireless
data capability will become pervasive as the third–generation wireless
infrastructure is rolled out.
We think that authentication advances will be very important to this.
Passwords are the weak link today in security systems, and so pervasive use of
smart cards, in some cases complemented by biometric identification, is a really
necessary element to make this all work.
You know, if people understood what a weak link a password is, I think they’d
worry a lot about putting more and more information into this environment.
So really knowing who the user is is a very critical element to get
established. Fortunately, the cost of those smart cards, the idea of having them
standard in a keyboard reader, that’s something that I think with our efforts
and those of our partners is certain to take place.
The PC that we’re thinking about is obviously much more powerful than what we
have today. The microphone will be a built–in capability, and so a lot of the
communications that you do will be real–time in nature. The idea of connecting
up to somebody, editing a document together, that will just be common sense.
People will wonder why it wasn’t easy to do that before.
The camera won’t be on every PC, but a high percentage will have it. And so
that’s an aspect of natural interface that the platform will support.
And PCs will have a new form factor like the tablet, but in general it will
be a lot smaller and a lot more convenient. Even that kind of desktop LCD will
be a PC form factor.
The small screen devices are also something where there will be incredible
innovation. In many ways the power of that small screen device is greater than
the power we have in the PC when we introduced Windows ten years ago. So the
kind of capabilities, whether it’s book reading, playing your music, dealing
with photos, the kind of media richness and agent type smarts that can be down
even on the small device, working on your behalf, I think they’re really going
to surprise people.
So let’s take a quick look at what we’re seeing in terms of these next
generation devices. And to kick that off I’d like to ask Brian Shafer to come
out and talk to us about what’s a phone going to look like.
Brian Shafer: Good morning, Bill. Well, good morning. Well, we all
love these myriad new devices that are coming into our lives, especially cell
phones, but they all share one weakness. They tend to be islands of technology,
especially those cell phones. Sure, they might synchronize in some rudimentary
way with a PC, sharing phone numbers and the like, but they don’t fully
interoperate as well as they could with each other or with other platforms.
The .NET environment gives us the ability to address some of these issues.
Now what I’m holding here is a new class of device, a .NET device, if you
will. Now, specifically this is a smart phone that we’re working on with our
partner Samsung and we’ll be bringing it to market sometime next year.
These devices bridge the wireless telephony world that we all know and love
with powerful computing, allowing us to actually extend the .NET environment
down into a small portable device such as this one.
So let’s take a look at what I’m talking about.
Now here you can see I have a new smart phone. Now, in this particular case,
this particular phone has never been used. It has no data on it. And it’s not
been personalized in any particular way. And so since it’s the first time use,
what I’m going to actually do is log onto this device using the Passport system
to give me access to the .NET environment.
Now when I log on, a lot of things are going to happen. First, all the
relevant information from my personal area on the .NET server is coming down to
the device, all those phone numbers, my schedules, my appointments, et cetera,
even my e–mail coming down to the device. I’m also getting my personalized
information being sent down as well.
So there you can see we’re now up and running. So the next time I turn on
this phone, this is where I’ll be, everything off and running for me. I’ll have
my contacts and appointments there. And as you can see, it’s a personalized
view. So this could just as easily be instant messaging contacts or colleagues
who are up and running at the moment, or perhaps some of my corporate e–mail or
what have you.
Now, to be clear, I’m not just browsing at some Web site at the moment. The
.NET network has actually sent down all of my information to this naked phone
wirelessly based on my preferences. So no matter whether I’m online or offline I
have immediate access to my information my way.
And since this is a real computer, from here I can actually control or
respond to a .NET application. And you’ll see some examples of that as we move
forward in our presentations today.
Now, most importantly though this is a platform so our partners and our
customers will be able to develop .NET or native applications for a phone such
as this one.
So let’s take a look at some of those native applications that are available
to me. As you can see I have some powerful PIM functionality: calendar,
contacts, my inbox, tasks, notes, et cetera. What I effectively have is wireless
outlook available to me at any time. You’ll also see that we also include
Internet Explorer on these devices. So in a traditional sense I could go and
wirelessly look at HTML or WAP–based data. But most importantly, however, smart
phones and their cousins, the Pocket PCs, their browsers will support XML,
making sure that they are full–blown participants in .NET services moving
forward.
Now, I mentioned that this phone is able to interact with other devices in
the .NET world, so let’s go ahead and set up an example of that. I’m going to go
into my calendar and pull up a new appointment. I’ll set an appointment for
lunch with Bill, say, next Monday. I’m going to pick the Pebble Beach Café. Now,
you’ll notice my preference for all the locations where I book meetings are
automatically in my phone, so I don’t have to sit there and type them all in
three characters every number. So I’ll go ahead and set the date.
And now what’s happening is the phone has sensed that an appointment has
changed, so it’s updating the .NET server. And since I’m wireless, it doesn’t
matter where I am, this happens. The .NET server then takes that information and
automatically federates it amongst all my other devices—and not just my devices.
More specifically my colleague’s Pocket PC, a wireless Pocket PC is also updated
with this appointment. Or if we switch over to my assistant’s PC, you can see
that this appointment will now come in and be synchronized all by the server,
meanwhile while I’m out running around doing my job.
So as you can see the combination of .NET services and these smart devices
helps bring to life our vision of your information anywhere, anytime on any
device.
Bill Gates: Thanks, Brian. Super.
Now let’s turn and look at the full–screen device, in particular this tablet
form factor. I’d like to ask Burt Keylie to talk to us about the work his group
is doing in this area.
Burt Keylie: Hi, Bill. Thanks.
So .NET services are going to help information flow to all sorts of devices,
and the smart phone, Microsoft smart phone software, in particular, is going to
really enable a whole class. But there’s another class of device that we think
is going to be wildly popular, and this is the device that combines the visual
qualities of a magazine with the handiness of a paper notebook and all the power
of a PC.
So what we’re going to get to talk about today and show today actually is the
actual first demonstration of what Microsoft calls our vision for the Tablet PC.
Okay, can you see this display?
And within the next year or two you’re going to see Microsoft’s partners
bringing out hardware like this. This is actually prototype hardware running
real software, including real Windows 2000.
So one thing about a Tablet PC is—we’ve looked at electronic books and you’ve
probably heard a lot about electronic books lately. They’re a type of content
that really demands a better device. And I want to zoom in on this. First of all
I’ll show you that turning pages on this device is really as simple as turning
pages in a book. So we have nothing but a book page here, and the way we turn
pages is nice and very simple.
I want to zoom in. I want to show you something about the software. And this
is what we call ClearType. When we talk about having the quality of paper, can
you believe how paper–like those fonts were?
I’ll zoom back out a little bit.
Now, the way we see it, devices, all device attempts in this class have
failed to recognize the need to match paper, and so we’re going to show some
things here today that are .NET UI constructs that actually match the
interactivity of paper.
So this is an electronic book, and I can read along and see a character.
Here’s "Baker", a character that’s introduced at this point. In order to
highlight that, remind myself of when the character was introduced, it’s simply
a matter of highlighting, tapping and it’s done. I can place a bookmark just as
simply. Oh, and I can look up a word in as simple a manner as tap on the word,
tap on lookup, I see definitions for "stretched", "stretching", et cetera. A
third tap and I’m back reading with no visual artifacts, no clutter.
So these are the kinds of qualities of paper that we really think that a
tablet PC should be able to have.
Now, one of my colleagues is a fellow named Chuck Zacker, and he’s also
obsessed with this Tablet PC idea. And his obsession goes all the way back to
the mid–70s when at Xerox PARC he worked with a fellow named Alan Kay, and they
worked on a Dynabook concept. Chuck is on our team and he suggested to me I
really ought to have a subscription to Slate Magazine. And it gives me an
opportunity to show you some .NET services that support this paper–like
experience.
So as I’m reading I can go to a bookstore. And look, this is integrated
browsing, integrated in a way that doesn’t show me stock quotes and e–mail
messages and banner ads and all these other news feeds and things. I asked to
see book sites and so I get a list of sites that can provide titles to the
Microsoft Reader.
So one of those sites is the Slate subscription site. I can say, "Yes, go
ahead and download Slate", and I get a message, the download is complete and
it’s in my library. So I’ll just go over to my library and take a look and here
it is. It showed up as the last one acquired.
Now, how do we make a book buying purchase so simple? Well, there are a few
.NET services behind this, one of which, of course, is the integrated browsing.
But the second is Passport, which manages all of the transaction aspects, so
that the purchase can be as simple as tapping and then watching the download
occur.
The third thing is a new service called a digital asset service, which
actually does digital rights management for me. In fact, it’s individualizing a
personalized copy of this book and downloading it into my library, and it
actually has my name on the title page of the book. I know it’s mine. I know
it’s authentic and I know I can read it on any of my devices.
So now reading books is not all we want to be able to do on a Tablet PC,
right? Of course, we’re going to want to check our e–mail. And to do that, we’re
going to want to use real Outlook. Well, at least some of us are. So here’s a
message from Butler Lampson. He says he’s got an attachment. I need to be able
to open attachments, don’t I?
So open this message, open the attachment and it’s a document. I recognize
it. It’s Charlton’s interactive paper document. It’s very nice and concise. But
I would like to make some comments here. I think that if he could use .NET more
in his discussion, he’d be following the corporate theme a lot better.
So now do I have to actually go get a keyboard in order to make comments on
this document? I shouldn’t have to. I should be able to simply make marks on the
page. So one of the .NET services we’re talking about here is the retrieval. So
we’re talking about i–paper as a brand. We probably could do better than
i–paper. We’re talking about .NET UI constructs here.
So I just want to be able to mark with my pen, put a little margin note, and
I’ve done my markup. It’s simple.
Now, one thing else I’d really like to be able to do, and I’d love to be able
to do this with paper is just insert some space and write a little bit more.
"Corporate tie–in". Did you notice that when I inserted the space, the
annotations hung together? That was because they’re smart enough to move as the
underlying document changes. So when we can do things like, I can be sure that
when Butler receives this back it will all make good sense. So that’s a great
way of using ink in a way that works much more like paper.
Now, something that I haven’t been able to show you yet is the way that ink
can be interactive. So to do that let’s pretend that I’m in the audience and
I’ve taken these handwritten notes about Forum 2000. And I’ve done a few
sketches. And I want to be able to work with these notes. For example, I really
thought that that smart phone was cool. I ought to be able to just select ink
like I would text and highlight it. I can do that with handwritten ink and a
tablet PC. I could apply bold, italicized, underlined, et cetera. There’s all
sorts of things we can do with handwritten ink. In fact, if I want to take a
look at my notes in a much broader way I can switch my paper to college rule and
see all of that ink shrink down and re–flow just as if it were text.
So I’ll zoom back in to give you a little bit better look. And it’s very easy
to manipulate drawings with a pen. So we’ve got the tablet into the picture
here. We’re starting to develop a story, and I want to check and see whether the
theme of .NET is coming together well. So to do that I’d like to be able to take
the word ".NET" and just search for instances in my story. So let’s see what we
find.
Now, do you see what’s going on here? It’s searching my handwritten ink and
recognizing where I’ve used those words, even though we haven’t converted my
view to text. That’s because handwriting recognition is going on in the
background.
So we work with my ink and we see lots of instances of .NET. It looks like
it’s coming together pretty well.
So one last thing, of course, I’ve got to have a headline for my story. And
so I’ve got a few attempted headlines here. I’m not very good at this. If I want
to see these headlines as text, it should be just as simple as saying,
"Recognize that" and see them as text. Now, that’s because the handwriting
recognition can go in the background, but it doesn’t need to get in the way of
using the system, of using the handwritten ink. Only when you want to see the
recognized text do you need to do that.
Okay, so that’s a quick view of the kinds of things we see a tablet PC doing
and I hope you all are as excited about having one of these as I am.
Bill Gates: Great. Stay tuned. Thanks, Brian.
Well, I’m certainly excited about getting one of those devices. There’s
really an amazing amount we’ll be able to do with note–taking and sharing
information and the whole structure of a meeting and the way that you have
handouts in meetings and you never know, you know, whether to keep those around
or if you want to change something and share that with other people in meetings.
So both note–taking and the process of meetings will be brought into a
digital world and we’ll have breakthrough software that’s part of Microsoft
Office that deals with those scenarios, which are completely new to the world of
the PC.
A key point there is that was a full powered PC. That was not just a
companion–limited device. That was a Windows 2000 device that ran all the
existing applications and the new ones that take advantage of that platform.
Well, I’ve talked about .NET being in three different places. We’ve seen some
examples of .NET software running on the client, running on the phone type
device and the new form factor PC.
We’ve also talked a lot about these services and you’re going to see quite a
few of those today.
But there’s a third tier here, which is the server. Today’s server
essentially exists in isolation. When you want to go set a server up, when you
want to monitor a server, it is essentially off by itself.
But the new vision here in .NET is that those services fit into the
three–tier environment, and so you can choose to run on these servers, which you
may have inside your corporation or you may have out in an ASP. You can run the
rich capabilities that we’re talking about here.
So you can host the e–mail there if you choose to. You’d certainly typically
in a corporation host your own documents, your rich, you know, creativity things
in the company itself. Both for security reasons and just communications
bandwidth and control type reasons that makes sense. And yet you’d want that
server working in conjunction with the cloud–based services in order to make
some of those documents available, assuming the right security things had been
set up.
So we need symmetry between the three different levels. We need to define the
semantics of security and events and mail activities and workflow around one
architecture.
Another key point that we won’t dive into in much detail today is that these
individual servers need to have incredible scale capabilities, and all the
abilities, not just scalability, reliability and manageability as well. That’s
something that Microsoft has been pouring a lot of R&D focus into, and we’ve
made incredible progress, as we announced with the world–setting benchmarks
around Windows 2000.
The key concept is to use software to allow the individual server building
blocks to be combined together. And that’s really a breakthrough for both
reliability and scale.
And so that means that even in this .NET world, as the level of transactions
is ten times greater than it’s ever been before, the servers behind the scenes
will be responding to that and able to handle that kind of load.
You want to be able to mix and match these servers we’re talking about, the
file servers, mail servers, database servers and with the things that you decide
to just do through an ASP or through the standard .NET capabilities. And there
are special things we have to do to make sure that these servers are defined for
ASPs, the idea of hosting many corporate customers on a single server, the idea
of taking a single corporate customer and automatically spreading their load
across many servers.
Now there’s a level of management capabilities there that really pushes the
state–of–the–art, goes beyond what people have needed in mainframes and other
systems in the past, and we need to make sure that we’re pushing those horizons
in the Windows environment ourselves to respond to the .NET server opportunity.
Here’s a quick roadmap. Steve Ballmer is going to go through this at more
length a little bit in his presentation at the end the day. So let me just
summarize real quickly. There are some key elements of .NET that are actually
here today, things like Passport, the XML work we’re doing. The products we ship
this year, what we call the 2000–generation of products, SQL 2000, Exchange
2000, BizTalk 2000, every one of those was designed around this belief that XML
is very core. And it had a profound effect on every one of those designs. So
there are things like that that are very here and now.
Next year a key release for us will be Windows .NET version 1. It’s not the
100 percent implementation. For example, the full net user experience comes in a
major release that will be at least two years off, because of the ambition
that’s in there.
Visual Studio 7 that we’ll be previewing this year has many key elements of
the .NET platform.
So next year you’ll see many of the services emerge, but it will be more than
two years before all the different services are out there.
And in Microsoft itself in terms of branded experiences, we have a number
that will come out next year. And then the full set of services, including
things like Office and Visual Studio are in the future timeframe.
So this plan is not about something that all is finished here and now, this
is about how we’re focusing the R&D efforts of the company and doing something
that literally is as profound as the initial graphics interface work that we did
quite some time ago.
So let me recap the different levels. There’s been .NET services. And here
the real software breakthrough work is in things like the information agent, the
ability to get the information wherever you go. There’s a schema that lets you
keep track of what you think about music and books, and organizes things in a
much richer way than has ever been done before.
Supporting offline we think is critical. Even though the Internet and all
these wireless things are going to be out there, there are many cases that
you’re going to want to be offline, you’re going to want to be able to work at
length that either paying those per minute charges or without having to assume
that the network is there.
The user experience, there’s a lot of new elements that come into this. In
some ways this is—from the consumer’s point of view this is the most profound
thing about .NET, the fact that we really for the first time have a platform
that is designed around a natural interface, that we move away from the
dichotomy of the productivity software and the browser being in two different
worlds and instead move into a world that really is the best of both, and partly
because we’ve been able to do this as a new piece of work takes everything we’ve
learned about user interface in the last 10 years and pulls that together. You
know things like when you see a table of information, there are today dozens and
dozens of ways that you manipulate that table and you filter that table and in
some ways there’s more variety there than even in the search command I brought
up as an earlier example. So coalescing that so that whenever you see a table,
whether it’s print or font, any type of information that’s done a standard way,
that’s part of the style guide that goes with this new user experience.
The richness of the device is working on behalf of the user. It’s not just
the performance we need for natural interface, which, of course, is significant,
but also things like looking at those smart tags, recognizing in the background
exactly what actions you might want to take against any kind of information
that’s up there on the screen.
The world of programming, there’s a lot of neat new things here, including
the idea of the code being updated automatically. You know, the things that make
the rich client complicated, those go away here, because the code and the state
that you’ve had to manage on the PC yourself, now the .NET services are taking
over that capability. The idea that you can write a simple application and just
have that be hosted and available to everyone, that’s really one of the founding
principles of the programming platform that’s created here.
The .NET devices, the new ones will be very, very important. I’d go as far as
saying that the market for these small screen and other devices really can’t
explode until you have things like the .NET services. And in the same way that
the PC really required one platform that allowed software developers to assume
that that platform would be consistent and on millions and millions of devices,
users expect the same thing in terms of applications in this new era and the
fact that they won’t be stuck with manually dealing with all this information.
So we think that by working with these device makers and making sure the
software platform connect up to those things, we can take and accelerate the
market for this variety of devices.
There are many of these categories, like the TV space where we’ve been a real
leader in pushing forward what can be done there and how to redefine that
experience. And we went to be involved in making sure the software connects up
to all these things. This is where standards like universal plug and play can
make a very big difference.
So what it comes down to is that after 25 years, Microsoft is still focused
on the thing that it loves and knows well, and that is building software
platforms. This is an era where what’s required of that software platform is far
more ambitious than anything we’ve done in the past. And that’s why I’m very
glad that we’ve made fundamental investments in our research group. In fact,
almost every one of these new capabilities I’m talking about benefits from work
that took many, many years and was off in that research environment being pulled
together without a particular schedule in mind, but knowing that those
capabilities would be very, very important.
So it’s very fitting that in our 25th year as we’ve always had an idea of
making these tools for more powerful, that we’re attacking a new horizon, a
horizon that will take even what the Internet is today and make that seem like
something quite limited compared to what’s possible here.
So we’re very excited about it. You could say it’s a bet-the-company thing.
We are putting our resources behind .NET because we believe in this and so our
entire strategy is defined around this platform. We are working with a lot of
partners. We’re very excited with the reaction they’ve had as we’ve gone through
this new strategy. So let me just close by having a video from one of our key
partners, Compaq, and their reaction to the work we’re doing here. Thank you
(Applause.)