 Good afternoon. Today we're going to see the second half of Alan Kaye, the part about how your brain works and why that matters. I think I may have said this on Friday, but let me remind you, all of your lives, there has been a standard for user interface that you all take for granted. So there are these windows and up at the top of the window there's a menu bar and you have a mouse or something to point with and there are these icons and double clicking means to do it and stuff like that. In every application on every operating system pretty much control S means save and control C means copy and all of those things, it's pretty amazing actually that there is a standard like that. And what's more amazing is that there are reasons for some of the details of how that worked out and so that's what we're going to learn about today. Thank you. Okay, so there are two little details, first of all that I want to point out that may have whizzed by you too fast. One of them is in the paint program that you saw today. When he was talking about the radio buttons that you can control, what that means is that you can add to the user interface, you can make new controls that are clickable by writing little chunks of small talk code. So behind every button you click on there's a program and those programs are visible to you and you can add your own. So there's a kind of a balance between programming the system and sort of using it by pointing and clicking and all that. And the other thing is like back on Friday about the second or third sentence of the talk which I'm sure whizzed by too fast is that the goal of user interface is to make a system that everybody can use without losing any of the capabilities of the machine. So it's really easy to make a user interface that does three things by having three buttons and you push them and that's that. But the challenge is to make a system that lets you do anything. And in pursuit of that idea, I want to show you these graphs. This is my two cents on user interface design and you may be wondering what these are graphs of. So I'll label the axes. This is task complexity. So how difficult is the thing you're trying to accomplish? And the y-axis is wizardliness. So how much of a wizard do you have to be in order to get that task done? And this first graph is the graph of sort of pre-Alan K, Xerox Park, that whole movement systems like Unix and Ms. Doss, in which you can't add two and two as Alan was saying without reading the manual and figuring out about what to type at the prompt and command line arguments and just all that stuff. There's a whole lot of mechanism before you can do anything. Once you've learned that, you can do a bunch of stuff, more and more complicated and the system will respond to you. And then as you want to do things that aren't already anticipated, because you have this level of expertise to begin with, you can sort of add to it gracefully. That you can write a shell script or a batch job in Doss that does a little thing and then you can start writing little programs and you can do macro languages and your editor and stuff like that and you can learn skills more and more to do the more and more complicated thing. So that's the traditional computer system. And then this picture is Mac OS before OS 10 and oops, I don't even want to write it. I'm Doss. In these systems, the genius of those systems is that there's an awful lot of stuff that you can do hardly knowing anything about computers. Anybody can walk up to the computer and just start doing which is the lesson that Alan Kay was getting from Tim Galway's tennis stuff that you just do. And then what happens? All of these things are the things that somebody anticipated you wanting to do. And then what happens is that you hit the wall and you have to read 23 volumes of inside Macintosh in order to take the next step. Those of you who are Windows users sort of know about this. Those of you who are Mac users might not because something changed. But if you look at these two graphs, it seems obvious to me that what you really want is a kind of merging of these so that you start with a low level of wizardliness as in the Mac, but then what you have to know in order to do harder tasks grows gradually instead of having that huge jump. And this is kind of the holy grail of user interface design because it does the thing that I mentioned in that sentence from the beginning of the talk where you make it so that ordinary people can use the computer, but you don't lose any of the capabilities of the raw machine. You can, as you get more and more skilled, you can do anything that the computer can do. Has this ever been achieved? Yes, twice. One is the Xerox Alto, which you saw a lot of in the video. And the other one was the MIT Lisp machine that was kind of the same idea except done in Lisp instead of Smalltalk. In both of these systems, you could walk up to it and start using it, but there's nothing that you couldn't do as you grew more and more expert. Mac OS 10 is a pretty good attempt at regaining this. And these systems were done in the 1970s, right? And not in your lifetime. And there hasn't really been anything in your lifetime that can quite do this. Mac OS 10, for those of you who are not Macintosh users, it's really Unix deep down inside and they've layered on top of that something that looks like the traditional Mac OS interface. So that's pretty good because you can start out simple. And then when there's something you wanna do that the Mac user interface doesn't do, you can open a shell window, like in the machines in the lab, and start typing in Unix commands. The trouble is that those two ways of working aren't very well integrated yet. It's getting better over time, but it's not really smooth getting from the Mac-like work to the Unix-like work. Nevertheless, it's the thing that I have at home because I can do simple things, simply, you know, you can listen to iTunes and everything, but also I feel like I have a powerful computer that I can talk to. So those of you who are interested in user interface, I would like you to try to build systems like this, that not only are simple to use, but let you do everything in a nice way. Okay, see you Wednesday.