Difference between revisions of "Extracting Energy from the Turing Tarpit (2012)"
From Viewpoints Intelligent Archive
								
												
				 (Created page with "{{#evt: service=youtubeIA |id=Vt8jyPqsmxE |alignment=left |autoresize=false }}")  | 
				|||
| Line 3: | Line 3: | ||
|id=Vt8jyPqsmxE  | |id=Vt8jyPqsmxE  | ||
|alignment=left  | |alignment=left  | ||
| − | |autoresize=  | + | |autoresize=true  | 
}}  | }}  | ||
| + | |||
| + | <subtitle id="0:0:18">about</subtitle>  | ||
| + | |||
| + | <subtitle id="0:0:21"> two minutes to set this up</subtitle>  | ||
| + | |||
| + | <subtitle id="0:0:24"> okay  now is it I</subtitle>  | ||
| + | |||
| + | <subtitle id="0:0:27"> love that we are the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:0:30"> testers  for these microphones so I'd like</subtitle>  | ||
| + | |||
| + | <subtitle id="0:0:33">the AV people to turn off the video  there take</subtitle>  | ||
| + | |||
| + | <subtitle id="0:0:36"> take me about one minute to</subtitle>  | ||
| + | |||
| + | <subtitle id="0:0:39">  set things up here</subtitle>  | ||
| + | |||
| + | <subtitle id="0:0:42"></subtitle>  | ||
| + | |||
| + | <subtitle id="0:0:45"> because this is  actually in the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:0:48"> nature of a pep talk  and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:0:51"></subtitle>  | ||
| + | |||
| + | <subtitle id="0:0:54"> it's an optimistic</subtitle>  | ||
| + | |||
| + | <subtitle id="0:0:57"> pep talk about</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:0">  about software and it's based</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:3"> on the  work of many people</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:6"> here I should  mention that</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:9"></subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:12"> many of my heroes are</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:15"> in  this room and not just the people</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:18"> who  got the Turing Awards but some</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:21">colleagues I've worked with over the  years are</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:24"> my heroes I think</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:27"> we wind up</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:30">  making Ecology's when we're</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:33">trying to do things this is sometimes  been</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:36"> been mentioned and these</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:39"> ecologies  are critical</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:42"> because they actually  require a wide variety</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:45"> of different  talents I've always felt that</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:48"> Turing  exemplified</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:51"> a wide variety of talents</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:54">  inside himself just pretty darn amazing</subtitle>  | ||
| + | |||
| + | <subtitle id="0:1:57">  I</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:0"> probably forgot something but okay  let's let's</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:3"> start here</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:6"> so this pep</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:9"> talk  is about the Turing tarpit</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:12"> and what we  might do with it and about</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:15"> it and I</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:18">don't know where the I was a big fan of  L perlis</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:21"> as a fantastic guy</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:24"> who was the  first Turing Award winner and early</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:27">he said beware of the Turing tarpit  where ever</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:30">  as possible but nothing is easy and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:33">what's interesting about he was talking  about programming languages</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:36"> but in fact  this is true the computer itself</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:39"> that's  the problem it's got all these</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:42"> wonderful  degrees of freedom and we</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:45">glorify in those because that's what  makes it the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:48"> most interesting machine  that anybody has ever invented</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:51"> and of  course the the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:54"> problem here is  oops and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:2:57"></subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:0"> fallen and perish now I did</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:3"> a  little research on Tar Pits and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:6"> I could</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:9">  not find anywhere that</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:12"> any humans were  ever found in</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:15"> a tar pit that were not  put there specifically</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:18"> as a ritual  burial so</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:21"> it seems like humans are a lot  smarter than sloths</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:24"> sometimes you never  can</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:27"> tell but in fact it</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:30">humans were pretty good at avoiding the  tar pit but</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:33"> we created a different kind  we realized</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:36"> oh there's there are all  these hydrocarbons</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:39"> and fossil fuels and  we wind up with this and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:42"> oh this and one  of the slums in</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:45"> Rio de Janeiro my two  favorite pictures</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:48"> of what I think of as  software today</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:51"> and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:54"> the problem is we  can't see them we can only see 30</subtitle>  | ||
| + | |||
| + | <subtitle id="0:3:57"> or 40  lines of code at a time and there's</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:0"> this  enormous festering whatever</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:3"> it is and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:6"> so  this goes from loops to a yikes</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:12">the tendency we</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:15">country is to beat everything to death  with the club and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:18"> what what happens is  the sub goals</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:21"> become the goals so at  some point just building</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:24"> refineries  become the goals we're</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:27"> really what we  wanted is energy and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:30"> it happens that 67%</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:33">of fossil fuels are burnt to make  electricity and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:36"> well if we want  electricity there are other</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:39"> ways of  doing it for instance photosynthesis is</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:42">  pretty nice I used to be a biologist</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:45"> and  what happens</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:48"> is through a beautiful  series</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:51"> of chemical reactions and some  physical pathways</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:54"> it's pretty darn  efficient at getting electrons</subtitle>  | ||
| + | |||
| + | <subtitle id="0:4:57"> and  electrons or what we want so</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:0"> we get a  yay on that and there</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:3"> are a lot of  organisms that do this and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:6"> the ones that  don't feed on the ones that do</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:9"> and it  happens that the metabolism</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:12"> basal  metabolism in all living</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:15"> cells is  somewhat similar and it's looking</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:18">from the energetic standpoint it's  really about just transferring electrons</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:21">  around and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:24"> so there are a lot of  electrons there and in fact recently it</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:27">  was discovered that many bacteria</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:30"> extend  microtubules between</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:33"> each other not for  the purposes of sex but</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:36"> for the purpose  of exchanging electrons</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:39"> that incredible  so</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:42"> they can get a kind of a feeding from</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:45">  each other they share it's a socialized  electrons</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:48"> and because</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:51"> there are so many  of these there Adam</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:54">favorite engineers who's also a  biologist</subtitle>  | ||
| + | |||
| + | <subtitle id="0:5:57"> says hey just stick</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:0">things into the ground anywhere on the  earth including</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:3"> the Sahara Desert and  you've got a fuel cell</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:6"> made out of  living microbes that are just</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:9"> happened  to be there by the billions and  trillions and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:12"> so in fact you can pretty  much any</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:15"> bucket of dirt that you get  outside you can run in a 60 watt</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:18"> bulb  just by having</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:21"> the right kinds of things  that you stick in there it doesn't  require any</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:24"> additional power  this is kind of a metaphor</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:27"> for I think  what we should be thinking</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:30">software we have to think about what it  is that we actually want</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:33"> to do and I  don't think our main goal is writing  millions</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:35"> of lines of code what we want  it is for to</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:39"> do something so</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:42"> we've heard  this in various ways today</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:45">this idea of let's try a science and  math</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:48"> let's not beat it to death and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:50"> idea  number two here is this</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:54"> distinction  between tactics and strategies when</subtitle>  | ||
| + | |||
| + | <subtitle id="0:6:56">we're building things and tactical stuff  is usually pretty</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:0"> incremental and  somewhat similar to where you were</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:3"> so  bricks lead to piles</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:5"> and stacks and if  you scale them up</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:9"> you get pyramids and  walls and they</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:11"> have a certain simplicity  to them anybody can learn how</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:15"> to be a  bricklayer and so this has</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:17"> a lot going  for it it's very transferable and so</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:21">  forth but it has some limitations and so</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:24">  there's a strategic direction we could  go which</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:26"> is before we build things out  of the materials</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:30"> let's think of things  we can make out of the materials that</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:32">  will be new materials so in</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:36"> architecture  let's make some arches that's</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:38"> where the  term came from and these things are</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:41">  incredibly efficient the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:45"> Romans made  such good cement aluminum</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:47"> silicates plus  compaction</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:51"> that many of these structures  built thousands</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:53"> of years ago still  survived today</subtitle>  | ||
| + | |||
| + | <subtitle id="0:7:56"> if you've been in the  pantheon looks like it</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:0"> was built  yesterday instead of 2,000 years ago</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:2">in fact it looks like is made out of  granite rather</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:6"> than the best reinforced  concrete anybody has ever made</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:8"> by the  way the frost giants in the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:12"> vogner  operas came out of the inability</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:14"> of the  Goths and the Visigoths to tear down  these</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:17"> aqueducts  in</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:21"> the Dark Ages they concluded only  Giants could</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:23"> have built them but in fact  it was just</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:27"> people like us with some  technique</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:29"> and the same thing is true in  computers</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:32"> our building block is a  comparison</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:35"> we could call it the  scheffers stroke if you want</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:38">  and again we can go tactically</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:41"> in  calculators we can add</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:44"> a strategic  element the stored program I loves</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:47">  jacquard looms and this</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:50"> notion of  storage models</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:53"> of computing is  recapitulated through many of our</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:56">  languages and predominant</subtitle>  | ||
| + | |||
| + | <subtitle id="0:8:59"> amount of programming today  despite</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:3"> some fringe areas is actually</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:5">done using this storage model in a wide  variety of</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:8"> forms including so-called  object-oriented languages</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:11"> so this is  kind of the general thing you find</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:14"> today  most universities train towards</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:17"> these  and so we we're talking</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:20"> about Turing  really</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:23"> interesting idea is this brick  ideas yeah</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:26"> you can program a computer to  make something that's like the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:29"> computer  you're on but you can also make</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:32">something a computer that is very  different from the computer</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:35"> it's on and  the first one of these that I ever saw  was ivan</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:39"> sutherland sketchpad and it</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:41">definitely a computer it was  programmable it</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:44"> wasn't programmable like  any other computer had ever been and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:47">was completely different than the  enormous tx2</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:50"> computer that it that it  ran on and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:53"> one way of thinking about it  and EDD Feigenbaum</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:56"> blazed the trail here  is that</subtitle>  | ||
| + | |||
| + | <subtitle id="0:9:59"> a lot of computing today is done  in terms of house and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:2"> as far back</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:5"> as 50  and 60 years ago people were already  starting</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:8"> about can't we just program in  terms of what's another</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:11"> one was john  mccarthy</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:14"> whose early paper on the advice</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:17">  taker a an intelligent</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:20"> terminal agent  that you could give advice</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:23"> to that could  deal with things in common</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:26"> sense terms  lisp was</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:29"> actually invented to be a  programming language to make that that</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:32">  was an early idea and of course Marvin  Minsky</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:35"> and Ed Fagin bellman and so forth  have</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:38"> talked about intelligent systems as</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:41">  terminal agents I'm going to focus not</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:44">  so much on AI here but just</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:47"> this notion  of what do we get if we can find</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:50">think in terms of  and we got a Marvin</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:53"> call the semantic  information process</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:56"> processing I'm gonna  focus on sketchpad here because</subtitle>  | ||
| + | |||
| + | <subtitle id="0:10:59"> it's not  only Turing's 100th</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:2"> birthday it happens  to be the 50th birthday of sketchpad</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:5">this year and I'm sure Ivan has  forgotten</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:8"> this because he's famous of  forgetting things like this</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:11"> yes because  he refuses to talk about</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:14"> sketchpad I  thought I would say a few words about it</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:17">  so it's</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:20"> famous for being the invention  of interactive</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:23"> computer graphics it's</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:26">less known that it was really the invent  really the first</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:29"> object-oriented system  that had the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:32"> abstraction technique</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:35"> of  objects masters and instances</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:38"> you can  make a master rivet</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:41"> and create instances  from it and the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:44"> big knockout on  sketchpad was the programming of it</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:47"> was  not done in terms of anything</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:50"> like a  storage model but was done by telling  sketchpad</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:53"> goals that</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:56">achieve and it had three spot home  solvers in</subtitle>  | ||
| + | |||
| + | <subtitle id="0:11:59"> it they would achieve those  goals and one of the famous</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:2"> examples  here is this truss bridge</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:5"> and it happens  that there is</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:8"> no movie available of this  truss bridge and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:11"> the reason is that</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:14"> tx2  took awhile to settle</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:17"> the constraints on  this bridge I believe</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:20"> but because it's  the 50th anniversary of</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:23"> sketchpad we  have recreated the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:26"> sketchpad display and  this twinkling</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:29"> ivan will recognize  because it</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:32"> actually plotted points and  they had to be</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:35"> randomized throughout  core you go crazy</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:38"> with vertigo on it and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:41">  so with sketch pad you could</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:44"> you know</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:47">  add a truss in here</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:50"> you could turn on  the constraints one of which is</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:53"> gravity  and sketch pay I would compute</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:56"> all of  the beams there and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:12:59"> we can see what  effect</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:2"> this this one has of adding it  in here those</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:5"> 1962</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:8"> and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:11"> a wait and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:14">  another way and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:17"> there's twinkling and  stuff caused</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:20"> a series of better displays  to be made</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:23"> but it's interesting that in  many ways</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:26"> the semantics are</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:29">xpressed here haven't been improved  much on although</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:32"> if we come into modern  times we can make it look prettier</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:35"></subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:38"> and  we</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:41"> have this model as do two Yoshiki  Oshima and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:44"> Bert Freudenberg who made  this and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:47"> now in the modern version of  course</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:50"> words</subtitle>  | ||
| + | |||
| + | <subtitle id="0:13:53"> have weight so I'll say  Ivan</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:2">for inventing</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:5"> this</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:8"> and we're</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:11">constraints a little bit differently  here and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:14"> so we put them inside this  weight</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:17"> here here's a couple of them so  here's</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:20"> the spring constraint so the  beams are all Springs</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:23"> here this is  gravity and this is the pinned  constraint</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:26"> so if I turn gravity off the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:29">  springs will pull it I</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:32"> love the idea  just</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:35"> the idea that a physical object is  actually a process</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:38"> so it's gone to zero  I turn gravity</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:41"> back on and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:44"> let's turn  off the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:47"> pin constraint the pins  constraint is what</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:50"> is holding all of  these girders together at the at</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:53"> the  joints here so just pull it off</subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:56"></subtitle>  | ||
| + | |||
| + | <subtitle id="0:14:59"></subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:2"> okay</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:5">ou know we have all these useful  objects down there and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:8"> we know these are  these objects what we're seeing</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:11">are just costumes on these objects so  let's repurpose</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:14"> them we'll give this  system a different set of constraints</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:17">and I'll use the little balloon here to  raise them up</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:20"> okay</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:23"> and we this is not  such a big news because we</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:26"> do our layout  using constraints so</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:29"> this is a user  interface of the system I'm actually  giving</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:32"> this this talk in terms of</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:35"> Steve  Jobs might like the steel look but</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:38"> I  think being a little more colorful we  can</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:41"> try</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:44"> we</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:47"> can try a blue look here that  looks</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:50"> a little bit too much like a  company we're all familiar</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:53"> with so the  system is a bit of a Frankenstein</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:56">  monster so I'll go for a Halloween theme  here</subtitle>  | ||
| + | |||
| + | <subtitle id="0:15:59"> and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:2"> I've got a</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:5">this is kind of like a presentation</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:8">  system except I can program in it so  what I'm</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:11"> going to what I'm going to do  here is just</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:14"> go to the sort of a slide  presentation but</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:17"> in fact I can still  interact with it because it's</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:20"> this is  just a view there are no modes in</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:23"> this  system and this brings</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:26"> us to what I  think of as the third turning machine</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:29"> we  talked about the first 2/3 Turing</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:32">machine was the machines he built out of  biology</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:35"> and this is in fact the first  turing paper i wrote was</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:38"> that I read  when I was a biologist was</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:41">morphogenesis paper and even though I  was a math major also</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:44"> at that time I  will confess I did not</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:47"> understand the  mathematics in it it was deep and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:50">actually he warns in the beginning of  that paper of</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:53"> what parts to read unless  you're really into mathematics</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:56"> but one  of the ideas here is he</subtitle>  | ||
| + | |||
| + | <subtitle id="0:16:59"> was trying to  show that relatively simple systems</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:2"> of  gradients interacting with each other  can</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:5"> give rise to an enormous number of  morphological</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:8"> structures and these are  some</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:11"> some from his original paper</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:14"> and  these are computer generation of</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:17"> some of  his models more recently</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:20"> and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:23"> you can do  other things with these so</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:26"> radiance we  can do something</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:29"> that's kind of like  particles and fields here</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:32"> we've got  little ants following the gradient and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:35">they'll all eventually migrate their way  up into</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:38"> that upper left-hand corner</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:41">it looks like they're somewhat  coordinated</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:44"> but in fact they're all just  following their own</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:47"> their own thing and  even</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:50"> though we could build our text  handling</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:53"> stuff in this form it</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:56"> suggests  yeah</subtitle>  | ||
| + | |||
| + | <subtitle id="0:17:59"> well why not make the letters ants</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:2">  and so if we tell these guys</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:5"> to</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:8"> interact  with each other and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:11"> by the way this  these three rules here</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:14"> are the rules for  this text editor here</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:17"> so you can sort of  see what that looks like</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:20">  and another little wrinkle in here</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:23"> this  that was done by Ted kale or another  wrinkle</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:26"> here is done by Erin Lindsay and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:29">  it's that nowadays we have the computing  power</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:32"> so that we don't have to compute  just one</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:35"> version of something but we can  compute multiple version</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:38"> so for instance  here are three</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:41"> suggestions three views  of this paragraph</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:44"> computed all at once  in different worlds</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:47"> and we see the  outline super opposed</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:50"> over it and we</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:53"> can  sort of see how</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:56"> this works and this  underlines that when you're</subtitle>  | ||
| + | |||
| + | <subtitle id="0:18:59"> doing what  type programming you really want</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:2"> to have  a user interface that is</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:5"> giving you a  sense of what the possibilities are  going on</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:8"> because the system is doing  more for you than when</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:11"> you're doing  sequential programming</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:14"> and of course  there's the question</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:17"> of doing the  graphics here and so</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:20"> dan amma liang did  the graphics for</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:23"> this system and an  assemble way using mathematical</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:26">  relationships first here's a formula</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:29"> for  the involvement of a polygon</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:32"> with with a  pixel and then</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:35"> he made a mathematical  language</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:38"> that allows us to express</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:41">in a form that runs so you can think of  this as kind</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:44"> of a specification that  actually runs and in</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:47">previous discussions I'd say my  prejudices</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:50"> are to make our specification</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:53">language something that we can debug and  then ship</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:56"> because the problem is you're  always involved</subtitle>  | ||
| + | |||
| + | <subtitle id="0:19:59"> in not just programming  something but</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:2"> you also have to do all  the reasons</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:5"> for the programming and  those can have bugs also</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:8"> so I kind of  like this way but I happen to agree with  Butler</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:11"> that sometimes trying to make  things clean</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:14"> is difficult but on the  other hand think about</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:17"> wonderful it is  when you can make them clean so</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:20"> that  does things</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:23"> like that and then we have  Willian compositing</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:26"> rules but there they  all are just</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:29"> 95 lines of code</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:32">  we have pen stroking and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:35"> like this and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:38">  we</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:41"> have gradients</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:44"> and texturing and  stuff and the best way to show that is  to go</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:47"> back here and I'll just pick  something in the user interface because</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:50">  the whole system is live I'll say okay  gradient</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:53"> fill and I'll just wreak ustym</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:56">  eyes my little in thing here</subtitle>  | ||
| + | |||
| + | <subtitle id="0:20:59"> because  that's the live thing</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:2"> that goes along  with that okay</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:5"> and then back</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:8"> up and then  bitmap filters</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:11"> and everything and so in  this form all of</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:14">we're familiar with on a personal  computer is</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:17"> 435 lines of code and yeah</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:20">you have to learn a language that's a  little bit like AP element</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:23"> meets  Christopher stray key but in</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:26">compactness of it and the  understandability</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:29"> of it is fantastic</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:32"> and  in order to make languages like that</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:35">fast  we made a metal language</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:38"> Alex Wirth did  this and it makes</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:41"> converts expressions  into</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:44"> object relationships that you can</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:47">  do things like compile with or interpret  or you</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:50"> can do something really  interesting</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:53"> and illuminating with it as  Brett</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:56"> vicar young fantastic user  interface</subtitle>  | ||
| + | |||
| + | <subtitle id="0:21:59"> designer Brett would say yeah  that's not really</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:2"> interaction you need  to continuously experience</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:5"> the meaning  of your meanings not just hit</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:8">and have them happen and this is  possible in</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:11"> this graphics language  because it's actually a</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:14"> data flow system  as well as as</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:17"> well as a very high higher  level language</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:20"> and so the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:23"> oops</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:26"> sorry  so</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:29"> here's an example of</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:32"> the letter D and  here's</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:35"> what bread has done he has  automatically</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:38"> gone through those that  code that</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:41"> I showed you and he has built  this visualization</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:44"> over here  automatically from it  so</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:47"> just so here's a Bezier curve</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:50">can edit this letter D here and you  notice everything</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:53"> else is reacting here  the six</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:56"> bezzie A's that becomes</subtitle>  | ||
| + | |||
| + | <subtitle id="0:22:59"> the  input of the rasterizer</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:2"> that produces 49</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:5">  span coverages and I can</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:8">from  I can</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:11"> open these up and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:14"> what</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:17"> it does is  it takes me on a tour automatically  through the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:20"> code forwards and backwards  and shows me what's</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:23"> going on and of  course the next step 2 after this would</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:26">be instead of writing this stuff over on  the right first you</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:29"> might want to start  off with your examples first and develop</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:32">  the stuff on the right</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:35"></subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:38"> okay and so in</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:41">architecture for this is somewhat  similar to things have been talked</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:44"> about  for a while this is Ellen</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:47">Hossam Savini  who have been</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:50"> working on this and basic  ideas whenever you can stay</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:53"> up at the  what level the constraint level the  meaning</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:56"> level the relational level  things are generally</subtitle>  | ||
| + | |||
| + | <subtitle id="0:23:59"> good and you'd</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:2"> like  to have a language or two not</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:5"> too many  of them that really allows you to</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:8">  express these not just for special cases</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:11">  I mean one of the points of this is it's  time</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:14"> to start thinking of doing what  programming for systems</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:17"> programming  making operating systems and basic</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:20">  elements out of it where</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:23"> the system is  in charge of doing the house</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:26"> the solvers  the optimizations the pragmatics</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:29"> and  there's zillions of these</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:32"> we want to</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:35">work up here this is kind of sketchpad  like it's gets bad</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:38"> I had three of these  we actually need a lot of them</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:41">  in between we need something that is</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:44"> not  just a kind of a chooser but also kind  of an</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:47"> expert system that knows about  this idea</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:50"> that can make judicious  choices</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:53"> and maybe even parallel choices  to tie this together</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:56"> so when</subtitle>  | ||
| + | |||
| + | <subtitle id="0:24:59"> I look out  on the world here  and somebody</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:2"> asked me about the Turing  tarpit I think</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:5"> it's a Turing opportunity  and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:8"> if there's a tarp it around  I</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:11"> think it's inside of our own heads  thank you very much</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:20">great so we'll take questions</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:23"> you  pointed someone and I'll run a mic to  them and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:26"> we have about five minutes for  questions</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:29"> questions anyway I'm always</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:32">  very great Butler always reminds me  that's that</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:35"> Butler gives great talks and  he actually gets</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:38"> done when he's supposed  to and he's I'm</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:41"> just grateful that he  went on before I do because it reminded</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:44">  me I should get done good Alex Wolff</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:47"> hi  Alex Wolff</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:50"> aren't yesterday's what's</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:53">  today's house on ad</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:56"> infinitum</subtitle>  | ||
| + | |||
| + | <subtitle id="0:25:59"> aren't</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:2">  yesterday's what's today's house odd</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:5">  infinitum</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:8"> I'm</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:11"> gonna let Alan repeat okay  okay</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:14"> shall I saying it again  but the point is that you</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:17"> know we don't  know how to do something</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:20"> we we then know  how to do it yeah I</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:23"> got it  and then we complain about it yes</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:26"> well  actually some people even regarded  Fortran</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:29"> as an AI program back then  because</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:32"> it did something that only  humans could do and people</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:35">complain that every time a problem gets  solved it's</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:38"> removed from the domain of  ai ai ai never</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:41"> gets any credit for it  because it just goes into engineering</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:44">  yeah there's something to be said about  that and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:47"> maybe one way of looking at  this is saying hey it's a</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:50"> it's not that  it people haven't been working on what's  for</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:53"> 50 or 60 years but I think it's</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:56"> way  out of balance if you look at where</subtitle>  | ||
| + | |||
| + | <subtitle id="0:26:59"> the  programming is going and I believe</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:2"> that  the time is ripe now over</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:5"> the next five  to eight years to actually</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:8"> do something  serious at this</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:11"> level that is</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:14"> sort of in  between specifications</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:17"> requirements  prototyping and making</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:20"> something that  can be delivered with perhaps by</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:23"> adding  optimizations that don't get</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:26"> into the  the the meaningful part</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:29">hat's why this is a pep talk it's  come</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:32"> on funders start funding the next  revolution in</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:35"> being able to do serious  program not</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:38"> just a special case program  okay so there's a question over</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:41"> here  we're good</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:44"> so tell us who</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:47"> you are my  name is Ken Pierre Allen</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:50"> I'm surrounded  by Dinah books got a little</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:53"> one of my  hand it's</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:56"> been it's been 40 years and  we've been talking</subtitle>  | ||
| + | |||
| + | <subtitle id="0:27:59"> all day about  predictions what are yours</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:2"> well the  easiest</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:5"> you know there's a there's a  saying that will go</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:8"> on my tombstone but  if you think about it the the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:11"> easiest  way to predict the future is to prevent  it so</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:14"></subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:17"></subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:20"> one of the one of the ways of  looking at today is</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:23"> the discouraging  amount of</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:26"> stuff that's still around that  was</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:29"> barely scaling when it was invented  and I so</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:32"> it's easy to predict that a lot  of that will be around real question</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:35"> in  I think in the experience</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:38"> of many of us  takes critical masses of</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:41"> different kinds  of people funded well to</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:44"> actually make  serious breakthroughs because</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:47"> ideas are  not</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:50"> enough there are plenty of good</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:53">  ideas around but I came greatly</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:56"> to  appreciate the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:28:59"> qualities of people who  can turn ideas</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:2"> into reality and so it's  really the combination</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:5"> of them this is  what is so difficult for</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:8"> instance from  NSF funding as funding</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:11"> projects large  enough to do the engineering aspects</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:14"> as  well as the the ideational aspects</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:17"> good  we're gonna squeeze in one last question</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:20">  how about something from over here</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:23"> god  what a bunch of wimps nobody's got</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:26"> a  hand up there weird oh okay I'll be  right there</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:29">  put your hand up</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:32"> again good and tell us  who you</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:35"> are  Simon cuskey from citrus</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:38"> leaf Ellen you  talked about preventing and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:41"> you showed  us this nice WYSIWYG live very</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:44"> few lines  of code now the things that Ken</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:47"> was just  talking about about all his dire</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:50"> botnets  can you imagine using</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:53"> those techniques  to deal with things once it gets</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:56">your your screen and starts going into  the real world where</subtitle>  | ||
| + | |||
| + | <subtitle id="0:29:59"> there's spam and  malware and adversaries</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:2"> yeah well I'm  I'm always accused</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:5"> of being too  optimistic but and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:8"> to me the many</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:11"> of the  protection aspects of things</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:14"> I have a  probably an over simplistic way of  thinking</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:17"> about it but I believe you have  to do the safety</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:20"> and protection aspects  as the first part</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:23"> of the design rather  than trying to tack them on</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:26"> afterwards  and I</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:29"> happen to like the internet a lot  I</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:32"> think those guys did a fantastic job  and to</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:35"> me it's the only real  object-oriented system on the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:38"> planet  because the machines themselves are</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:41">ncapsulated things and it is not  possible to send</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:44"> a message on the  internet that will cause any machine</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:47"> to  crash because it's true</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:50"> because it's  only stupid software that other people</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:53">  put on the machine interpreting what is</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:56">a pure message interpreting that in some  stupid way</subtitle>  | ||
| + | |||
| + | <subtitle id="0:30:59"> that allows that so to</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:2">Internet is a good model and it must  have a few billion</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:5"> nodes by now it has  never had to be stopped</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:8"> to be updated  it's probably</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:11"> exchanged out most of its  atoms and</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:14"> much of its bits at least once</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:17">  since say the late 60s when the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:20"> ARPANET  started so it it's the thing that is</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:23">like a living organism it's the thing  that is going</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:26"> into the future it's the  thing that we have to look</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:29"> at when we're  thinking about building systems</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:32"> and so  on it's in a biological system the</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:35"> the  entire dynamic</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:38"> in biology is not being  correct</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:41"> but in curtailing</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:44"> error a lot of</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:47">the proteins made  a third of the 10,000</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:50"> proteins we have  in each cell are there just</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:53"> to correct  various kinds of damage to</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:56"> DNA and other  important molecules that</subtitle>  | ||
| + | |||
| + | <subtitle id="0:31:59"> are caused by  kinetic</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:2"> energy of heat and some  carcinogens</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:5"> and so it's not a question  of the thing being</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:8"> perfect it's like the  Internet  it's</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:11"> not just IP but it's having  something</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:14"> like TCP that can make sure  the retransmissions</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:17"> and other things  happen so you eventually</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:20"> get the bits  that you want but</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:23"> not you may not get  them for a while so it</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:26"> becomes a kind of  a stochastic computing</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:29"> and I think that  it</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:32"> couples well to what Butler was  saying and also</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:35"> this model I was showing  that it's it's</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:38"> that the more we get into  the what's the more we can build systems</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:41">  that can do these stochastic convergent</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:44">  strategies that</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:47"> will allow us to build  bigger systems on</subtitle>  | ||
| + | |||
| + | <subtitle id="0:32:50"> that very optimistic  note thank you</subtitle>  | ||
Latest revision as of 20:41, 6 December 2017
about
 two minutes to set this up
 okay  now is it I
 love that we are the
 testers  for these microphones so I'd like
the AV people to turn off the video  there take
 take me about one minute to
  set things up here
 because this is  actually in the
 nature of a pep talk  and
 it's an optimistic
 pep talk about
  about software and it's based
 on the  work of many people
 here I should  mention that
 many of my heroes are
 in  this room and not just the people
 who  got the Turing Awards but some
colleagues I've worked with over the  years are
 my heroes I think
 we wind up
  making Ecology's when we're
trying to do things this is sometimes  been
 been mentioned and these
 ecologies  are critical
 because they actually  require a wide variety
 of different  talents I've always felt that
 Turing  exemplified
 a wide variety of talents
  inside himself just pretty darn amazing
  I
 probably forgot something but okay  let's let's
 start here
 so this pep
 talk  is about the Turing tarpit
 and what we  might do with it and about
 it and I
don't know where the I was a big fan of  L perlis
 as a fantastic guy
 who was the  first Turing Award winner and early
he said beware of the Turing tarpit  where ever
  as possible but nothing is easy and
what's interesting about he was talking  about programming languages
 but in fact  this is true the computer itself
 that's  the problem it's got all these
 wonderful  degrees of freedom and we
glorify in those because that's what  makes it the
 most interesting machine  that anybody has ever invented
 and of  course the the
 problem here is  oops and
 fallen and perish now I did
 a  little research on Tar Pits and
 I could
  not find anywhere that
 any humans were  ever found in
 a tar pit that were not  put there specifically
 as a ritual  burial so
 it seems like humans are a lot  smarter than sloths
 sometimes you never  can
 tell but in fact it
humans were pretty good at avoiding the  tar pit but
 we created a different kind  we realized
 oh there's there are all  these hydrocarbons
 and fossil fuels and  we wind up with this and
 oh this and one  of the slums in
 Rio de Janeiro my two  favorite pictures
 of what I think of as  software today
 and
 the problem is we  can't see them we can only see 30
 or 40  lines of code at a time and there's
 this  enormous festering whatever
 it is and
 so  this goes from loops to a yikes
the tendency we
country is to beat everything to death  with the club and
 what what happens is  the sub goals
 become the goals so at  some point just building
 refineries  become the goals we're
 really what we  wanted is energy and
 it happens that 67%
of fossil fuels are burnt to make  electricity and
 well if we want  electricity there are other
 ways of  doing it for instance photosynthesis is
  pretty nice I used to be a biologist
 and  what happens
 is through a beautiful  series
 of chemical reactions and some  physical pathways
 it's pretty darn  efficient at getting electrons
 and  electrons or what we want so
 we get a  yay on that and there
 are a lot of  organisms that do this and
 the ones that  don't feed on the ones that do
 and it  happens that the metabolism
 basal  metabolism in all living
 cells is  somewhat similar and it's looking
from the energetic standpoint it's  really about just transferring electrons
  around and
 so there are a lot of  electrons there and in fact recently it
  was discovered that many bacteria
 extend  microtubules between
 each other not for  the purposes of sex but
 for the purpose  of exchanging electrons
 that incredible  so
 they can get a kind of a feeding from
  each other they share it's a socialized  electrons
 and because
 there are so many  of these there Adam
favorite engineers who's also a  biologist
 says hey just stick
things into the ground anywhere on the  earth including
 the Sahara Desert and  you've got a fuel cell
 made out of  living microbes that are just
 happened  to be there by the billions and  trillions and
 so in fact you can pretty  much any
 bucket of dirt that you get  outside you can run in a 60 watt
 bulb  just by having
 the right kinds of things  that you stick in there it doesn't  require any
 additional power  this is kind of a metaphor
 for I think  what we should be thinking
software we have to think about what it  is that we actually want
 to do and I  don't think our main goal is writing  millions
 of lines of code what we want  it is for to
 do something so
 we've heard  this in various ways today
this idea of let's try a science and  math
 let's not beat it to death and
 idea  number two here is this
 distinction  between tactics and strategies when
we're building things and tactical stuff  is usually pretty
 incremental and  somewhat similar to where you were
 so  bricks lead to piles
 and stacks and if  you scale them up
 you get pyramids and  walls and they
 have a certain simplicity  to them anybody can learn how
 to be a  bricklayer and so this has
 a lot going  for it it's very transferable and so
  forth but it has some limitations and so
  there's a strategic direction we could  go which
 is before we build things out  of the materials
 let's think of things  we can make out of the materials that
  will be new materials so in
 architecture  let's make some arches that's
 where the  term came from and these things are
  incredibly efficient the
 Romans made  such good cement aluminum
 silicates plus  compaction
 that many of these structures  built thousands
 of years ago still  survived today
 if you've been in the  pantheon looks like it
 was built  yesterday instead of 2,000 years ago
in fact it looks like is made out of  granite rather
 than the best reinforced  concrete anybody has ever made
 by the  way the frost giants in the
 vogner  operas came out of the inability
 of the  Goths and the Visigoths to tear down  these
 aqueducts  in
 the Dark Ages they concluded only  Giants could
 have built them but in fact  it was just
 people like us with some  technique
 and the same thing is true in  computers
 our building block is a  comparison
 we could call it the  scheffers stroke if you want
  and again we can go tactically
 in  calculators we can add
 a strategic  element the stored program I loves
  jacquard looms and this
 notion of  storage models
 of computing is  recapitulated through many of our
  languages and predominant
 amount of programming today  despite
 some fringe areas is actually
done using this storage model in a wide  variety of
 forms including so-called  object-oriented languages
 so this is  kind of the general thing you find
 today  most universities train towards
 these  and so we we're talking
 about Turing  really
 interesting idea is this brick  ideas yeah
 you can program a computer to  make something that's like the
 computer  you're on but you can also make
something a computer that is very  different from the computer
 it's on and  the first one of these that I ever saw  was ivan
 sutherland sketchpad and it
definitely a computer it was  programmable it
 wasn't programmable like  any other computer had ever been and
was completely different than the  enormous tx2
 computer that it that it  ran on and
 one way of thinking about it  and EDD Feigenbaum
 blazed the trail here  is that
 a lot of computing today is done  in terms of house and
 as far back
 as 50  and 60 years ago people were already  starting
 about can't we just program in  terms of what's another
 one was john  mccarthy
 whose early paper on the advice
  taker a an intelligent
 terminal agent  that you could give advice
 to that could  deal with things in common
 sense terms  lisp was
 actually invented to be a  programming language to make that that
  was an early idea and of course Marvin  Minsky
 and Ed Fagin bellman and so forth  have
 talked about intelligent systems as
  terminal agents I'm going to focus not
  so much on AI here but just
 this notion  of what do we get if we can find
think in terms of  and we got a Marvin
 call the semantic  information process
 processing I'm gonna  focus on sketchpad here because
 it's not  only Turing's 100th
 birthday it happens  to be the 50th birthday of sketchpad
this year and I'm sure Ivan has  forgotten
 this because he's famous of  forgetting things like this
 yes because  he refuses to talk about
 sketchpad I  thought I would say a few words about it
  so it's
 famous for being the invention  of interactive
 computer graphics it's
less known that it was really the invent  really the first
 object-oriented system  that had the
 abstraction technique
 of  objects masters and instances
 you can  make a master rivet
 and create instances  from it and the
 big knockout on  sketchpad was the programming of it
 was  not done in terms of anything
 like a  storage model but was done by telling  sketchpad
 goals that
achieve and it had three spot home  solvers in
 it they would achieve those  goals and one of the famous
 examples  here is this truss bridge
 and it happens  that there is
 no movie available of this  truss bridge and
 the reason is that
 tx2  took awhile to settle
 the constraints on  this bridge I believe
 but because it's  the 50th anniversary of
 sketchpad we  have recreated the
 sketchpad display and  this twinkling
 ivan will recognize  because it
 actually plotted points and  they had to be
 randomized throughout  core you go crazy
 with vertigo on it and
  so with sketch pad you could
 you know
  add a truss in here
 you could turn on  the constraints one of which is
 gravity  and sketch pay I would compute
 all of  the beams there and
 we can see what  effect
 this this one has of adding it  in here those
 1962
 and
 a wait and
  another way and
 there's twinkling and  stuff caused
 a series of better displays  to be made
 but it's interesting that in  many ways
 the semantics are
xpressed here haven't been improved  much on although
 if we come into modern  times we can make it look prettier
 and  we
 have this model as do two Yoshiki  Oshima and
 Bert Freudenberg who made  this and
 now in the modern version of  course
 words
 have weight so I'll say  Ivan
for inventing
 this
 and we're
constraints a little bit differently  here and
 so we put them inside this  weight
 here here's a couple of them so  here's
 the spring constraint so the  beams are all Springs
 here this is  gravity and this is the pinned  constraint
 so if I turn gravity off the
  springs will pull it I
 love the idea  just
 the idea that a physical object is  actually a process
 so it's gone to zero  I turn gravity
 back on and
 let's turn  off the
 pin constraint the pins  constraint is what
 is holding all of  these girders together at the at
 the  joints here so just pull it off
 okay
ou know we have all these useful  objects down there and
 we know these are  these objects what we're seeing
are just costumes on these objects so  let's repurpose
 them we'll give this  system a different set of constraints
and I'll use the little balloon here to  raise them up
 okay
 and we this is not  such a big news because we
 do our layout  using constraints so
 this is a user  interface of the system I'm actually  giving
 this this talk in terms of
 Steve  Jobs might like the steel look but
 I  think being a little more colorful we  can
 try
 we
 can try a blue look here that  looks
 a little bit too much like a  company we're all familiar
 with so the  system is a bit of a Frankenstein
  monster so I'll go for a Halloween theme  here
 and
 I've got a
this is kind of like a presentation
  system except I can program in it so  what I'm
 going to what I'm going to do  here is just
 go to the sort of a slide  presentation but
 in fact I can still  interact with it because it's
 this is  just a view there are no modes in
 this  system and this brings
 us to what I  think of as the third turning machine
 we  talked about the first 2/3 Turing
machine was the machines he built out of  biology
 and this is in fact the first  turing paper i wrote was
 that I read  when I was a biologist was
morphogenesis paper and even though I  was a math major also
 at that time I  will confess I did not
 understand the  mathematics in it it was deep and
actually he warns in the beginning of  that paper of
 what parts to read unless  you're really into mathematics
 but one  of the ideas here is he
 was trying to  show that relatively simple systems
 of  gradients interacting with each other  can
 give rise to an enormous number of  morphological
 structures and these are  some
 some from his original paper
 and  these are computer generation of
 some of  his models more recently
 and
 you can do  other things with these so
 radiance we  can do something
 that's kind of like  particles and fields here
 we've got  little ants following the gradient and
they'll all eventually migrate their way  up into
 that upper left-hand corner
it looks like they're somewhat  coordinated
 but in fact they're all just  following their own
 their own thing and  even
 though we could build our text  handling
 stuff in this form it
 suggests  yeah
 well why not make the letters ants
  and so if we tell these guys
 to
 interact  with each other and
 by the way this  these three rules here
 are the rules for  this text editor here
 so you can sort of  see what that looks like
  and another little wrinkle in here
 this  that was done by Ted kale or another  wrinkle
 here is done by Erin Lindsay and
  it's that nowadays we have the computing  power
 so that we don't have to compute  just one
 version of something but we can  compute multiple version
 so for instance  here are three
 suggestions three views  of this paragraph
 computed all at once  in different worlds
 and we see the  outline super opposed
 over it and we
 can  sort of see how
 this works and this  underlines that when you're
 doing what  type programming you really want
 to have  a user interface that is
 giving you a  sense of what the possibilities are  going on
 because the system is doing  more for you than when
 you're doing  sequential programming
 and of course  there's the question
 of doing the  graphics here and so
 dan amma liang did  the graphics for
 this system and an  assemble way using mathematical
  relationships first here's a formula
 for  the involvement of a polygon
 with with a  pixel and then
 he made a mathematical  language
 that allows us to express
in a form that runs so you can think of  this as kind
 of a specification that  actually runs and in
previous discussions I'd say my  prejudices
 are to make our specification
language something that we can debug and  then ship
 because the problem is you're  always involved
 in not just programming  something but
 you also have to do all  the reasons
 for the programming and  those can have bugs also
 so I kind of  like this way but I happen to agree with  Butler
 that sometimes trying to make  things clean
 is difficult but on the  other hand think about
 wonderful it is  when you can make them clean so
 that  does things
 like that and then we have  Willian compositing
 rules but there they  all are just
 95 lines of code
  we have pen stroking and
 like this and
  we
 have gradients
 and texturing and  stuff and the best way to show that is  to go
 back here and I'll just pick  something in the user interface because
  the whole system is live I'll say okay  gradient
 fill and I'll just wreak ustym
  eyes my little in thing here
 because  that's the live thing
 that goes along  with that okay
 and then back
 up and then  bitmap filters
 and everything and so in  this form all of
we're familiar with on a personal  computer is
 435 lines of code and yeah
you have to learn a language that's a  little bit like AP element
 meets  Christopher stray key but in
compactness of it and the  understandability
 of it is fantastic
 and  in order to make languages like that
fast  we made a metal language
 Alex Wirth did  this and it makes
 converts expressions  into
 object relationships that you can
  do things like compile with or interpret  or you
 can do something really  interesting
 and illuminating with it as  Brett
 vicar young fantastic user  interface
 designer Brett would say yeah  that's not really
 interaction you need  to continuously experience
 the meaning  of your meanings not just hit
and have them happen and this is  possible in
 this graphics language  because it's actually a
 data flow system  as well as as
 well as a very high higher  level language
 and so the
 oops
 sorry  so
 here's an example of
 the letter D and  here's
 what bread has done he has  automatically
 gone through those that  code that
 I showed you and he has built  this visualization
 over here  automatically from it  so
 just so here's a Bezier curve
can edit this letter D here and you  notice everything
 else is reacting here  the six
 bezzie A's that becomes
 the  input of the rasterizer
 that produces 49
  span coverages and I can
from  I can
 open these up and
 what
 it does is  it takes me on a tour automatically  through the
 code forwards and backwards  and shows me what's
 going on and of  course the next step 2 after this would
be instead of writing this stuff over on  the right first you
 might want to start  off with your examples first and develop
  the stuff on the right
 okay and so in
architecture for this is somewhat  similar to things have been talked
 about  for a while this is Ellen
Hossam Savini  who have been
 working on this and basic  ideas whenever you can stay
 up at the  what level the constraint level the  meaning
 level the relational level  things are generally
 good and you'd
 like  to have a language or two not
 too many  of them that really allows you to
  express these not just for special cases
  I mean one of the points of this is it's  time
 to start thinking of doing what  programming for systems
 programming  making operating systems and basic
  elements out of it where
 the system is  in charge of doing the house
 the solvers  the optimizations the pragmatics
 and  there's zillions of these
 we want to
work up here this is kind of sketchpad  like it's gets bad
 I had three of these  we actually need a lot of them
  in between we need something that is
 not  just a kind of a chooser but also kind  of an
 expert system that knows about  this idea
 that can make judicious  choices
 and maybe even parallel choices  to tie this together
 so when
 I look out  on the world here  and somebody
 asked me about the Turing  tarpit I think
 it's a Turing opportunity  and
 if there's a tarp it around  I
 think it's inside of our own heads  thank you very much
great so we'll take questions
 you  pointed someone and I'll run a mic to  them and
 we have about five minutes for  questions
 questions anyway I'm always
  very great Butler always reminds me  that's that
 Butler gives great talks and  he actually gets
 done when he's supposed  to and he's I'm
 just grateful that he  went on before I do because it reminded
  me I should get done good Alex Wolff
 hi  Alex Wolff
 aren't yesterday's what's
  today's house on ad
 infinitum
 aren't
  yesterday's what's today's house odd
  infinitum
 I'm
 gonna let Alan repeat okay  okay
 shall I saying it again  but the point is that you
 know we don't  know how to do something
 we we then know  how to do it yeah I
 got it  and then we complain about it yes
 well  actually some people even regarded  Fortran
 as an AI program back then  because
 it did something that only  humans could do and people
complain that every time a problem gets  solved it's
 removed from the domain of  ai ai ai never
 gets any credit for it  because it just goes into engineering
  yeah there's something to be said about  that and
 maybe one way of looking at  this is saying hey it's a
 it's not that  it people haven't been working on what's  for
 50 or 60 years but I think it's
 way  out of balance if you look at where
 the  programming is going and I believe
 that  the time is ripe now over
 the next five  to eight years to actually
 do something  serious at this
 level that is
 sort of in  between specifications
 requirements  prototyping and making
 something that  can be delivered with perhaps by
 adding  optimizations that don't get
 into the  the the meaningful part
hat's why this is a pep talk it's  come
 on funders start funding the next  revolution in
 being able to do serious  program not
 just a special case program  okay so there's a question over
 here  we're good
 so tell us who
 you are my  name is Ken Pierre Allen
 I'm surrounded  by Dinah books got a little
 one of my  hand it's
 been it's been 40 years and  we've been talking
 all day about  predictions what are yours
 well the  easiest
 you know there's a there's a  saying that will go
 on my tombstone but  if you think about it the the
 easiest  way to predict the future is to prevent  it so
 one of the one of the ways of  looking at today is
 the discouraging  amount of
 stuff that's still around that  was
 barely scaling when it was invented  and I so
 it's easy to predict that a lot  of that will be around real question
 in  I think in the experience
 of many of us  takes critical masses of
 different kinds  of people funded well to
 actually make  serious breakthroughs because
 ideas are  not
 enough there are plenty of good
  ideas around but I came greatly
 to  appreciate the
 qualities of people who  can turn ideas
 into reality and so it's  really the combination
 of them this is  what is so difficult for
 instance from  NSF funding as funding
 projects large  enough to do the engineering aspects
 as  well as the the ideational aspects
 good  we're gonna squeeze in one last question
  how about something from over here
 god  what a bunch of wimps nobody's got
 a  hand up there weird oh okay I'll be  right there
  put your hand up
 again good and tell us  who you
 are  Simon cuskey from citrus
 leaf Ellen you  talked about preventing and
 you showed  us this nice WYSIWYG live very
 few lines  of code now the things that Ken
 was just  talking about about all his dire
 botnets  can you imagine using
 those techniques  to deal with things once it gets
your your screen and starts going into  the real world where
 there's spam and  malware and adversaries
 yeah well I'm  I'm always accused
 of being too  optimistic but and
 to me the many
 of the  protection aspects of things
 I have a  probably an over simplistic way of  thinking
 about it but I believe you have  to do the safety
 and protection aspects  as the first part
 of the design rather  than trying to tack them on
 afterwards  and I
 happen to like the internet a lot  I
 think those guys did a fantastic job  and to
 me it's the only real  object-oriented system on the
 planet  because the machines themselves are
ncapsulated things and it is not  possible to send
 a message on the  internet that will cause any machine
 to  crash because it's true
 because it's  only stupid software that other people
  put on the machine interpreting what is
a pure message interpreting that in some  stupid way
 that allows that so to
Internet is a good model and it must  have a few billion
 nodes by now it has  never had to be stopped
 to be updated  it's probably
 exchanged out most of its  atoms and
 much of its bits at least once
  since say the late 60s when the
 ARPANET  started so it it's the thing that is
like a living organism it's the thing  that is going
 into the future it's the  thing that we have to look
 at when we're  thinking about building systems
 and so  on it's in a biological system the
 the  entire dynamic
 in biology is not being  correct
 but in curtailing
 error a lot of
the proteins made  a third of the 10,000
 proteins we have  in each cell are there just
 to correct  various kinds of damage to
 DNA and other  important molecules that
 are caused by  kinetic
 energy of heat and some  carcinogens
 and so it's not a question  of the thing being
 perfect it's like the  Internet  it's
 not just IP but it's having  something
 like TCP that can make sure  the retransmissions
 and other things  happen so you eventually
 get the bits  that you want but
 not you may not get  them for a while so it
 becomes a kind of  a stochastic computing
 and I think that  it
 couples well to what Butler was  saying and also
 this model I was showing  that it's it's
 that the more we get into  the what's the more we can build systems
  that can do these stochastic convergent
  strategies that
 will allow us to build  bigger systems on
 that very optimistic  note thank you