1 00:00:00,106 --> 00:00:01,530 So the machine I'm going to talk you about 2 00:00:01,530 --> 00:00:03,204 is what I call the greatest machine that never was. 3 00:00:03,204 --> 00:00:05,203 It was a machine that was never built, 4 00:00:05,203 --> 00:00:07,583 and yet, it will be built. 5 00:00:07,583 --> 00:00:09,575 It was a machine that was designed 6 00:00:09,575 --> 00:00:11,926 long before anyone thought about computers. 7 00:00:11,926 --> 00:00:14,075 If you know anything about the history of computers, 8 00:00:14,075 --> 00:00:16,595 you will know that in the '30s and the '40s, 9 00:00:16,595 --> 00:00:19,150 simple computers were created 10 00:00:19,150 --> 00:00:21,943 that started the computer revolution we have today, 11 00:00:21,943 --> 00:00:23,229 and you would be correct, 12 00:00:23,229 --> 00:00:25,711 except for you'd have the wrong century. 13 00:00:25,711 --> 00:00:27,351 The first computer was really designed 14 00:00:27,351 --> 00:00:31,023 in the 1830s and 1840s, not the 1930s and 1940s. 15 00:00:31,023 --> 00:00:33,351 It was designed, and parts of it were prototyped, 16 00:00:33,351 --> 00:00:35,487 and the bits of it that were built are here 17 00:00:35,487 --> 00:00:37,480 in South Kensington. 18 00:00:37,480 --> 00:00:40,799 That machine was built by this guy, Charles Babbage. 19 00:00:40,799 --> 00:00:42,555 Now, I have a great affinity for Charles Babbage 20 00:00:42,555 --> 00:00:45,164 because his hair is always completely unkempt like this 21 00:00:45,164 --> 00:00:47,505 in every single picture. (Laughter) 22 00:00:47,505 --> 00:00:49,352 He was a very wealthy man, and a sort of, 23 00:00:49,352 --> 00:00:51,365 part of the aristocracy of Britain, 24 00:00:51,365 --> 00:00:53,704 and on a Saturday night in Marylebone, 25 00:00:53,704 --> 00:00:56,135 were you part of the intelligentsia of that period, 26 00:00:56,135 --> 00:00:57,631 you would have been invited round to his house 27 00:00:57,631 --> 00:01:00,590 for a soiree — and he invited everybody: 28 00:01:00,590 --> 00:01:04,022 kings, the Duke of Wellington, many, many famous people — 29 00:01:04,022 --> 00:01:06,543 and he would have shown you one of his mechanical machines. 30 00:01:06,543 --> 00:01:09,583 I really miss that era, you know, where you could 31 00:01:09,583 --> 00:01:11,931 go around for a soiree and see a mechanical computer 32 00:01:11,931 --> 00:01:13,044 get demonstrated to you. (Laughter) 33 00:01:13,044 --> 00:01:16,310 But Babbage, Babbage himself was born 34 00:01:16,310 --> 00:01:18,044 at the end of the 18th century, 35 00:01:18,044 --> 00:01:20,088 and was a fairly famous mathematician. 36 00:01:20,088 --> 00:01:23,231 He held the post that Newton held at Cambridge, 37 00:01:23,231 --> 00:01:25,743 and that was recently held by Stephen Hawking. 38 00:01:25,743 --> 00:01:28,598 He's less well known than either of them because 39 00:01:28,598 --> 00:01:31,748 he got this idea to make mechanical computing devices 40 00:01:31,748 --> 00:01:34,033 and never made any of them. 41 00:01:34,033 --> 00:01:37,318 The reason he never made any of them, he's a classic nerd. 42 00:01:37,318 --> 00:01:39,329 Every time he had a good idea, he'd think, 43 00:01:39,329 --> 00:01:40,777 "That's brilliant, I'm going to start building that one. 44 00:01:40,777 --> 00:01:43,372 I'll spend a fortune on it. I've got a better idea. 45 00:01:43,372 --> 00:01:45,732 I'm going to work on this one. (Laughter) And I'm going to do this one." 46 00:01:45,732 --> 00:01:48,612 He did this until Sir Robert Peel, then Prime Minister, 47 00:01:48,612 --> 00:01:51,076 basically kicked him out of Number 10 Downing Street, 48 00:01:51,076 --> 00:01:53,517 and kicking him out, in those days, that meant saying, 49 00:01:53,517 --> 00:01:56,669 "I bid you good day, sir." (Laughter) 50 00:01:56,669 --> 00:01:58,649 The thing he designed was this monstrosity here, 51 00:01:58,649 --> 00:02:02,088 the analytical engine. Now, just to give you an idea of this, 52 00:02:02,088 --> 00:02:03,960 this is a view from above. 53 00:02:03,960 --> 00:02:07,073 Every one of these circles is a cog, a stack of cogs, 54 00:02:07,073 --> 00:02:10,309 and this thing is as big as a steam locomotive. 55 00:02:10,309 --> 00:02:12,300 So as I go through this talk, I want you to imagine 56 00:02:12,300 --> 00:02:14,944 this gigantic machine. We heard those wonderful sounds 57 00:02:14,944 --> 00:02:16,704 of what this thing would have sounded like. 58 00:02:16,704 --> 00:02:18,481 And I'm going to take you through the architecture of the machine 59 00:02:18,481 --> 00:02:19,960 — that's why it's computer architecture — 60 00:02:19,960 --> 00:02:23,287 and tell you about this machine, which is a computer. 61 00:02:23,287 --> 00:02:26,690 So let's talk about the memory. The memory 62 00:02:26,690 --> 00:02:28,937 is very like the memory of a computer today, 63 00:02:28,937 --> 00:02:31,639 except it was all made out of metal, 64 00:02:31,639 --> 00:02:35,183 stacks and stacks of cogs, 30 cogs high. 65 00:02:35,183 --> 00:02:37,253 Imagine a thing this high of cogs, 66 00:02:37,253 --> 00:02:39,008 hundreds and hundreds of them, 67 00:02:39,008 --> 00:02:40,898 and they've got numbers on them. 68 00:02:40,898 --> 00:02:43,317 It's a decimal machine. Everything's done in decimal. 69 00:02:43,317 --> 00:02:44,902 And he thought about using binary. The problem 70 00:02:44,902 --> 00:02:46,620 with using binary is that the machine would have been so 71 00:02:46,620 --> 00:02:49,937 tall, it would have been ridiculous. As it is, it's enormous. 72 00:02:49,937 --> 00:02:51,996 So he's got memory. 73 00:02:51,996 --> 00:02:54,403 The memory is this bit over here. 74 00:02:54,403 --> 00:02:56,733 You see it all like this. 75 00:02:56,733 --> 00:03:01,268 This monstrosity over here is the CPU, the chip, if you like. 76 00:03:01,268 --> 00:03:03,518 Of course, it's this big. 77 00:03:03,518 --> 00:03:06,431 Completely mechanical. This whole machine is mechanical. 78 00:03:06,431 --> 00:03:10,572 This is a picture of a prototype for part of the CPU 79 00:03:10,572 --> 00:03:12,711 which is in the Science Museum. 80 00:03:12,711 --> 00:03:16,343 The CPU could do the four fundamental functions of arithmetic -- 81 00:03:16,343 --> 00:03:18,796 so addition, multiplication, subtraction, division -- 82 00:03:18,796 --> 00:03:21,804 which already is a bit of a feat in metal, 83 00:03:21,804 --> 00:03:24,433 but it could also do something that a computer does 84 00:03:24,433 --> 00:03:26,132 and a calculator doesn't: 85 00:03:26,132 --> 00:03:30,070 this machine could look at its own internal memory and make a decision. 86 00:03:30,070 --> 00:03:32,936 It could do the "if then" for basic programmers, 87 00:03:32,936 --> 00:03:35,076 and that fundamentally made it into a computer. 88 00:03:35,076 --> 00:03:39,674 It could compute. It couldn't just calculate. It could do more. 89 00:03:39,674 --> 00:03:42,355 Now, if we look at this, and we stop for a minute, 90 00:03:42,355 --> 00:03:44,226 and we think about chips today, we can't 91 00:03:44,226 --> 00:03:48,041 look inside a silicon chip. It's just so tiny. 92 00:03:48,041 --> 00:03:49,842 Yet if you did, you would see something 93 00:03:49,842 --> 00:03:51,664 very, very similar to this. 94 00:03:51,664 --> 00:03:54,611 There's this incredible complexity in the CPU, 95 00:03:54,611 --> 00:03:57,303 and this incredible regularity in the memory. 96 00:03:57,303 --> 00:03:58,965 If you've ever seen an electron microscope picture, 97 00:03:58,965 --> 00:04:00,934 you'll see this. This all looks the same, 98 00:04:00,934 --> 00:04:03,500 then there's this bit over here which is incredibly complicated. 99 00:04:03,500 --> 00:04:07,483 All this cog wheel mechanism here is doing is what a computer does, 100 00:04:07,483 --> 00:04:09,576 but of course you need to program this thing, and of course, 101 00:04:09,576 --> 00:04:12,601 Babbage used the technology of the day 102 00:04:12,601 --> 00:04:16,247 and the technology that would reappear in the '50s, '60s and '70s, 103 00:04:16,247 --> 00:04:19,116 which is punch cards. This thing over here 104 00:04:19,116 --> 00:04:21,940 is one of three punch card readers in here, 105 00:04:21,940 --> 00:04:25,620 and this is a program in the Science Museum, just 106 00:04:25,620 --> 00:04:30,013 not far from here, created by Charles Babbage, 107 00:04:30,013 --> 00:04:31,881 that is sitting there — you can go see it — 108 00:04:31,881 --> 00:04:34,322 waiting for the machine to be built. 109 00:04:34,322 --> 00:04:37,742 And there's not just one of these, there's many of them. 110 00:04:37,742 --> 00:04:40,832 He prepared programs anticipating this would happen. 111 00:04:40,832 --> 00:04:42,805 Now, the reason they used punch cards was that Jacquard, 112 00:04:42,805 --> 00:04:44,977 in France, had created the Jacquard loom, 113 00:04:44,977 --> 00:04:47,655 which was weaving these incredible patterns controlled by punch cards, 114 00:04:47,655 --> 00:04:50,287 so he was just repurposing the technology of the day, 115 00:04:50,287 --> 00:04:52,392 and like everything else he did, he's using the technology 116 00:04:52,392 --> 00:04:57,139 of his era, so 1830s, 1840s, 1850s, cogs, steam, 117 00:04:57,139 --> 00:05:01,077 mechanical devices. Ironically, born the same year 118 00:05:01,077 --> 00:05:03,249 as Charles Babbage was Michael Faraday, 119 00:05:03,249 --> 00:05:05,926 who would completely revolutionize everything 120 00:05:05,926 --> 00:05:08,439 with the dynamo, transformers, all these sorts of things. 121 00:05:08,439 --> 00:05:11,597 Babbage, of course, wanted to use proven technology, 122 00:05:11,597 --> 00:05:13,150 so steam and things. 123 00:05:13,150 --> 00:05:14,823 Now, he needed accessories. 124 00:05:14,823 --> 00:05:16,495 Obviously, you've got a computer now. 125 00:05:16,495 --> 00:05:18,884 You've got punch cards, a CPU and memory. 126 00:05:18,884 --> 00:05:20,819 You need accessories you're going to come with. 127 00:05:20,819 --> 00:05:22,447 You're not just going to have that, 128 00:05:22,447 --> 00:05:25,275 So, first of all, you had sound. You had a bell, 129 00:05:25,275 --> 00:05:27,429 so if anything went wrong — (Laughter) — 130 00:05:27,429 --> 00:05:29,774 or the machine needed the attendant to come to it, 131 00:05:29,774 --> 00:05:31,744 there was a bell it could ring. (Laughter) 132 00:05:31,744 --> 00:05:33,280 And there's actually an instruction on the punch card 133 00:05:33,280 --> 00:05:36,182 which says "Ring the bell." So you can imagine this "Ting!" 134 00:05:36,182 --> 00:05:38,382 You know, just stop for a moment, imagine all those noises, 135 00:05:38,382 --> 00:05:39,463 this thing, "Click, clack click click click," 136 00:05:39,463 --> 00:05:42,400 steam engine, "Ding," right? (Laughter) 137 00:05:42,400 --> 00:05:44,835 You also need a printer, obviously, and everyone needs a printer. 138 00:05:44,835 --> 00:05:47,843 This is actually a picture of the printing mechanism for 139 00:05:47,843 --> 00:05:50,326 another machine of his, called the Difference Engine No. 2, 140 00:05:50,326 --> 00:05:52,261 which he never built, but which the Science Museum 141 00:05:52,261 --> 00:05:54,432 did build in the '80s and '90s. 142 00:05:54,432 --> 00:05:56,707 It's completely mechanical, again, a printer. 143 00:05:56,707 --> 00:05:59,405 It prints just numbers, because he was obsessed with numbers, 144 00:05:59,405 --> 00:06:02,922 but it does print onto paper, and it even does word wrapping, 145 00:06:02,922 --> 00:06:05,694 so if you get to the end of the line, it goes around like that. 146 00:06:05,694 --> 00:06:07,344 You also need graphics, right? 147 00:06:07,344 --> 00:06:08,900 I mean, if you're going to do anything with graphics, 148 00:06:08,900 --> 00:06:11,496 so he said, "Well, I need a plotter. I've got a big piece of paper 149 00:06:11,496 --> 00:06:13,604 and an ink pen and I'll make it plot." 150 00:06:13,604 --> 00:06:15,434 So he designed a plotter as well, 151 00:06:15,434 --> 00:06:19,359 and, you know, at that point, I think he got pretty much 152 00:06:19,359 --> 00:06:20,890 a pretty good machine. 153 00:06:20,890 --> 00:06:23,580 Along comes this woman, Ada Lovelace. 154 00:06:23,580 --> 00:06:26,301 Now, imagine these soirees, all these great and good comes along. 155 00:06:26,301 --> 00:06:29,393 This lady is the daughter of the mad, bad 156 00:06:29,393 --> 00:06:31,815 and dangerous-to-know Lord Byron, 157 00:06:31,815 --> 00:06:34,335 and her mother, being a bit worried that she might have 158 00:06:34,335 --> 00:06:37,192 inherited some of Lord Byron's madness and badness, 159 00:06:37,192 --> 00:06:40,430 thought, "I know the solution: Mathematics is the solution. 160 00:06:40,430 --> 00:06:43,379 We'll teach her mathematics. That'll calm her down." 161 00:06:43,379 --> 00:06:47,135 (Laughter) Because of course, 162 00:06:47,135 --> 00:06:51,050 there's never been a mathematician that's gone crazy, 163 00:06:51,050 --> 00:06:53,451 so, you know, that'll be fine. (Laughter) 164 00:06:53,451 --> 00:06:56,789 Everything'll be fine. So she's got this mathematical training, 165 00:06:56,789 --> 00:06:59,527 and she goes to one of these soirees with her mother, 166 00:06:59,527 --> 00:07:02,317 and Charles Babbage, you know, gets out his machine. 167 00:07:02,317 --> 00:07:04,151 The Duke of Wellington is there, you know, 168 00:07:04,151 --> 00:07:05,723 get out the machine, obviously demonstrates it, 169 00:07:05,723 --> 00:07:09,474 and she gets it. She's the only person in his lifetime, really, 170 00:07:09,474 --> 00:07:10,766 who said, "I understand what this does, 171 00:07:10,766 --> 00:07:12,973 and I understand the future of this machine." 172 00:07:12,973 --> 00:07:16,060 And we owe to her an enormous amount because we know 173 00:07:16,060 --> 00:07:19,037 a lot about the machine that Babbage was intending to build 174 00:07:19,037 --> 00:07:20,640 because of her. 175 00:07:20,640 --> 00:07:23,397 Now, some people call her the first programmer. 176 00:07:23,397 --> 00:07:26,783 This is actually from one of -- the paper that she translated. 177 00:07:26,783 --> 00:07:29,694 This is a program written in a particular style. 178 00:07:29,694 --> 00:07:33,263 It's not, historically, totally accurate that she's the first programmer, 179 00:07:33,263 --> 00:07:35,316 and actually, she did something more amazing. 180 00:07:35,316 --> 00:07:36,886 Rather than just being a programmer, 181 00:07:36,886 --> 00:07:39,058 she saw something that Babbage didn't. 182 00:07:39,058 --> 00:07:42,242 Babbage was totally obsessed with mathematics. 183 00:07:42,242 --> 00:07:46,191 He was building a machine to do mathematics, 184 00:07:46,191 --> 00:07:49,450 and Lovelace said, "You could do more than mathematics 185 00:07:49,450 --> 00:07:52,285 on this machine." And just as you do, 186 00:07:52,285 --> 00:07:53,910 everyone in this room already's got a computer on them 187 00:07:53,910 --> 00:07:55,964 right now, because they've got a phone. 188 00:07:55,964 --> 00:07:58,192 If you go into that phone, every single thing in that phone 189 00:07:58,192 --> 00:08:00,207 or computer or any other computing device 190 00:08:00,207 --> 00:08:02,288 is mathematics. It's all numbers at the bottom. 191 00:08:02,288 --> 00:08:06,981 Whether it's video or text or music or voice, it's all numbers, 192 00:08:06,981 --> 00:08:10,961 it's all, underlying it, mathematical functions happening, 193 00:08:10,961 --> 00:08:13,066 and Lovelace said, "Just because you're doing 194 00:08:13,066 --> 00:08:16,388 mathematical functions and symbols 195 00:08:16,388 --> 00:08:18,635 doesn't mean these things can't represent 196 00:08:18,635 --> 00:08:21,988 other things in the real world, such as music." 197 00:08:21,988 --> 00:08:24,722 This was a huge leap, because Babbage is there saying, 198 00:08:24,722 --> 00:08:26,944 "We could compute these amazing functions and print out 199 00:08:26,944 --> 00:08:30,612 tables of numbers and draw graphs," — (Laughter) — 200 00:08:30,612 --> 00:08:32,508 and Lovelace is there and she says, "Look, 201 00:08:32,508 --> 00:08:34,984 this thing could even compose music if you 202 00:08:34,984 --> 00:08:38,532 told it a representation of music numerically." 203 00:08:38,532 --> 00:08:40,101 So this is what I call Lovelace's Leap. 204 00:08:40,101 --> 00:08:43,838 When you say she's a programmer, she did do some, 205 00:08:43,838 --> 00:08:46,975 but the real thing is to have said the future is going to be 206 00:08:46,975 --> 00:08:49,171 much, much more than this. 207 00:08:49,171 --> 00:08:51,350 Now, a hundred years later, this guy comes along, 208 00:08:51,350 --> 00:08:56,803 Alan Turing, and in 1936, and invents the computer all over again. 209 00:08:56,803 --> 00:08:59,380 Now, of course, Babbage's machine was entirely mechanical. 210 00:08:59,380 --> 00:09:01,911 Turing's machine was entirely theoretical. 211 00:09:01,911 --> 00:09:04,702 Both of these guys were coming from a mathematical perspective, 212 00:09:04,702 --> 00:09:07,255 but Turing told us something very important. 213 00:09:07,255 --> 00:09:10,190 He laid down the mathematical foundations 214 00:09:10,190 --> 00:09:12,303 for computer science, and said, 215 00:09:12,303 --> 00:09:15,490 "It doesn't matter how you make a computer." 216 00:09:15,490 --> 00:09:17,368 It doesn't matter if your computer's mechanical, 217 00:09:17,368 --> 00:09:21,778 like Babbage's was, or electronic, like computers are today, 218 00:09:21,778 --> 00:09:24,582 or perhaps in the future, cells, or, again, 219 00:09:24,582 --> 00:09:27,728 mechanical again, once we get into nanotechnology. 220 00:09:27,728 --> 00:09:29,765 We could go back to Babbage's machine 221 00:09:29,765 --> 00:09:32,341 and just make it tiny. All those things are computers. 222 00:09:32,341 --> 00:09:33,973 There is in a sense a computing essence. 223 00:09:33,973 --> 00:09:35,978 This is called the Church–Turing thesis. 224 00:09:35,978 --> 00:09:38,645 And so suddenly, you get this link where you say 225 00:09:38,645 --> 00:09:40,868 this thing Babbage had built really was a computer. 226 00:09:40,868 --> 00:09:43,693 In fact, it was capable of doing everything we do today 227 00:09:43,693 --> 00:09:48,525 with computers, only really slowly. (Laughter) 228 00:09:48,525 --> 00:09:50,631 To give you an idea of how slowly, 229 00:09:50,631 --> 00:09:54,470 it had about 1k of memory. 230 00:09:54,470 --> 00:09:57,388 It used punch cards, which were being fed in, 231 00:09:57,388 --> 00:10:03,148 and it ran about 10,000 times slower the first ZX81. 232 00:10:03,148 --> 00:10:04,751 It did have a RAM pack. 233 00:10:04,751 --> 00:10:07,930 You could add on a lot of extra memory if you wanted to. 234 00:10:07,930 --> 00:10:10,256 (Laughter) So, where does that bring us today? 235 00:10:10,256 --> 00:10:11,864 So there are plans. 236 00:10:11,864 --> 00:10:14,797 Over in Swindon, the Science Museum archives, 237 00:10:14,797 --> 00:10:16,491 there are hundreds of plans and thousands of pages 238 00:10:16,491 --> 00:10:19,960 of notes written by Charles Babbage about this analytical engine. 239 00:10:19,960 --> 00:10:23,921 One of those is a set of plans that we call Plan 28, 240 00:10:23,921 --> 00:10:26,075 and that is also the name of a charity that I started 241 00:10:26,075 --> 00:10:28,809 with Doron Swade, who was the curator of computing 242 00:10:28,809 --> 00:10:31,048 at the Science Museum, and also the person who drove 243 00:10:31,048 --> 00:10:32,478 the project to build a difference engine, 244 00:10:32,478 --> 00:10:35,036 and our plan is to build it. 245 00:10:35,036 --> 00:10:38,902 Here in South Kensington, we will build the analytical engine. 246 00:10:38,902 --> 00:10:40,904 The project has a number of parts to it. 247 00:10:40,904 --> 00:10:43,424 One was the scanning of Babbage's archive. 248 00:10:43,424 --> 00:10:45,346 That's been done. The second is now the study 249 00:10:45,346 --> 00:10:48,456 of all of those plans to determine what to build. 250 00:10:48,456 --> 00:10:52,900 The third part is a computer simulation of that machine, 251 00:10:52,900 --> 00:10:55,823 and the last part is to physically build it at the Science Museum. 252 00:10:55,823 --> 00:10:58,399 When it's built, you'll finally be able to understand how a computer works, 253 00:10:58,399 --> 00:11:00,233 because rather than having a tiny chip in front of you, 254 00:11:00,233 --> 00:11:02,843 you've got to look at this humongous thing and say, "Ah, 255 00:11:02,843 --> 00:11:06,178 I see the memory operating, I see the CPU operating, 256 00:11:06,178 --> 00:11:10,045 I hear it operating. I probably smell it operating." (Laughter) 257 00:11:10,045 --> 00:11:12,644 But in between that we're going to do a simulation. 258 00:11:12,644 --> 00:11:14,401 Babbage himself wrote, he said, 259 00:11:14,401 --> 00:11:16,019 as soon as the analytical engine exists, 260 00:11:16,019 --> 00:11:19,723 it will surely guide the future course of science. 261 00:11:19,723 --> 00:11:21,568 Of course, he never built it, because he was always fiddling 262 00:11:21,568 --> 00:11:23,650 with new plans, but when it did get built, of course, 263 00:11:23,650 --> 00:11:27,160 in the 1940s, everything changed. 264 00:11:27,160 --> 00:11:28,983 Now, I'll just give you a little taste of what it looks like 265 00:11:28,983 --> 00:11:31,616 in motion with a video which shows 266 00:11:31,616 --> 00:11:36,210 just one part of the CPU mechanism working. 267 00:11:39,210 --> 00:11:42,209 So this is just three sets of cogs, 268 00:11:42,209 --> 00:11:45,031 and it's going to add. This is the adding mechanism 269 00:11:45,031 --> 00:11:47,688 in action, so you imagine this gigantic machine. 270 00:11:47,688 --> 00:11:48,847 So, give me five years. 271 00:11:48,847 --> 00:11:51,191 Before the 2030s happen, we'll have it. 272 00:11:51,191 --> 00:11:54,161 Thank you very much. (Applause)