Difference between revisions of "A concept video and Alan Kay talk at WWDC '90 (VPRI 358)"

From Viewpoints Intelligent Archive
Jump to: navigation, search
Line 6: Line 6:
 
}}
 
}}
  
<subtitle id='00:00:31'></subtitle>
+
<subtitle id='00:00:00'></subtitle>
<subtitle id='00:00:36'>19:23 Lon Chaney's brilliant characterization of Quasimoto in tobacco</subtitle>
+
<subtitle id='00:00:31'>19:23 Lon Chaney's brilliant characterization of Quasimoto in tobacco</subtitle>
<subtitle id='00:00:42'>dom played on the audience's tendency to stereotype to prejudge individuals</subtitle>
+
<subtitle id='00:00:36'>dom played on the audience's tendency to stereotype to prejudge individuals</subtitle>
<subtitle id='00:00:53'>according to their appearance rather than understand them for who they really were</subtitle>
+
<subtitle id='00:00:42'>according to their appearance rather than understand them for who they really were</subtitle>
<subtitle id='00:00:57'>it's not dictate it's been nearly a</subtitle>
+
<subtitle id='00:00:53'>it's not dictate it's been nearly a</subtitle>
<subtitle id='00:01:02'>century since the Hunchback of Notre Dame horrified audiences in the silent</subtitle>
+
<subtitle id='00:00:57'>century since the Hunchback of Notre Dame horrified audiences in the silent</subtitle>
<subtitle id='00:01:08'>movie houses but have attitudes changed much in 95 years or do we still judge</subtitle>
+
<subtitle id='00:01:02'>movie houses but have attitudes changed much in 95 years or do we still judge</subtitle>
<subtitle id='00:01:22'>far too quickly the content by the cover</subtitle>
+
<subtitle id='00:01:08'>far too quickly the content by the cover</subtitle>
<subtitle id='00:01:29'>oh here we go from here</subtitle>
+
<subtitle id='00:01:22'>oh here we go from here</subtitle>
<subtitle id='00:01:33'>show me writer's block the current</subtitle>
+
<subtitle id='00:01:29'>show me writer's block the current</subtitle>
<subtitle id='00:01:38'>project is untitled continue you may wish to review your outline explore the</subtitle>
+
<subtitle id='00:01:33'>project is untitled continue you may wish to review your outline explore the</subtitle>
<subtitle id='00:01:43'>suggestion box or a few great writers methods sometimes a short break helps to</subtitle>
+
<subtitle id='00:01:38'>suggestion box or a few great writers methods sometimes a short break helps to</subtitle>
<subtitle id='00:01:50'>stimulate ideas perhaps you'd enjoy a pleasant walk oh it's not that bad</subtitle>
+
<subtitle id='00:01:43'>stimulate ideas perhaps you'd enjoy a pleasant walk oh it's not that bad</subtitle>
<subtitle id='00:01:54'>show me the outline your next heading is</subtitle>
+
<subtitle id='00:01:50'>show me the outline your next heading is</subtitle>
<subtitle id='00:01:59'>technologies impact on attitudes toward people with disabilities the subheading</subtitle>
+
<subtitle id='00:01:54'>technologies impact on attitudes toward people with disabilities the subheading</subtitle>
<subtitle id='00:02:04'>is the catalyst for change okay I need some examples where can we go for</subtitle>
+
<subtitle id='00:01:59'>is the catalyst for change okay I need some examples where can we go for</subtitle>
<subtitle id='00:02:09'>information about how attitudes and expectations have changed toward people</subtitle>
+
<subtitle id='00:02:04'>information about how attitudes and expectations have changed toward people</subtitle>
<subtitle id='00:02:15'>with disability in the last say 15 or 20 years I have a list of consultants who</subtitle>
+
<subtitle id='00:02:09'>with disability in the last say 15 or 20 years I have a list of consultants who</subtitle>
<subtitle id='00:02:19'>provide data excerpts and related areas there is also a media index called</subtitle>
+
<subtitle id='00:02:15'>provide data excerpts and related areas there is also a media index called</subtitle>
<subtitle id='00:02:31'>capabilities enhancement good show me the index hold a list</subtitle>
+
<subtitle id='00:02:19'>capabilities enhancement good show me the index hold a list</subtitle>
<subtitle id='00:02:37'>didn't you guys just finish an entire box of cookies mom the science that</subtitle>
+
<subtitle id='00:02:31'>didn't you guys just finish an entire box of cookies mom the science that</subtitle>
<subtitle id='00:02:42'>makes you hungry besides it wasn't tired</subtitle>
+
<subtitle id='00:02:37'>makes you hungry besides it wasn't tired</subtitle>
<subtitle id='00:02:49'>voice you had some too one I had one well maybe two honey it's</subtitle>
+
<subtitle id='00:02:42'>voice you had some too one I had one well maybe two honey it's</subtitle>
<subtitle id='00:02:53'>too early for dinner I'm working against a deadline can you wait about an hour</subtitle>
+
<subtitle id='00:02:49'>too early for dinner I'm working against a deadline can you wait about an hour</subtitle>
<subtitle id='00:02:59'>maybe the lonely unappreciated</subtitle>
+
<subtitle id='00:02:53'>maybe the lonely unappreciated</subtitle>
<subtitle id='00:03:07'>scientific genius forges on despite enormous odds
+
<subtitle id='00:02:59'>scientific genius forges on despite enormous

Revision as of 20:48, 28 November 2017

19:23 Lon Chaney's brilliant characterization of Quasimoto in tobacco
dom played on the audience's tendency to stereotype to prejudge individuals
according to their appearance rather than understand them for who they really were
it's not dictate it's been nearly a
century since the Hunchback of Notre Dame horrified audiences in the silent
movie houses but have attitudes changed much in 95 years or do we still judge
far too quickly the content by the cover
oh here we go from here
show me writer's block the current
project is untitled continue you may wish to review your outline explore the
suggestion box or a few great writers methods sometimes a short break helps to
stimulate ideas perhaps you'd enjoy a pleasant walk oh it's not that bad
show me the outline your next heading is
technologies impact on attitudes toward people with disabilities the subheading
is the catalyst for change okay I need some examples where can we go for
information about how attitudes and expectations have changed toward people
with disability in the last say 15 or 20 years I have a list of consultants who
provide data excerpts and related areas there is also a media index called
capabilities enhancement good show me the index hold a list
didn't you guys just finish an entire box of cookies mom the science that
makes you hungry besides it wasn't tired
voice you had some too one I had one well maybe two honey it's
too early for dinner I'm working against a deadline can you wait about an hour
maybe the lonely unappreciated
scientific genius forges on despite enormous odds right happy 14 bye
okay so much for the hydrogen iodide one
more unit was done no way to say one day
things without an invoice is chlorine with this don't do this to me please
comb more wondrous end of adventure
trust me
show me this one
hi Cindy well hi there Cindy what's
cooking today I cooking some strawberry cake
mom's birthday a strawberry cake for mom's birthday okay first let's get our
equipment a big spoon and mixing bowl and your special measuring cup
okay the first thing to do is to put the
measuring cup on the scale
good now more in 3/4 cup of milk
that's it keep pouring
Cindy you stopped you need 1/4 cup more
here I'll show you fill it up to the yellow line okay
he closed it apart that's it keep
pouring all the way up to the yellow line good now make sure you stir the
batter until it is smooth and creamy
Cindy are you finished yet whoa did you
get all of the lumps out mm-hmm okay now
put the baking Bowl into the microwave and I'll take care of the rest I'll call
you when it's ready then we can put on the strawberries it's a bit suspicious
because because this has been going well Cindy that should just about do it I
hope you had fun making mom's birthday cake I think she'll really be surprised
good save this in the presentation folder show me the main index again
it's not doing anything good
we'll just submit the results we moved in next one no what I really should try
heating up I can't believe this
show me this one
sorry I said if you'll let my advertising deficit ride for this
quarter I promise to make it up to you in the fall stuff that's what you said last year I
know but this year I'm planning a huge promotion to get ready for the holiday I
think we can at least double our normal business for the season how much stock
would you need I'm estimating about 10,000 seized and I want to run four
weeks of full-page ads in the mail four weeks really I think we can work
something out I'll have to talk with my sales manager but yes I think we can
cover the other the food River I phoned
you up yeah nice to be back Ouisa was up here an aperitif not too
many things would you like to drink no no thank you I think we'll just see the menu thank
you baby I know it's me impressive
I didn't know you spoke French well I don't really but I understand a little
Wow I think we just discovered hydro Park as
his partner now it's and the four
Gawker just realized something and now for the hydrogen Zack don't
these halogens as you go up the periodic table don't they get volatile they were saying
never mind
gentlemen we can discuss this particular reaction tomorrow and laughs in the
meantime please review the program on halogens before it means the end of
civilization as we know it only to wild
is that right away sir good luck some partner
as we move into the 20s we begin an era
of discovery we're doing even simple things can bring great power each new
year brings the hope that even our bravest dreams may yet come true
if Quasimodo is a symbol of the last century sometimes backward ways then
people like Stephane and Cindy are symbols of the future technology is not
the only answer but it can be and is a
catalyst for change
stuff let's shut down this document is
unnamed what is your title good question
hey Einstein you got any good ideas when I should call this thing Oh what the
project I'm working on I didn't finish no I just got started
really
chapter one that's not a bad idea okay you guys let's see
that's my favorite Apple video my
favorite quote from our next speaker is the best way to predict the future is to
invent it I've got some bad news for
some of you though Alan Kay is not going to invent the future that's right that's
your job Alan's gonna help though he's
going to challenge you to forge some new links in that organic computer between
your ears please join me in welcoming Alan Kay
thanks for inviting me here tonight with
all of these projectors I usually rate a conference by how many video projectors
there are and let me get rid of that guy
looking at the number of video projectors there are here I have to come
to the conclusion the Apple must care about our developers very very much or
else John Sculley is going to give a talk tomorrow
or both so I've given talks to the
developers before and that makes it
difficult because some of my favorite things I like to show over and over and
over until people get sick of them I'm not going to show tonight I know but
what I'd like to do is to talk about the three things I've been interested in for
more than twenty years about computing
and they're how do you find what you need how do you use it once you've found
it and how do you make it into something that's closer to what you wanted those
are sort of the three questions that got us out of the antediluvian age of the
mainframe and time-sharing into what we're doing today and there's another
round of these things coming up in the future and we've talked about them in
various ways you've seen videos of the knowledge navigator and you just saw
another agent-based one but I thought one way of talking about it in
perspective is to think of what we're what we're trying to do is to extend
human beings and human beings are
inescapably technology bound in the
sense that we find it almost impossible
to deal with the world on any kind of
direct terms part of it is because our brain can't contain the universe so what
our brain contains is representations of
the universe and those representations can't be the universe itself and so
already we're at one remove as with as
are the other animals from what we like to think of as reality but we've gone
much farther than that we've put ourselves in many many degrees of remove
we put clothing on we put language on we
put lots of things on and so that everywhere we turn
technology is around except that we never think of it that way technology is
all of that stuff that wasn't around when you were born right stuff we were
born with is not technically iearnt technology languages and technology
paper and pencil aren't technology it's all that new stuff that's around so
every time we're in the process of trying to invent technology for people
we have this dilemma which is if we make
it look like stuff that's already around they'll be comforted but if it looks too
much like the stuff that's already around they won't be helped much so each
time we have to design it's like the central question that you ask in
education all the time which is when should it be easy and when should it be
hard you want to make it easy some of the time so the students won't be so
discouraged that they'll give up but every time you make something easy what
you're doing is exploiting structures that are already there so you're not
building much there but what you're doing is consolidating and then if
things are safe enough you can risk a challenge a challenge is going to be
hard in various ways and some Mendel structure is going to be built and then
you need to make it easy again what the Mac did I think is to find a way to make
some things that used to be seem to be hard easy and what we have to do in the
next few years is to find a way of getting out of the kazoo range as one of
the ways of thinking about it is in musical instrument terms most musical
instruments that are very expressive are difficult to learn how to play like the
violin the reason is is they have an incredible number of parameters that you
want to really control in order to get that expression out the violin has this
learning curve that is sort of like this you have to climb up a thousand foot
cliff over a period of two years before you get to do anything then you start
progressing in various stages we've done in the Mac is more kazoo like
taking something that people can learn to do basic operations within a few
seconds and with an enormous amount more
difficulty they can actually create things themselves so we have this as
long as people stay in a very simple level on the Mac everything is fine but
then we have these discontinuities of pulling them up to all of the things
that the computer can really do so that the the context one way of thinking
about it is in terms of these extensions of humans and the one we always think of
are things like screwdrivers and wheels less often we think of tools as language
tools as mathematics and I like to think
of all of these things as extension of the grasp the M word for me is
manipulation on these things even for
things like mathematics mathematics is a way of taking things that are too abstract to deal with directly make them
into little symbols bring them down no matter how big it is or how small it is
we can make it into something that is roughly the same size and we can manipulate them in a way that is almost
impossible to do in the in the real world so the M word for the tool
extensions I think of as manipulation now we have another way of extending
ourselves over the last several hundred thousand years it's a little more subtle we don't often think of it and that's by
using agents and an agent is an entity that is going to be able to take on some
of our goals structure so one of the
we've used horses as agents we use
sometimes dogs as agents the puppy will go out and bring the paper in most of
the agents that we've used throughout history are us humans and we must like
to do that we're social creatures we
have a strong propensity to want to take
on other people's goals and we also have propensity for trying to get other people to take on our goals and human
society has built up at that and as Lewis Mumford said he wrote a great B
was actually sort of an architectural critic but he also wrote more generally
about the plight of humans and he wrote a book called techniques and civilization which he called these
structures like the structure that we have out here tonight mega-machines said
for most of human history most of the
structures that most of the machines that humans have created have other
humans as moving parts so we make cities we make cultures we have hunting groups
we have all different kinds of things and these are a microcosm of the general
human situation of course one of the useful thing about agents is that they
can use a tool on your behalf you don't have to be around when they're using the
tool and what's even better about agents
is that they can get other agents to do things so agents can proliferate your
goals in a way that tools are not set up to do and the m-word here I use as
management so manipulate tools we manage agents
I think of tools is something that we look at and manipulate and agents are
something that look at us and we manage them it was a very different way of
dealing them but they are the two main ways that we've extended ourselves over
the years and one of the biggest problems when computers came out is that
the mainframe didn't look like either mainframe was out of human scale and
things that are out of human scale we have mechanisms in our brain that treat
them religiously so so when it's out of human scale we
start making up myths about it and there are priests and all the paraphernalia
that have gone along with mainstream's over the years and when people started
thinking about in the late 50s or so they started wondering both one group of
people started thinking about making things into tools and another group started thinking about making them into
agents both of these ideas go back to maybe 1957 or 58 the first really good
interactive debugger was was done at
Lincoln labs around 1957 the sage air defense system was done in the mid 50's
the first pointing device called the light gun was used back then and
McCarthy around 1958 wrote a paper about
the advice called the advice taker and in this paper McCarthy is one of the
founders of AI like this is why he got into AI said it is quite obvious that in
the near future unfortunately John is still alive because this hasn't happened yet they
said see how optimistic everyone one was back then to him it was obvious he said
in the near future that we will soon be embedded in the midst of an information utility that is
as dense and as one-for-one as our power and light utilities and he realized
right away that presented with a wealth
of such resources that there'd be no
possible way you could deal with these things directly and so he said we have
to have something like that I'm calling an advice taker which is an artificial
intelligence whose job it is to try and take on our goal structures and work on
them autonomously and the way we will deal with it is we'll give it advice in other words we'll manage it what won't
program it we'll manage it and so this started off a very long-standing it's
gone on for many many years now the latest most interesting thing like
what John McCarthy wanted to do is a project called psych which is a model of
human common-sense done at MCC by Doug Lennon if you're interested in I refer
you to that work he's also at Stanford and he's just written a pretty good book
about it and this goes all the way back to McCarthy's original ideas on this a
very hard problem but McCarthy's insight was very strong because we are going to
be embedded in the midst of an information utility it's happening
willy-nilly amt AT&T could have done it after the divestiture but they were
frightened of the idea somebody told them they had a network they said
network we thought we had a telephone
and they fired the guy they had originally gotten in to do this project
called baby Bell which was going to be a pervasive network in the early 80s that
people could write applications to but the point is that we're just now
starting to go into a change as large I believe as the one from the mainframes
to what you're doing today and the question is how frightening is it
actually going to be well I got a big
surprise I this is the first personal computer I did it was called the Flex machine must be a critic
it's called the call to flex machine and
I did it inspired by the work of Doug Engelbart over here at SR I great guy
this is one of the great things about our business is that we've compressed to
400 years of ordinary history of Technology into 40 so all of these great
people who have these original ideas are still alive and we can tell them that we
know giving a testimonial to somebody after they're dead really stinks but
it's wonderful that these people who are
real heroes because they did this stuff when it was really hard we think it's
hard now but it's not even not even close to what it was like back then and
I think of him as the actual father of personal computing he didn't do the
first personal computer was done at Lincoln labs in in 1962 but he was the
guy who thought about the users relationship to the machine in the way
we think of today with with personal computing I think that's the most important part of it so I got really
excited and of course the the main bug and angle bart's thing is he tried to do
it on time sharing and you don't have enough cycles to do user interface the
way it needs to be done and so it was just getting this is 1967 or so and the
chip general instruments I think it was a company that no longer is with us had
just come out with a marvelous chip that have had 512 bits on it 512 bit ROM and
you know how we went to the moon the guy's ever seen anything called core
rope way they program computers with
read-only memory before then as they had magnetic cores which are about this big
and they were magnetized and you program programmed them by stringing wire
through them so each core would have as many wires as you could string through
it and each wire was a sense wire and so
the computer that the astronauts went to the moon on was a
program by a tangle of wire of about two cubic feet that was held onboard of that
spacecraft so 512-bit rom was a big was
a big deal cement we could do micro coating in a way that would not completely drive us crazy but the
problem with this mission with this approach and I think the approach of this middle way of going about it is
that angle Bart's user interface was too vile in like if you're willing to spend
many many hours getting expert at it you could do truly amazing things and so
there's a there's a real discontinuity and in 1968 I saw a terrific system done
at Rand which did hand character recognition and that changed my whole
notion about machines because Engelbart's way of thinking about it was
that the mainframe is sort of like a railroad and somebody needs to be Henry
Ford we don't want I be M or these big
companies telling us what we can do with a computer everybody needs their own personal vehicle and that was a very
powerful metaphor back then but the
thing that struck me when I saw the Grail system was that the computer is
much more like paper it's more like dynamic paper and that changes every
relationship because on a car we wait until people are 18 or so until they
learned how to drive which is really ridiculous when you think of it that's the most dangerous period to learn how
to drive 10 year ten-year-old kid is
much more sensible
so this idea that if if the thing is media if it's like paper than it should
extend in the world of childhood and it's a completely different relationship
it's an intimate relationship and so we wind up with these neat slides that
Larry Tesler did a couple years ago which is a way of characterizing these
three major ways and you can think of it as like the the institutional the
mainframe computer is sort of like the Ptolemaic system of astronomy and the
middle one is sort of like Newtonian physics and the the one on the right
hand side is maybe the theory of relativity or something modern the
important idea that these are huge they are not progressive changes that are
just about computers getting smaller they're actually changes in point of
view big changes in the relationship of the user to the machine I'll just give
you one example if you take the the mainframe three to seven a glass
teletype screens way of doing things and
that extends to the IBM PC because the IBM PC was was sort of a way of doing a
small mainframe without adding any new insights into how you were to interact
with it the basic idea of user interface on these machines is to think of it as
access to function machine has function
their function keys control keys and
what we want to do in the user interface is do access to function a lot of people who are trying to fit ms-dos
applications to ms windows are simply mapping function keys into pulldown
menus so they think of it as access to function now it's not with what the Mac
in this middle category is about at all what the Mac is about is making the
users aware of what the possibilities are it's number one task is to gently teach
you all the things that it can do and make you aware each time of what can be
done next and putting things into pulldown menus as a primary strategy is
a terrible one when I see a Mac application that has no visible menus I
say uh-oh this thing probably ran on an IBM PC at some point and they're just
trying to put Bearnaise sauce on the hotdog but you have to do more you have
to change the users relationship to the system and realize that your major task
is to have the users learn as they go along and just as that is a such a large
revolution that most of the people who are trying to imitate it don't understand it we're just starting on the
next revolution which is going to be equally cataclysmic because the computer
that goes wherever we are will probably not even have an on/off switch it's not
going to be a standalone laptop it almost certainly will be hooked into
digital cellular it will not just be your phone but it will be constantly
trickling down information by means of
agents so that you will rarely have to
do a proactive thing on the computer you will have a kind of panorama of the
up-to-date resources that you need as you as you go along so this change from
reactive my thesis in 1969 it was about the Flex machine I call it the reactive
engine the Mac is a reactive engine but
what we're going to have in the next few years is a proactive engine that's a
proactive engine that's going to be embedded in a pervasive network not like
local area net but ones in which we are
going to get resources not in a computer store but somebody in Timbuktu is going
to write us an application they don't know about us but they're going to write
a component that is exactly what we want and our agent is going to find it for us
and it better not be in Sanskrit when it shows up so we have this problem
how do we find things right now we find
them by going to a store or that's usually on a floppy sometimes on a local
area net how do we how do we make use of those things once we found them and how
do we make them more into the thing that we actually wanted those are the three
questions that I want to ask over and over because I think these are the driving questions for the next 10 years
and that the major difference is that we're asking those questions now in the
Macintosh a few years from now we're going to have to start seriously asking
them about an entirely new way of doing computing so these are a couple of
Larry's examples which I think are particularly nice people worried about
response time on the mainframe 3090
today typical 3090 in a public utilities
that I'm familiar with you get point zero five MIT's
per user has lots that you know it's
about a 30 machines but there are 450 terminals on it and so you worry about
what they worry about when they do software on it is what they call path length because anybody in this room ever
heard the expression path link right I
rest my case path length is all a talk at about in
companies like Arthur Andersen and IBM but path length is how many millions of
instructions have to be executed by the mainframe before you get a response back
to the terminal right we don't worry
about that instead what we're in is a horsepower race most of you here are too
young to remember the 50s this is before gas the gas Wars the 50s we had these
great old dodges with 450 horsepower the
got about 6 miles to the gallon and they made a lot of noise you could you could
lay a strip of rubber a block long and these things that's where we are right
now everybody is sort of thrusting around with a number of MIPS that they
have
but believe me it's irrelevant totally
irrelevant because all we're going to we're worried about five and ten years
from now is access we're gonna have tons
of MIPS 50 to 100 myths in 1995 easy
much more than that actually so it's we're going to be drowned in MIPS
we won't know what to do with the mips and in fact the mips are going to
disappear from our view just like path length is something that we no longer
think about we're going to worry about can we find what we need out of the
trillion objects or more that we're connected to dynamically can we find it
integrate information what is something that is closer to home we don't on a
mainframe the Mac does it by cutting and pasting and I think everybody believes
that what we need is dynamic linking of various kinds system seven has a way of
doing dynamic linking but dynamic linking is more than just passing
information for might went from one place to another philosophically dynamic
linking is much more important dynamic linking means I have more dimensions in
the computer than I ever have in my information space so you have this
wonderful wonderful thing you can do
so if you give me two dimensions and I make a spot here in a spot here I've
generated the idea of distance if you give me one more dimension I can always
get rid of the distance and the computer
is that thing that always has one more dimension than any dimension of data that we have so one way of thinking
about linking is in the classical way of thinking about linking but a stronger
ways to thinking of it is what you're trying to do is get a higher dimensional
space on the data that people are interested in then the data has itself
and if you can do that then you can get all of the relevant stuff seem to be in
the same place critical insight first had by Engelbart feel of interaction
feels like editing on a 3270 or an IBM PC layout on the Mac you're moving
around 2d things Larry says
orchestration but I like to use the word conducting because what we're going to
be manipulating on the in this next
revolution is going to be active proactive objects not passive ones issue
commands again think of Institutional well you have to remember and type you
know there are all of these SOP manuals I just had this amusing experience now
was of spending thirty five minutes trying to take a Mac portable out of
Apple
and I had already signed for it in one
place but nobody had thought to give the guards a Mac with a link into the
database that happened to know that I'd already signed for it and we don't use
badges down in now we don't use no stinking badges down in down in Los
Angeles so in fact nobody knew that I was kosher
and I took a very very long time to get the thing but I'm anybody who'd like to
steal a Mac portable I can tell you it can be done in 35 minutes so this
progression is coming from remembering type seeing point on the Mac visual and
then ask and tell and gesture going from
institutional personal to intimate group
where is big I think this is probably
one of the topics of conversation developers are starting to bitch at
Apple about servers and networks keep on
now because you have to realize that we
have a symbiotic relationship with you you are making our company by providing
the content that runs on our machines we're trying to help by doing some of
the research but in order for us all to get into this third phase and not leave
it up to somebody like the Japanese to do we have to be willing to turn the
corner at the same time and so the more the developers agitate for support for
getting into this third wave this third paradigm of computing the more easy it
is for Apple to decide to do it works both ways
now here's an interesting one
the first thing probably is foreign to you but it's what goes on in the other
world out there that world slightly to
the east of the San Andreas Fault and
what happens is companies like Arthur Andersen get hired by a public utility
as an example of to a billing program they sit down and they they have these
design tools and they figure hmm this
program is going to take about 1.6 million lines of COBOL to do this is an
actual example now I can't tell you that I'm on Arthur Andersen's Advisory Board
so I get to see stuff like this 1.6
million lines of COBOL and we'll take about 250 people three years to do and
that will be twenty two million dollars please okay and they do this all the
time their gross is about 1.5 billion an
enormous large number of that comes from these kinds of jobs 30 90 mainframe 450
terminals got to have a good response time and all that stuff it's
unbelievable what they do and they use these case tools and case tools are an
orthotic brace for hopelessly crippled patient
and they come up with these custom applications now in the this middle
personal area the Mac sort of acts like
it's object-oriented on the outside and a little bit less object great on the
inside but we're all supposed to be thinking object-oriented it's a whole different way of doing things and just
to give you an example because it the
Arthur people interest in object-oriented stuff and I said well instead of doing this thing with 1.6
million lines of COBOL why don't you try and convince the public utility to try
doing at an object-oriented form let's see what happens so they did and they
had some people who've been doing object-oriented programming for five years at Arthur and now the problem was
there wasn't any object-oriented system on the mainframe so they had to build one
so they prototyped it in small talk and then on the mainframe they wrote an
object-oriented environment using pl1 macros
and implemented this billing system now
here's the interesting thing a year and a half later they were done they did it
with 30 people and the code size was 110
thousand lines of pl-1 code counting the code they had to write for the
environment so that's a factor of about 14 and a half reduction in code size a
year less and about a factor of 8 less
people they were able to certify the system in a month instead of a year
because they're able to make changes and additions and fix bugs and stuff much
more quickly and the this project is now
being written up as a case study and this is a musing project to me because
it is simultaneously the smallest mainframe program that has this
functionality and the largest object-oriented program that has ever
been written so anything that's over an
order of magnitude should catch our attention as a way of dealing with
things and the thing that shocked me about this was not that they got some
improvement in code size but the fact that the improvement was greater at that
size of code basically probably says something really ugly about COBOL
maybe then instead of something good about object learning program but I was a gas because I've seen typical factors
of ten improvements on what I think of
as large programs but are very small by this scale but the idea of having it go
actually up to almost a factor of 15 on a job this size was shocking and we're
now getting it at this position where we can't afford not to do object-oriented
programs on the machine we dearly love namely the Mac we have to do it and this
is not a plea for Apple events but it's just to get you to realize that what Apple events are about is to try and
find an object-oriented protocol for things that are big and ugly inside but
are nonetheless going to have to be treated as objects in order to make
progression as far as integration is concerned so now the important thing is
if you take a look at the right-hand panel there what we see is not generic
tools the generic tool is like a spreadsheet like a desktop publishing
system we can't afford to have those anymore guys we cannot afford to have
one company like lecture set try and do
all the tools you need to do to do desktop publishing you can't do is like
lotuses fail the temp with jazz you just
can't build in all of those tools what you really want to do when you do a system like that is make an operating
system for doing desktop publishing it's a finder for desktop publishing you want
you can build in a few tools but you should let fourth party developers build
in those extra fancy tools in the toolbox
think of what it actually means you know the person who comes up with the best
one of these is always going to get bought that's the operating system part of the
thing but you can spread the risk and why isn't the functionality by getting
other people to develop tools for yourself this is why you have to go object oriented and you don't want to go
object oriented in the way that small talk went many years ago small talk is almost 20 years old now it's a middle
kind of object-oriented system you want to go object-oriented in the way on the
right which is towards components and
let's think of what the destiny of a component actually is well it's to me if
you move a piece of data from one place to another you're doing all sorts of
awful things because you're giving the receiving end permission to zero out any
of the fields data is quite unprotected
you're requiring the receiving end to write a lot of code to understand the
data and use the data and if you ever change the format of the data you're
requiring the receiving end to be able to take on transmitted changes of those
forms is really ugly it's a terrible way of doing things if you move an object to
classical object from one place to the other all the important code that knows
about the internal formats and stuff goes with it this is the promise of
object-oriented programming but you still have to write code it's receiving it and in order for that object to be a
component it has to adhere to some sort of standard protocol that's what Apple
events is supposed to be about but I think you can see that that is not going to last in the world of pervasive
networking right it's so hard no the
joke is that the only people smart enough to do a standard or too dumb to do a good one
so the idea that we can go into the world of pervasive networking with
upwards more than a million applications hundreds of millions of things that are
going to be transmitted around and have them adhere all to the same protocol as
farcical so what do we have to do well these components have to be self
configuring they have to be things that when they are sent to a receiver they
can configure themselves so they may
have a completely different protocol than the receiver can do but the
receiver and the sender have to be able to work out what the protocol is going
to be and that means that the components have to be much more self describing
even than objects are this is a real challenge it has not been done
successfully at the end of this talk I'm going to show you a couple of examples
of some experiments in this because I think it's a really interesting way of
thinking about the future okay and
finally what's the key to all this stuff well if you ask somebody for a
screwdriver and they just give you this you would get very angry they say what's
wrong you know I'm giving you a screwdriver this is a mainframe this is
the functional part of it what are you complaining about you say well no I want to use their interface
because if I don't do that I'm not going to have a tool now when I was making
this slide I looked at this and it occurred to me that this was the dumbest
design for a screwdriver that I'd ever so I'd never looked at it before I was
thinking that wow the mechanical advantage is the ratio of the diameter
of the handle to the diameter of the shaft that's small I get the most
purchase on it by grabbing it like this but I do it like this it slides off the
screw if I hold it the way it wants me to do I get very little leverage as I
started thinking what should a screwdriver look like what should it
look like a ball does anybody ever seen
a screwdriver like that yeah somebody said this is it now what's interesting I
have a book from Diderot encyclopedia which is published in France in the
1700s and there are screwdrivers in there that look exactly like the ones we
buy in Sears today so this is the ms-dos
of screwdrivers
but the moral of the story is that screwdrivers were made like this for
literally hundreds of years hundreds of years and nobody thought gee it should
look more like a ball until recently and that's what we have to always be looking
at just because something has been around for a long time just because see
has been around for a long time what you
want to ask is this thing an old kind of tools is getting a new kind of tool
ok so user interface is the key here and
the important idea in the user interface is that you can change the relationship
of the user to his knowledge by giving them a different kind of representation
system to think about it in terms of that is a key notion it is incredibly
difficult to deal with numbers in terms
of Roman numerals I was just telling somebody today only the only the the
nerds in 60 BC could multiply numbers together right there in any population
5% of the people are natural-born nerds for whatever it is we're all in this
room together but the other 95% have
other more reasonable more balanced
pursuits so the way of getting them to
do multiplication two is to come up with Arabic notation that has a simple
algorithm and then everybody can learn how to do it and if you want to
communicate with an animal then come up with a representation system that will
link what you want to communicate with what the animal can deal with this is an
example of a chimpanzee doing a symbolic
language in terms of icons that work quite well some years ago so that's what
we want to get interested in so let's just take a look at a couple of examples
here that I think are important to consider and the first one is how do we
find our resources today well generally
we go into a store sometimes we get it on the network but we don't have an
interesting way of finding things today how do we make use of what we found well
we have a user interface that seems to work pretty well let me give you an
example
so this is a 22 month old little girl
and her her mother is my accountant and
both their parents when this was taken worked at home each of them had a
Macintosh and when I found out the
little girl was interested in computers I gave her an Apple to which she rejected this is about 1985 and I
originally used this this video to try and convince Apple that they should put
a hard disk in every machine so I want
to warn you that she's this is not a first time user you're looking at she's so don't be impressed here she's been
using the Mac already for about six months now even though this interface
was originally developed with children in mind it was still a little startling
to see a 22 months old use it like this
but of course why shouldn't she be able to use visible menus and macpaint that
seems reasonable enough so she starts doing things and I said all right I
believe this this is not too impressive but what happened next really amazed me
she wants to get a clean sheet of paper so she goes up to the clothes box of the
window and she saves her old drawing
using the pop-up and then she goes to the pulldown to get a new one
and she's off and rolling again
and this was sewing that doesn't make
you want to buy a Mac is it this is but
that's what's great about children you can make them you don't have to buy them
so this was so intriguing that we took
about another nine hours of her doing various things on the Mac and we
discovered that she was about 70% literate in the Mac user interface so
about she could even start up a really hard application like PageMaker she
could make some marks in it she could print the marks out she could save him
way get him back about 70% of the things you expect from one Mac app to another
she was all it was already part of her vocabulary at age twenty two months the mouse for
her was about the size of a brick but because of it it was actually more
stable than a pen she couldn't really use crayons yet but she could use the
mouse in a in a sensible way so our
solution to the the ax how do you use it once you've found it is that we want the
Mac applications to be similar so that when you learn one you've learned 70% of
the next one every time we do that we're actually helping not just ourselves but
we're helping our colleague developers because you guys are really colleagues you aren't competitors every time the
synergy goes together especially when you start doing components for each
other it'll be much more something where everybody will be much more of a win-win
situation because every time somebody does something that can act as a
repository for other things everybody gets to implement towards it so now in
this world how do we make it more like what we'd like it that is really hard
hypercard we can go in and look at a script and move a button around but all
the applications you guys are doing are not that way you ever opened the hood of
a Cadillac if you wanted to find the
carburetor you wouldn't even know where to look for it even if it had one it
can't fire off one cylinder without energizing about a hundred thousand
transistors now there's nothing like a Model T and that's what it's like if the
users are allowed to pop the hood of your applications there's very little that they can do to customize it and yet
every user that you have within the first month of using your tools has
ideas about the way it should actually be and you give them something like an
application written and HyperCard you can watch them making little changes
maybe one or two changes a week is all they do but after a few months they've
got it much more like the way they would like it to be in order to get ahead
you're going to have to start thinking about making your applications that way
because that will give you the possibility of doing something like this
so this is a an application like Mack
draw this one you might only spend 99
bucks for at egghead but in fact this
one this movie was taken in 1975 and
this application not the drawing here but the application was designed and
implemented by a twelve-year-old child so this is an example of end-user
programming that this is almost impossible to do in HyperCard because
there no she's not using pre-done graphics primitives here she did the graphics programming herself as well and
the entire amount of code she had to write for this was about 50 lines of
code about one page of code to do this
application this horrifies college professors when i suggest they do this
as a term project for their beginning programming class because it's too hard in pascal but this is the kind of thing
that when you this is the kind of thing
that when you think of the system ahead of time as being something that the end
user is going to do more with and just twitch parameters you've said then
you'll design it in a different way so
what you'd like to see is even if you've got a Cadillac down there and most of
you guys have Ferraris written in things
much worse than C screaming machine code
even if you've got all that stuff down there what you should start thinking about doing is give the user a Model T
version of it to look at when they pop the hood there's a schematic version of
what you have optimized down below and let them change some of those things
it'll change their entire way of dealing with the Machine and thinking about you
okay now
what about agents similar to the
screwdriver if you want functionality with an agent you get one without a head
so you need language and context to go along with it and finally you get an
agent who can actually do something for you and the important thing remember is
that the agent is watching you you're not watching it so much anymore it's watching you and you want it to track
your goals in an extremely high-resolution way I thought for quite
a while and what can I show you that will illustrate an agent track and goals
and I found an agent done at MIT that I think illustrates this idea here the
computer is playing the harpsichord
Oh
you
well that's impressive but of course the
flute player didn't make any mistakes and that ain't the way it really goes
how did that work well the computer had a model of the whole set of goals to be
accomplished including what it was supposed to do and
what the human was trying to accomplish it was tracking both of them and making
some judgments about what the what to get whether the guy was playing expressively and so forth but you'd
really like this thing to be extremely robust in terms of errors so here's an
example of that same flute player now playing much more like an amateur or the
way we would be actually dealing with this situation
you
so you can imagine you can imagine the computer say what is this guy doing you
think about what was going on there it's fairly sophisticated because it doesn't
know whether he's playing expressively or he's made a mistake it doesn't know
where he's going to go to to pick up again so it has to kind of noodle around
be looking pattern-matching ahead in the
immediate space of where they were trying to figure out when the guy is getting back on the track again that's
precisely what our agent based software is going to have to do this is one of
the first tasks the interesting thing about agents is they don't have to be
terribly smart this one is not terribly smart and it works quite well one of the
first agents I designed is one that simply stayed up all night and found you
the newspaper you'd most like to read next morning and it did it by looking at
12 different databases spending hours sifting through things and when it found
something that looked interesting it had a video disc with 45,000 pictures of
famous people on it so if Mitterrand was mentioned in an article would find a
picture of Mitterrand and if another one had 37,000 maps on it so if Paris was
mentioned it could find you a map of Paris you know would do the kinds of things people do and they gather
newspaper articles and would present it to you as a laid out thing next morning
the headline might say new fighting in Afghanistan or it might say your three
o'clock meeting was cancelled today because one of the news sources that went after was your own electronic mail
so something important to come in at night the agent would recognize oh this
is important I'd better make it a headline this is one of the hundred most interesting things I found tonight you
can imagine a sidebar saying your children slept well last night right so
the idea is that every time a technology comes along it redefines news and the
major thing about agents is not how smart they are this is why in some sense
these futuristic videos we do at Apple are misleading because they always show
these incredibly smart agents it's what what we call the Beethoven complex
in AI which is the belief by most AI funders that you have to do something
much better than a human before it's interesting whereas in truth we can't
even do a decent cat yet so the
important thing is to realize that it is not the intelligence of the agent that
is making it so useful but its ability to act autonomously and the places where
it can best act autonomously are in information retrieval over enormous Li
large possibilities possibilities that are so large you would never be able to
do them by hand or ever want to and so I believe that the first agents that are
going to be commercially viable are going to be all of that kind they won't
have a guy with a bowtie they won't need
a guy with a bowtie you know eventually at some point when the agent gets smart
enough to start making you think anthropomorphic thoughts you're going to
have to do something to let the user
understand at what level of intelligence this thing is operating at so you will
have something like a cartoon character but initially the most important idea is
that agents can do things for you while you're somewhere else it's taken an
amazing number of decades to do the simplest agent that anybody ever thought
of and that's the one that automatically downloads your mail onto your hard disk
while you're doing other things it's
unbelievable to me the first good mail system I ever used fifteen years ago did
that an app this is sort of an apple problem in a sense is that the the
people who did Apple link refused to admit that most Mac's have hard disks on
them and because of that they make you wait for the modem and wait for the
modem you don't have to wait for the modem an agent can download the stuff
and have it ready to go and it can even do some of the reading of it while you're doing why don't one of you guys
do one of those things in credit you know because you can do agents now so
start doing it we need them the only way we can get better on this stuff is to
have a lot of things to you and to criticize it's the most important
aspect so this is sort of an old farts
talk I realize I'm working on my old farts merit badge but the way we make
progress here is by trying to go for the
good stuff trying to find a romantic ideal and realizing and having faith that the
money will come by doing something good that's how the Mack got there in the
first place the Mack was a romantic ideal of trying to change people's
relationship with the computer now we're all making money on it but if we just
set out to do money we would have done another ms-dos clone like Compaq does
the same thing is true for this stuff we can actually push into this new era and
be one of the leaders for this new way
of proactive computing and we can do it
starting now on the Macintosh with your help and as always the strongest weapon we
have to explore a strange new world like this is the one between our ears providing us loaded thank you very much
thank you