1 00:00:00,000 --> 00:00:03,888 >> [THEME MUSIC PLAYING] 2 00:00:03,888 --> 00:00:17,705 3 00:00:17,705 --> 00:00:18,830 DAVID J MALAN: Hello world. 4 00:00:18,830 --> 00:00:20,640 This is CS50Live. 5 00:00:20,640 --> 00:00:23,900 So it's been brought to my attention that over the past few episodes 6 00:00:23,900 --> 00:00:28,370 I may have said a few things that are incorrect. 7 00:00:28,370 --> 00:00:31,400 Well, among the first for instance, was that this popular website 8 00:00:31,400 --> 00:00:33,233 we've been using for the courses discussions 9 00:00:33,233 --> 00:00:34,710 is not in fact called Redder. 10 00:00:34,710 --> 00:00:36,940 It's apparently called Reddit. 11 00:00:36,940 --> 00:00:41,150 >> Meanwhile, it is the case that for quite some time the United States was using 12 00:00:41,150 --> 00:00:45,700 00000000 to protect its missiles. 13 00:00:45,700 --> 00:00:50,650 However those missiles were nuclear, and not apparently, "nuke-you-ler." 14 00:00:50,650 --> 00:00:51,300 >> Meanwhile. 15 00:00:51,300 --> 00:00:52,050 I love you. 16 00:00:52,050 --> 00:00:55,820 This is indeed currently, supposedly, the most popular password 17 00:00:55,820 --> 00:00:57,200 right now for people to be using. 18 00:00:57,200 --> 00:01:01,140 But this-- if we zoom in-- is not in fact how you make a heart. 19 00:01:01,140 --> 00:01:05,560 >> Lastly, CS50's own Shelley Westover, whom you may remember from such films 20 00:01:05,560 --> 00:01:08,420 as this one, noted that she is not in fact 21 00:01:08,420 --> 00:01:11,860 a camera "operater" but a camera operator. 22 00:01:11,860 --> 00:01:14,750 Now speaking of camera operators, the team 23 00:01:14,750 --> 00:01:17,526 has graciously allowed me to borrow this camera today, 24 00:01:17,526 --> 00:01:19,400 so that we can take a look at what's actually 25 00:01:19,400 --> 00:01:21,590 going on all this time behind the scenes. 26 00:01:21,590 --> 00:01:26,090 So if you will, shall we go ahead and take a tour of the studio? 27 00:01:26,090 --> 00:01:29,880 We're here in beautiful Hauser Studio, in Widener Library. 28 00:01:29,880 --> 00:01:32,840 Against the backdrop here is this green screen, otherwise known 29 00:01:32,840 --> 00:01:35,660 as a chroma-key, or cyc wall physically. 30 00:01:35,660 --> 00:01:37,410 And in fact, if I walk up closely to this, 31 00:01:37,410 --> 00:01:41,920 notice how the ball has a slight curve to it rather than a normal sharp angle. 32 00:01:41,920 --> 00:01:43,930 That allows us to keep shadows off of the edges, 33 00:01:43,930 --> 00:01:46,760 and it also allows us to make sure that we can superimpose 34 00:01:46,760 --> 00:01:49,100 almost anything we want nice and cleanly. 35 00:01:49,100 --> 00:01:51,390 >> Now up here is a whole bunch of lights controlled 36 00:01:51,390 --> 00:01:55,670 by a main panel of switches which we'll see in just a little bit. 37 00:01:55,670 --> 00:01:59,560 Up here is an LED light with so-called Barn Doors on it. 38 00:01:59,560 --> 00:02:01,550 This is what casts very directed light. 39 00:02:01,550 --> 00:02:03,590 Really gives me my glow during the show. 40 00:02:03,590 --> 00:02:07,430 And then over here we have a fluorescent light, which casts softer light. 41 00:02:07,430 --> 00:02:09,440 Now both of these are cheaper to operate, 42 00:02:09,440 --> 00:02:12,330 and a lot cooler to operate than more traditional incandescent bulbs 43 00:02:12,330 --> 00:02:14,750 that a lot of folks still tend to have in their homes. 44 00:02:14,750 --> 00:02:16,864 Now if we turn around here, you'll see what I see. 45 00:02:16,864 --> 00:02:19,280 So we have a couple of our cameras over here, one of which 46 00:02:19,280 --> 00:02:20,840 has a teleprompter on it. 47 00:02:20,840 --> 00:02:23,520 >> We actually don't really use a teleprompter in CS50Live, 48 00:02:23,520 --> 00:02:26,800 but for the shorts, against those white backdrops that you may recall, 49 00:02:26,800 --> 00:02:28,180 we actually use them quite a bit. 50 00:02:28,180 --> 00:02:31,013 Spending quite a bit of time in advance scripting the material so as 51 00:02:31,013 --> 00:02:32,240 to get it just right. 52 00:02:32,240 --> 00:02:36,264 >> Now over here, you'll actually see a camera up on the ceiling. 53 00:02:36,264 --> 00:02:37,180 Let's zoom in on that. 54 00:02:37,180 --> 00:02:39,430 That's the so-called bump cam that gets those shots 55 00:02:39,430 --> 00:02:42,310 that you see at the very beginning or the very end of CS50Live. 56 00:02:42,310 --> 00:02:43,950 And it's hard to see in the lighting up there, 57 00:02:43,950 --> 00:02:45,824 but it's actually hung upside down, and we're 58 00:02:45,824 --> 00:02:50,270 able to fix in software after the fact by flipping it vertically. 59 00:02:50,270 --> 00:02:54,600 >> Now-- hi [? Andrea-- ?] over here, let's head over to that light panel 60 00:02:54,600 --> 00:02:56,180 that I mentioned earlier. 61 00:02:56,180 --> 00:02:58,390 This light panel has a whole bunch of switches, 62 00:02:58,390 --> 00:03:01,430 and they hate it when I actually do this, 63 00:03:01,430 --> 00:03:05,600 but we can actually throw some lights up and down here. 64 00:03:05,600 --> 00:03:09,160 I can't quite see the effect, but we're kind of wreaking havoc on our cameras 65 00:03:09,160 --> 00:03:09,660 right now. 66 00:03:09,660 --> 00:03:12,465 But let's fix this. 67 00:03:12,465 --> 00:03:14,810 Oh boy, let's move on. 68 00:03:14,810 --> 00:03:18,910 >> So in here is the closet in which all of the studios wires 69 00:03:18,910 --> 00:03:19,850 are ultimately routed. 70 00:03:19,850 --> 00:03:22,016 And this is sort of the brains behind the operation, 71 00:03:22,016 --> 00:03:23,710 behind the scenes, huge fans in here. 72 00:03:23,710 --> 00:03:27,972 In fact, if I lean in you can hear quite a bit of noise. 73 00:03:27,972 --> 00:03:30,430 So there's actually quite a bit of insulation on these wall 74 00:03:30,430 --> 00:03:33,054 so as to keep that noise out when we do in fact shut the doors. 75 00:03:33,054 --> 00:03:36,870 But way up there you can see all the cables coming in and out of the closet. 76 00:03:36,870 --> 00:03:39,070 And over here you can see a copy of the teleprompter 77 00:03:39,070 --> 00:03:41,370 that we saw just a moment ago. 78 00:03:41,370 --> 00:03:44,070 >> Alright, let's head into the so-called control room. 79 00:03:44,070 --> 00:03:46,770 So over here, I still don't quite understand this one, 80 00:03:46,770 --> 00:03:49,300 this is where we keep our flammables apparently. 81 00:03:49,300 --> 00:03:51,760 But over here we have a whole bunch of workstations 82 00:03:51,760 --> 00:03:54,750 where the CS50's team and other HarvardX teams work. 83 00:03:54,750 --> 00:03:57,510 And over here we have our audio station. 84 00:03:57,510 --> 00:03:59,580 Let's take a look. 85 00:03:59,580 --> 00:04:01,140 Hey Patrick. 86 00:04:01,140 --> 00:04:03,820 So here we again have a whole bunch of dials 87 00:04:03,820 --> 00:04:06,430 we can move up and down to actually change the levels. 88 00:04:06,430 --> 00:04:07,264 This time for audio. 89 00:04:07,264 --> 00:04:10,346 And in fact, if I do this here-- I'm going to slowly bring down this audio 90 00:04:10,346 --> 00:04:13,800 level, and I'm going to keep talking in this usual voice of mine here in Hauser 91 00:04:13,800 --> 00:04:16,790 Studio for CS50 live, and at some point you're not going to be-- 92 00:04:16,790 --> 00:04:19,200 >> [VOLUME LOWERS UNTIL VOICE IS INAUDIBLE.] 93 00:04:19,200 --> 00:04:22,054 >> Now if I raise it back up you'll start to hear my voice again. 94 00:04:22,054 --> 00:04:23,970 Now, you don't have to do everything manually. 95 00:04:23,970 --> 00:04:25,178 In fact we have some presets. 96 00:04:25,178 --> 00:04:28,407 So if I go over here to the Layer menu, I can actually toggle between 1 97 00:04:28,407 --> 00:04:31,436 in 16 and 7 in 32, and you'll see this happen. 98 00:04:31,436 --> 00:04:32,310 Actually pretty neat. 99 00:04:32,310 --> 00:04:35,240 I do this quite a bit as well-- watching. 100 00:04:35,240 --> 00:04:39,070 >> Anyhow, let's move over here and you'll see a whole bank of hard drives, 101 00:04:39,070 --> 00:04:39,570 really. 102 00:04:39,570 --> 00:04:42,830 These are all SSD's that you might have in today's laptops, and even 103 00:04:42,830 --> 00:04:43,876 some in today's desktops. 104 00:04:43,876 --> 00:04:46,000 And they store things like this-- which is actually 105 00:04:46,000 --> 00:04:49,445 just a hard drive, which is about 500 gigs in SSD. 106 00:04:49,445 --> 00:04:51,372 And you can see the interface there via which 107 00:04:51,372 --> 00:04:52,830 it connects to the innards of that. 108 00:04:52,830 --> 00:04:55,390 This is where all of our footage is ultimately stored, 109 00:04:55,390 --> 00:04:59,110 from one or more cameras that we might be using for a particular shoot. 110 00:04:59,110 --> 00:05:04,050 >> Now over here-- Oh, Hey Ramon. 111 00:05:04,050 --> 00:05:04,776 Thanks. 112 00:05:04,776 --> 00:05:06,900 Ramon's never really given me much attention there, 113 00:05:06,900 --> 00:05:08,170 but we'll just move on. 114 00:05:08,170 --> 00:05:11,570 If Ramon-- if I could take a look over here, we have a whole bunch of buttons 115 00:05:11,570 --> 00:05:12,819 that we can play with as well. 116 00:05:12,819 --> 00:05:16,500 And meanwhile there's a whole bunch of displays up here 117 00:05:16,500 --> 00:05:18,780 on two massive, big screens. 118 00:05:18,780 --> 00:05:22,000 And this is really like the innards of a television studio. 119 00:05:22,000 --> 00:05:24,020 All of the video signals come in here, and what 120 00:05:24,020 --> 00:05:26,940 we're able to do by touching the switches and dials is actually 121 00:05:26,940 --> 00:05:28,385 produce a show in real time. 122 00:05:28,385 --> 00:05:30,510 So for instance, we have this little throttle here, 123 00:05:30,510 --> 00:05:31,760 like you might see in a plane. 124 00:05:31,760 --> 00:05:35,740 If I start to gain this back, notice what happens on the two images 125 00:05:35,740 --> 00:05:36,800 up there. 126 00:05:36,800 --> 00:05:40,310 Fading between the two, and so we've gone from one to the other. 127 00:05:40,310 --> 00:05:43,490 And if I push that back up, now we've got back the original images. 128 00:05:43,490 --> 00:05:46,570 >> Meanwhile this joystick over here, like an old arcade console, 129 00:05:46,570 --> 00:05:49,170 allows us to do this with that bump cam. 130 00:05:49,170 --> 00:05:51,080 And there we go, there we go, there we go. 131 00:05:51,080 --> 00:05:54,992 And now we have fixed that-- pretty much good enough 132 00:05:54,992 --> 00:05:56,200 for the purposes of the show. 133 00:05:56,200 --> 00:05:59,710 >> Now finally-- sorry Ramon-- we also have some buttons here. 134 00:05:59,710 --> 00:06:04,280 DDR2, of my favorite games perhaps, and if I hit this, we now get this effect. 135 00:06:04,280 --> 00:06:07,190 You might recall that from episode two of CS50Live. 136 00:06:07,190 --> 00:06:11,430 If we push on title, this is what we can hit if anything actually goes wrong, 137 00:06:11,430 --> 00:06:12,890 we're getting that screen there. 138 00:06:12,890 --> 00:06:19,620 And now lastly, I think it's time for 60 seconds of Rob. 139 00:06:19,620 --> 00:06:21,520 Oh, son of a-- 140 00:06:21,520 --> 00:06:24,520 >> [BASS GUITAR PLAYS] 141 00:06:24,520 --> 00:06:29,632 142 00:06:29,632 --> 00:06:30,340 ROB: Oh, come on! 143 00:06:30,340 --> 00:06:31,810 Just use some animal video! 144 00:06:31,810 --> 00:06:34,780 >> [MUSIC PLAYS] 145 00:06:34,780 --> 00:06:46,030 146 00:06:46,030 --> 00:06:47,300 >> [WOMAN SPEAKING JAPANESE] 147 00:06:47,300 --> 00:07:09,150 148 00:07:09,150 --> 00:07:11,410 >> Recently in the news was an article about CS50 149 00:07:11,410 --> 00:07:13,500 in a popular website known as Life Hacker. 150 00:07:13,500 --> 00:07:16,990 Now one of your classmates, Annabel from Australia, came across that article 151 00:07:16,990 --> 00:07:18,880 and in turn CS50 itself. 152 00:07:18,880 --> 00:07:24,035 She's now enrolled in the class and she would like to say hello. 153 00:07:24,035 --> 00:07:24,910 ANNABEL: Hello world. 154 00:07:24,910 --> 00:07:29,020 My name is Annabel, and I'm from Queensland, Australia. 155 00:07:29,020 --> 00:07:33,430 The reason I'm taking this class is because I saw a post on Life Hacker, 156 00:07:33,430 --> 00:07:37,740 and knew that this was the key to bridge the gap between being a newbie, 157 00:07:37,740 --> 00:07:40,510 and a future in CS. 158 00:07:40,510 --> 00:07:45,320 Taking this course will also be a bridge in many directions for my autistic son 159 00:07:45,320 --> 00:07:48,440 who loves IT. 160 00:07:48,440 --> 00:07:51,105 I'm also hoping that by the end to create 161 00:07:51,105 --> 00:07:54,340 programs to assist my dyslexic daughter. 162 00:07:54,340 --> 00:07:56,764 Currently I am an accountant, with a heavy interest 163 00:07:56,764 --> 00:08:00,300 in technology, real estate, gardening, and instrumental music. 164 00:08:00,300 --> 00:08:03,133 165 00:08:03,133 --> 00:08:08,098 My name is Annabel, and this is CS50. 166 00:08:08,098 --> 00:08:10,500 >> SPEAKER: Allow me next to introduce Betty, 167 00:08:10,500 --> 00:08:13,057 who would also like to say hello. 168 00:08:13,057 --> 00:08:13,890 BETTY: Hello, world. 169 00:08:13,890 --> 00:08:16,730 My name is Betty, and I'm from southern California. 170 00:08:16,730 --> 00:08:19,290 I'm taking this course because our society today 171 00:08:19,290 --> 00:08:21,910 seems to be geared towards programming. 172 00:08:21,910 --> 00:08:24,625 Programming is becoming essential for our lives. 173 00:08:24,625 --> 00:08:26,750 And actually, I think it's already essentially now, 174 00:08:26,750 --> 00:08:29,800 because a lot of the things that we use have to incorporate programming 175 00:08:29,800 --> 00:08:31,840 in order for them to be created. 176 00:08:31,840 --> 00:08:37,012 Basically, we are going to be geared towards a future filled 177 00:08:37,012 --> 00:08:38,720 with technology, and programming is going 178 00:08:38,720 --> 00:08:40,909 to be an essential part of that future. 179 00:08:40,909 --> 00:08:43,909 So I think it's something that's really cool, 180 00:08:43,909 --> 00:08:46,370 and that I should probably get to learning it. 181 00:08:46,370 --> 00:08:50,170 So yeah, my name is Betty, and this is CS50. 182 00:08:50,170 --> 00:08:51,920 DAVID J MALAN: Pictured here meanwhile, is 183 00:08:51,920 --> 00:08:55,150 Raja from India, who has gotten so immersed in CS50 184 00:08:55,150 --> 00:08:58,410 that he apparently had it tattooed on his skin. 185 00:08:58,410 --> 00:08:59,370 >> And now, a tweet. 186 00:08:59,370 --> 00:09:03,280 This one from Carter in Virginia, who wrote us with this-- "Consentino and I 187 00:09:03,280 --> 00:09:06,860 are making good use of my snow day watching week one of Harvard's CS50 188 00:09:06,860 --> 00:09:09,800 on TV via Chromecast and YouTube." 189 00:09:09,800 --> 00:09:10,780 Who is Consentino? 190 00:09:10,780 --> 00:09:13,840 Well, apparently he's his cat, but indeed, pictured here along 191 00:09:13,840 --> 00:09:17,047 with Carter's feet, is a big screen TV in the background. 192 00:09:17,047 --> 00:09:19,130 And apparently there are indeed using a Chromecast 193 00:09:19,130 --> 00:09:22,937 to project CS50's week one onto that big screen TV wirelessly. 194 00:09:22,937 --> 00:09:26,020 Now Chromecast, if you're not familiar, is actually kind of a neat device. 195 00:09:26,020 --> 00:09:29,420 It's a fairly inexpensive plug that you can put into the back of your computer 196 00:09:29,420 --> 00:09:31,090 into an HDMI port. 197 00:09:31,090 --> 00:09:34,860 It has Wi-Fi access, and essentially allows you to stream wireless 198 00:09:34,860 --> 00:09:38,650 content from your laptop onto your TV, or even control your TV 199 00:09:38,650 --> 00:09:41,894 and download content like videos directly to it. 200 00:09:41,894 --> 00:09:44,560 And now a note from Mohamed, one of your classmates in Pakistan, 201 00:09:44,560 --> 00:09:47,620 who recently discovered this curiosity-- apparently 202 00:09:47,620 --> 00:09:50,060 if you go to google.com on occasion and search 203 00:09:50,060 --> 00:09:53,860 for me, David J. Malan, apparently this guy comes up once in awhile. 204 00:09:53,860 --> 00:09:56,830 David H. Malan, who's apparently a British psychotherapist who 205 00:09:56,830 --> 00:09:59,041 looks an awful lot like me. 206 00:09:59,041 --> 00:10:01,040 Now it turns out if you click this feedback link 207 00:10:01,040 --> 00:10:03,600 in the bottom corner you can actually report a problem, 208 00:10:03,600 --> 00:10:05,170 as things being wrong to Google. 209 00:10:05,170 --> 00:10:07,560 And let me-- since we are on the internet 210 00:10:07,560 --> 00:10:10,910 here-- if you can help a guy out, and actually click that wrong link up top, 211 00:10:10,910 --> 00:10:14,680 and just mention that David H. Malan is not in fact David J. Malan. 212 00:10:14,680 --> 00:10:17,550 >> Now to be fair, there probably is a David H. Malan, 213 00:10:17,550 --> 00:10:19,550 and he probably is a British psychotherapist, 214 00:10:19,550 --> 00:10:21,840 so let's not report anything else as wrong, 215 00:10:21,840 --> 00:10:25,240 but just that photo has probably been chosen algorithmically 216 00:10:25,240 --> 00:10:27,480 incorrectly by Google's servers. 217 00:10:27,480 --> 00:10:32,179 >> And now a hello from CS50's friend, Professor Harry Lewis. 218 00:10:32,179 --> 00:10:34,720 Professor Harry Lewis was actually my own professor years ago 219 00:10:34,720 --> 00:10:38,170 when I took an intensive course in Theory of Computation. 220 00:10:38,170 --> 00:10:42,600 A theory course in which you explore the fundamental limits of computation, 221 00:10:42,600 --> 00:10:45,350 and exactly what computers can and cannot do. 222 00:10:45,350 --> 00:10:47,910 We recently visited Professor Lewis in his office 223 00:10:47,910 --> 00:10:50,665 to take a look at some technologies past. 224 00:10:50,665 --> 00:10:53,790 PROFESSOR HARRY LEWIS: I'm Harry Lewis, I'm a professor of Computer Science 225 00:10:53,790 --> 00:10:55,060 here at Harvard. 226 00:10:55,060 --> 00:11:01,890 I came to Harvard in 1964 as a freshman, and except for three years 227 00:11:01,890 --> 00:11:04,525 off during the Vietnam War I've been here ever since. 228 00:11:04,525 --> 00:11:08,870 So I now head the undergraduate program in computer science, 229 00:11:08,870 --> 00:11:12,520 and I've taught lots of different courses over the years. 230 00:11:12,520 --> 00:11:14,870 And I'd like to tell you a little bit about some 231 00:11:14,870 --> 00:11:19,530 of the interesting things that have gone on a Harvard, of which I 232 00:11:19,530 --> 00:11:22,110 have had some contact over the years. 233 00:11:22,110 --> 00:11:27,070 >> Her's my undergraduate thesis, in 1968, which 234 00:11:27,070 --> 00:11:30,610 I wrote a two dimensional programming language. 235 00:11:30,610 --> 00:11:36,555 This is a core memory plane, those are a little magnetic doughnuts 236 00:11:36,555 --> 00:11:39,080 that are strung on the intersections of wires. 237 00:11:39,080 --> 00:11:44,320 And this was the way memory was done before semiconductors 238 00:11:44,320 --> 00:11:47,560 became a viable technology. 239 00:11:47,560 --> 00:11:52,900 This is a early 15 gigabyte iPod, which I keep around 240 00:11:52,900 --> 00:11:56,200 not because anyone's impressed with having a 15 gigabyte iPod, 241 00:11:56,200 --> 00:12:00,740 but because this is a 70 megabyte drive, and they 242 00:12:00,740 --> 00:12:05,820 went in disk drives that were about the size of washing machines. 243 00:12:05,820 --> 00:12:07,820 So that was only 70 megabytes of memory, that 244 00:12:07,820 --> 00:12:10,359 gives you some sense of how things have scaled. 245 00:12:10,359 --> 00:12:11,900 DAVID J MALAN: And now another tweet. 246 00:12:11,900 --> 00:12:13,820 This one from William in the United Kingdom 247 00:12:13,820 --> 00:12:17,750 who wrote, "David J. Malan, after a bit of Google stalking, it turns out Rob 248 00:12:17,750 --> 00:12:19,060 has a twin brother. 249 00:12:19,060 --> 00:12:21,830 Can we put him in CS50Live and play spot the difference?" 250 00:12:21,830 --> 00:12:23,690 So William, this is indeed the case. 251 00:12:23,690 --> 00:12:26,660 CS50's own Rob Bowden does have a twin brother. 252 00:12:26,660 --> 00:12:31,620 In fact, here is Rob and Paul-- or Paul and-- pictured here 253 00:12:31,620 --> 00:12:35,280 are two Bowdens, both of whom have actually TFed for CS50 in the past, 254 00:12:35,280 --> 00:12:38,050 and indeed Rob is now on CS50's full time team. 255 00:12:38,050 --> 00:12:40,510 >> Now, we too did bit of Google stalking, and it turns out 256 00:12:40,510 --> 00:12:43,310 that twin brother Paul has his own YouTube 257 00:12:43,310 --> 00:12:46,410 channel in which he fancies himself a bit of a comedian. 258 00:12:46,410 --> 00:12:47,548 Let's take a look. 259 00:12:47,548 --> 00:12:49,940 >> PAUL BOWDEN: Hey guys. 260 00:12:49,940 --> 00:12:51,460 Paul Bowden here again. 261 00:12:51,460 --> 00:12:54,900 I'm back with my second try at stand up. 262 00:12:54,900 --> 00:12:58,910 Yes, I do know that I'm sitting down. 263 00:12:58,910 --> 00:13:02,810 The first time didn't go as well as I had hoped for, 264 00:13:02,810 --> 00:13:05,840 but I took the advice that you guys offered, 265 00:13:05,840 --> 00:13:10,290 and this time I'm going to be a little less awkward, and a little better 266 00:13:10,290 --> 00:13:13,326 on the joke front. 267 00:13:13,326 --> 00:13:16,450 DAVID J MALAN: Now if you'd like to subscribe to Paul's channel on YouTube, 268 00:13:16,450 --> 00:13:20,070 and you should, head to this URL here. 269 00:13:20,070 --> 00:13:23,390 Now brother Rob is of course very proud of his twin brother. 270 00:13:23,390 --> 00:13:27,980 In fact, pictured here is Rob as an animated GIF doing a fist pump. 271 00:13:27,980 --> 00:13:31,360 Now this has actually been circulated on the internet quite a bit. 272 00:13:31,360 --> 00:13:33,240 So if you Google around for this image here, 273 00:13:33,240 --> 00:13:36,110 you can even make this your wallpaper if you would like. 274 00:13:36,110 --> 00:13:37,130 And you should. 275 00:13:37,130 --> 00:13:41,390 >> Now Rob here was cheering his brother on in a popular American game 276 00:13:41,390 --> 00:13:43,232 show in which Paul was a participant. 277 00:13:43,232 --> 00:13:44,440 Now, what game show was that? 278 00:13:44,440 --> 00:13:46,148 Well we'll leave it to you, the internet, 279 00:13:46,148 --> 00:13:49,210 to figure out exactly what game show Paul Bowden participated on, 280 00:13:49,210 --> 00:13:53,140 and if you can find that out, let us know at Facebook, Reddit, or Twitter, 281 00:13:53,140 --> 00:13:57,510 and we'll see if we can't show a little clip in the next CS50Live. 282 00:13:57,510 --> 00:13:59,330 >> And now a piece of hardware. 283 00:13:59,330 --> 00:14:02,080 As you may have heard, CS50 in some of it's on campus sections 284 00:14:02,080 --> 00:14:04,060 uses a piece of hardware known as the Arduino. 285 00:14:04,060 --> 00:14:06,194 Pictured here for instance, is the Arduino Uno, 286 00:14:06,194 --> 00:14:08,610 a little circuit board that you can connect to a computer, 287 00:14:08,610 --> 00:14:11,010 and then actually program it by writing C+ code, 288 00:14:11,010 --> 00:14:14,710 and then burning it into the hardware so that it can actually execute programs. 289 00:14:14,710 --> 00:14:17,140 Now one of your classmates here, Areor, decided 290 00:14:17,140 --> 00:14:20,110 to wire up an Arduino Uno to his computer 291 00:14:20,110 --> 00:14:24,350 and then implement, if you can believe it, Problem Set 2's Caesar. 292 00:14:24,350 --> 00:14:27,030 >> Now we don't have any audio in this video, but let's zoom in 293 00:14:27,030 --> 00:14:28,755 and take a look at the end result. 294 00:14:28,755 --> 00:14:43,112 295 00:14:43,112 --> 00:14:45,570 Now if you are a Redditer, you might have noticed this post 296 00:14:45,570 --> 00:14:49,290 a couple of weeks ago advertising episode two of CS50Live. 297 00:14:49,290 --> 00:14:52,900 Now one of your classmates, Louis from Montreal, Canada, after that episode 298 00:14:52,900 --> 00:14:55,556 kindly posted, "Wow, that one was historical." 299 00:14:55,556 --> 00:15:00,600 Only to correct himself a few minutes later with edit-- "hysterical, HA HA." 300 00:15:00,600 --> 00:15:02,410 So we'll take it either way, but what was 301 00:15:02,410 --> 00:15:05,130 funnier than that, is that Chris from Toronto, Canada 302 00:15:05,130 --> 00:15:08,290 then followed up with as follows, "It would be hysterical 303 00:15:08,290 --> 00:15:12,670 if the next episode was historical as a result of the production staff seeing 304 00:15:12,670 --> 00:15:13,490 this comment." 305 00:15:13,490 --> 00:15:16,800 Well indeed we did, and now some more history. 306 00:15:16,800 --> 00:15:18,360 >> We pulled this up from the archives. 307 00:15:18,360 --> 00:15:22,700 This is in a magazine, Popular Electronics, an issue from 1975, 308 00:15:22,700 --> 00:15:25,850 which bore this headline, World's First Minicomputer Kit 309 00:15:25,850 --> 00:15:27,440 to Rival Commercial Models. 310 00:15:27,440 --> 00:15:29,050 The Altair 8800. 311 00:15:29,050 --> 00:15:31,940 Now at the time there wasn't really a programming language 312 00:15:31,940 --> 00:15:35,110 with which you could make this machine solve problems very easily, 313 00:15:35,110 --> 00:15:36,930 and so a young Harvard student at the time 314 00:15:36,930 --> 00:15:39,810 named Bill Gates decided with some friends of his 315 00:15:39,810 --> 00:15:43,700 to write the first interpreter for programming language, known as basic, 316 00:15:43,700 --> 00:15:45,900 with which to drive this piece of hardware. 317 00:15:45,900 --> 00:15:48,220 We took a stroll recently with Professor Harry Lewis 318 00:15:48,220 --> 00:15:51,040 to Maxwell Dworkin, Harvard's computer science building, where 319 00:15:51,040 --> 00:15:55,170 the source code for that original BASIC interpreter still hangs. 320 00:15:55,170 --> 00:15:57,162 And we ask him if he could give us a tour. 321 00:15:57,162 --> 00:15:58,870 PROFESSOR HARRY LEWIS: What you have here 322 00:15:58,870 --> 00:16:03,780 is a listing of an early piece of software 323 00:16:03,780 --> 00:16:08,470 written by Bill Gates and Paul Allen, the founders of Microsoft. 324 00:16:08,470 --> 00:16:10,790 So the code is interesting for two reasons. 325 00:16:10,790 --> 00:16:13,720 First of all it became Microsoft's first product, 326 00:16:13,720 --> 00:16:20,080 which was an interpreter for the basic programming language. 327 00:16:20,080 --> 00:16:23,190 And secondly, this was one of the first attempts 328 00:16:23,190 --> 00:16:28,840 to create an interpreter so ordinary people could use personal computers. 329 00:16:28,840 --> 00:16:30,900 So Bill Gates was an undergraduate at Harvard. 330 00:16:30,900 --> 00:16:33,070 I started teaching at Harvard in 1974. 331 00:16:33,070 --> 00:16:38,390 This was done in 1975, so it was early in his career and early in my career. 332 00:16:38,390 --> 00:16:42,040 I actually taught Bill in a course around this time. 333 00:16:42,040 --> 00:16:45,380 Paul Allen was not a Harvard student, but he 334 00:16:45,380 --> 00:16:49,200 had been a high school classmate of Bill Gates. 335 00:16:49,200 --> 00:16:51,990 >> If you come and look at the listing, you'll 336 00:16:51,990 --> 00:16:56,600 actually find a third name, Monte Davidoff, who was Gates' classmate here 337 00:16:56,600 --> 00:16:57,500 at Harvard. 338 00:16:57,500 --> 00:16:59,600 OK, so here's an interesting comment up here. 339 00:16:59,600 --> 00:17:05,400 It says, "In 4k can delete square root but for loops should still work." 340 00:17:05,400 --> 00:17:11,310 OK, so what that means is that there was two ways to compile this program. 341 00:17:11,310 --> 00:17:16,140 One was to run on a version of this Altair computer 342 00:17:16,140 --> 00:17:19,339 that only had 4K words of memory. 343 00:17:19,339 --> 00:17:22,430 4,096 words of memory. 344 00:17:22,430 --> 00:17:28,020 But the big version had 8 K, and so what this says is that in the 4K version 345 00:17:28,020 --> 00:17:31,030 you had to delete some code to make it fit. 346 00:17:31,030 --> 00:17:33,050 And one of the things that would be deleted 347 00:17:33,050 --> 00:17:37,960 would be the square root routine, but apparently the for loops 348 00:17:37,960 --> 00:17:41,220 should still work, even when you're compiling down 349 00:17:41,220 --> 00:17:46,150 for just the 4K version of the kit computer. 350 00:17:46,150 --> 00:17:49,750 >> Now if you zoom in on that source code you may have noticed a familiar name. 351 00:17:49,750 --> 00:17:52,280 Indeed, User Holloway was the individual who 352 00:17:52,280 --> 00:17:56,282 printed this source code in April of 1975. 353 00:17:56,282 --> 00:17:59,240 Now those of you who've asked questions, perhaps on Reddit or elsewhere 354 00:17:59,240 --> 00:18:03,274 for CS50, might have come across Glenn Holloway, one of CS50's team members 355 00:18:03,274 --> 00:18:05,440 who has actually been with the course for some time, 356 00:18:05,440 --> 00:18:09,160 and very graciously offers quite often to help students via the internet 357 00:18:09,160 --> 00:18:11,140 with any problems that they might solve. 358 00:18:11,140 --> 00:18:13,770 And indeed, it seems he was doing that even in yesteryear 359 00:18:13,770 --> 00:18:16,320 when this source code needed to be printed out. 360 00:18:16,320 --> 00:18:20,240 >> Now let's fast to present day, in fact this is truly breaking news. 361 00:18:20,240 --> 00:18:23,577 Recently revealed was this project tango, an initiative by Google 362 00:18:23,577 --> 00:18:25,660 and a number of other companies to actually create 363 00:18:25,660 --> 00:18:28,830 software with which you can use a phone or similar wireless device 364 00:18:28,830 --> 00:18:31,150 and walk around your physical environment 365 00:18:31,150 --> 00:18:34,960 and actually make a 3D model of it-- which typically is incredibly time 366 00:18:34,960 --> 00:18:36,340 consuming and/or expensive. 367 00:18:36,340 --> 00:18:40,350 And yet, with today's technology you might soon be doing this yourself, 368 00:18:40,350 --> 00:18:43,150 and you might soon be writing software yourself with which 369 00:18:43,150 --> 00:18:44,930 to leverage this new technique. 370 00:18:44,930 --> 00:18:45,680 Let's take a look. 371 00:18:45,680 --> 00:18:49,530 372 00:18:49,530 --> 00:18:52,540 >> JOHNNY LEE: My name is Johnny Lee, and I work in the advanced technology 373 00:18:52,540 --> 00:18:54,560 and projects group at Google. 374 00:18:54,560 --> 00:18:56,690 Our small team here, based in California, 375 00:18:56,690 --> 00:19:01,200 has been working with universities, research labs, and industrial partners 376 00:19:01,200 --> 00:19:05,220 to harvest the last 10 years of research in robotics and computer vision 377 00:19:05,220 --> 00:19:09,260 to concentrate that technology into a very unique mobile phone. 378 00:19:09,260 --> 00:19:14,100 We are physical beings that live in a 3D world, 379 00:19:14,100 --> 00:19:17,690 yet mobile devices today assume that the physical world 380 00:19:17,690 --> 00:19:19,820 ends at the boundaries of the screen. 381 00:19:19,820 --> 00:19:23,010 Our goal is to give mobile devices a human scale 382 00:19:23,010 --> 00:19:24,665 understanding of space and motion. 383 00:19:24,665 --> 00:19:26,540 EITAN MARDER-EPPSTEIN: This is going to allow 384 00:19:26,540 --> 00:19:28,480 people to interact with their environment 385 00:19:28,480 --> 00:19:30,360 in just a fundamentally different way. 386 00:19:30,360 --> 00:19:33,330 We can prototype in a couple hours something that 387 00:19:33,330 --> 00:19:36,070 would take us months or even years before, 388 00:19:36,070 --> 00:19:38,670 because we didn't have this technology readily available. 389 00:19:38,670 --> 00:19:41,760 >> TED LARSON: What happens if you have all of these pieces in a phone? 390 00:19:41,760 --> 00:19:46,280 How does that change what a phone is? 391 00:19:46,280 --> 00:19:48,460 >> JOHNNY LEE: We have created a prototype phone 392 00:19:48,460 --> 00:19:52,150 containing highly customized hardware and software, designed 393 00:19:52,150 --> 00:19:56,600 to allow the phone to track it's motion in full 3D, in real time 394 00:19:56,600 --> 00:19:58,120 as you hold it. 395 00:19:58,120 --> 00:20:01,840 These sensors make over a quarter million 3D measurements 396 00:20:01,840 --> 00:20:05,980 every single second, updating the position and rotation of the phone, 397 00:20:05,980 --> 00:20:09,760 fusing this information into a single 3D model of the environment. 398 00:20:09,760 --> 00:20:12,625 >> CHRIS ANDERSON: We have a problem called navigation indoors. 399 00:20:12,625 --> 00:20:14,300 And it's a solution to that problem. 400 00:20:14,300 --> 00:20:17,383 >> EITAN MARDER-EPPSTEIN: It tracks your position as you go around the world. 401 00:20:17,383 --> 00:20:19,070 And it also makes a map of that. 402 00:20:19,070 --> 00:20:23,114 >> CHASE COBB: Imagine that you scan a small section of your living room. 403 00:20:23,114 --> 00:20:27,250 And then are able to generate a little game world in it. 404 00:20:27,250 --> 00:20:29,900 I don't know of any other controller or gaming 405 00:20:29,900 --> 00:20:31,660 device that can do that at the moment. 406 00:20:31,660 --> 00:20:33,250 >> TULLY FOOTE: Putting all this together, they 407 00:20:33,250 --> 00:20:35,041 pulled in experts from all around the world 408 00:20:35,041 --> 00:20:37,360 and got them all working on the same project. 409 00:20:37,360 --> 00:20:40,366 >> REMI EL-QUAZZANE: Those are very high caliber of people. 410 00:20:40,366 --> 00:20:40,865 Why? 411 00:20:40,865 --> 00:20:42,302 It's very simple. 412 00:20:42,302 --> 00:20:44,782 I think, actually, people that believe in the vision. 413 00:20:44,782 --> 00:20:47,240 JOHNNY LEE: Localization of mapping is there on your phone, 414 00:20:47,240 --> 00:20:49,000 and you just use it. 415 00:20:49,000 --> 00:20:51,750 It's this ability to follow in other people's footsteps. 416 00:20:51,750 --> 00:20:55,070 >> DIRK THOMAS: And we can also benefit from what we do for the project 417 00:20:55,070 --> 00:20:57,258 back for the open source community. 418 00:20:57,258 --> 00:20:59,350 >> CHASE COBB: Use it for the visually impaired, 419 00:20:59,350 --> 00:21:01,880 and give them auditory view of where they're going. 420 00:21:01,880 --> 00:21:04,205 >> VINCE PASCUAL: Being able to map your home, 421 00:21:04,205 --> 00:21:07,030 turn it around, let me see how this furniture works in the room. 422 00:21:07,030 --> 00:21:09,580 >> EITAN MARDER-EPPSTEIN: Virtual windows to different worlds, 423 00:21:09,580 --> 00:21:11,413 I mean the possibilities are really endless. 424 00:21:11,413 --> 00:21:14,015 425 00:21:14,015 --> 00:21:16,890 JOHNNY LEE: Over the next few months we will be distributing dev kits 426 00:21:16,890 --> 00:21:20,566 to software developers to develop applications and algorithms on top 427 00:21:20,566 --> 00:21:22,572 of this platform. 428 00:21:22,572 --> 00:21:27,240 And we are just in the beginning, and we know there's a lot more work to do. 429 00:21:27,240 --> 00:21:30,541 But we are excited about where it is going to go. 430 00:21:30,541 --> 00:21:35,180 The future is awesome, and we believe we can build it faster together. 431 00:21:35,180 --> 00:21:41,137 432 00:21:41,137 --> 00:21:43,970 DAVID J. MALAN: And now the moment you've probably been waiting for. 433 00:21:43,970 --> 00:21:45,990 You may recall that in the last episode we 434 00:21:45,990 --> 00:21:49,970 shared this tweet from CS50's own Andrew Hill, who a few months back wrote us 435 00:21:49,970 --> 00:21:52,650 this, "David J Malan, where's my lamp?" 436 00:21:52,650 --> 00:21:55,690 Now since then a number of you have submitted videos making your case 437 00:21:55,690 --> 00:21:59,120 as to why you should be the next recipient of a CS50 desk lamp. 438 00:21:59,120 --> 00:22:02,650 We thought we'd share at first one from Mohamed in Morocco. 439 00:22:02,650 --> 00:22:05,800 It turns out that Mohammed's birthday was this past week, so allow me also 440 00:22:05,800 --> 00:22:10,050 on behalf of CS50 to say happy 19th birthday to Mohamed. 441 00:22:10,050 --> 00:22:11,996 Let's take a look. 442 00:22:11,996 --> 00:22:15,080 >> MOHAMMED: Hello, I am Mohamed from Morocco. 443 00:22:15,080 --> 00:22:20,510 I am studying in another city-- which is a little far from my original city 444 00:22:20,510 --> 00:22:25,390 where I am living with my family-- where I left my desk lamp. 445 00:22:25,390 --> 00:22:28,940 So I'm living in a dormitory and this is my room. 446 00:22:28,940 --> 00:22:32,810 447 00:22:32,810 --> 00:22:37,440 You can see here that light is yellow, and I don't really like it. 448 00:22:37,440 --> 00:22:39,250 I prefer the white one. 449 00:22:39,250 --> 00:22:43,350 That's why I want a CS50 desk lamp. 450 00:22:43,350 --> 00:22:47,109 You can imagine me sitting there and working with it. 451 00:22:47,109 --> 00:22:48,900 DAVID J. MALAN: And now another submission. 452 00:22:48,900 --> 00:22:52,700 This one Emad, a student in his dorm room. 453 00:22:52,700 --> 00:22:54,680 >> EMAD: I'm Emad from [INAUDIBLE]. 454 00:22:54,680 --> 00:22:56,605 So why do I want a desk lamp? 455 00:22:56,605 --> 00:22:59,760 First of all, it will act as a moderate source of light 456 00:22:59,760 --> 00:23:03,380 for my studies of high school, as I've just started fourth year. 457 00:23:03,380 --> 00:23:06,730 And as well as well as the online courses, especially CS50. 458 00:23:06,730 --> 00:23:09,130 The most important reason is that it will 459 00:23:09,130 --> 00:23:11,190 act as software for the course CS50. 460 00:23:11,190 --> 00:23:13,550 For example, if someone comes in my home and asks 461 00:23:13,550 --> 00:23:17,720 how did you get that beautiful lamp, I will tell them that CS50 class sent it. 462 00:23:17,720 --> 00:23:21,290 And so I spread the word of CS50, and most importantly, I 463 00:23:21,290 --> 00:23:23,970 remember if for my life. 464 00:23:23,970 --> 00:23:27,460 I am Emad, and this is CS50. 465 00:23:27,460 --> 00:23:30,510 >> DAVID J. MALAN: And now Tim from Malaysia, pictured here in the dark. 466 00:23:30,510 --> 00:23:31,220 Listen closely. 467 00:23:31,220 --> 00:24:19,030 468 00:24:19,030 --> 00:24:21,640 DAVID J. MALAN: And now a family friendly film from Zevin 469 00:24:21,640 --> 00:24:24,336 in Vancouver, British Columbia. 470 00:24:24,336 --> 00:24:25,080 >> ZEVIN: Hi there. 471 00:24:25,080 --> 00:24:26,250 I'm Zevin Lennick. 472 00:24:26,250 --> 00:24:30,925 I'm doing EDX for CS50, and we can't find our lamp. 473 00:24:30,925 --> 00:24:31,675 The house is dark. 474 00:24:31,675 --> 00:24:32,610 What do you think? 475 00:24:32,610 --> 00:24:34,530 >> SPEAKER 1: Maybe it's over there? 476 00:24:34,530 --> 00:24:35,385 >> ZEVIN: Are you sure? 477 00:24:35,385 --> 00:24:35,670 >> SPEAKER 1: Maybe. 478 00:24:35,670 --> 00:24:36,910 >> ZEVIN: Should we go find out? 479 00:24:36,910 --> 00:24:37,620 >> SPEAKER 1: Let's go. 480 00:24:37,620 --> 00:24:38,245 >> ZEVIN: Alright. 481 00:24:38,245 --> 00:24:42,030 482 00:24:42,030 --> 00:24:43,530 >> SPEAKER 1: Whoa, look at that light. 483 00:24:43,530 --> 00:24:45,540 >> ZEVIN: Maybe there's a lamp in there. 484 00:24:45,540 --> 00:24:47,129 >> SPEAKER 1: Let's check it out. 485 00:24:47,129 --> 00:24:48,420 ZEVIN: Do you want me to do it? 486 00:24:48,420 --> 00:24:49,535 SPEAKER 1: No, I'll do it. 487 00:24:49,535 --> 00:24:51,365 ZEVIN: OK. 488 00:24:51,365 --> 00:24:52,805 SPEAKER 1: Stay away from my lamp! 489 00:24:52,805 --> 00:24:53,305 Oh no! 490 00:24:53,305 --> 00:24:55,634 491 00:24:55,634 --> 00:24:58,050 DAVID J. MALAN: And now a submission from Eggers in Latvia 492 00:24:58,050 --> 00:25:03,360 who really took things up a notch with this film. 493 00:25:03,360 --> 00:25:05,180 >> EGGERS: (AS LAMP 1) Well, how you doing? 494 00:25:05,180 --> 00:25:07,250 >> WOMAN: (AS LAMP 2) Mmm. 495 00:25:07,250 --> 00:25:07,750 Hello. 496 00:25:07,750 --> 00:25:20,440 497 00:25:20,440 --> 00:25:22,170 >> EGGERS: (AS LIGHTBULB 1) This is awesome. 498 00:25:22,170 --> 00:25:25,260 >> WOMAN: (AS LIGHTBULB 2) Yes. 499 00:25:25,260 --> 00:25:26,782 Ooh! 500 00:25:26,782 --> 00:25:27,990 EGGERS: (AS LIGHTBULB 1) Ooh! 501 00:25:27,990 --> 00:25:30,323 EGGERS: (AS BABY LIGHTBULB) [LAUGHTER] Where is my lamp? 502 00:25:30,323 --> 00:25:32,450 503 00:25:32,450 --> 00:25:33,920 >> EGGERS: Hi, my name is Eggers. 504 00:25:33,920 --> 00:25:35,927 And I am from Latvia. 505 00:25:35,927 --> 00:25:37,214 And this is-- 506 00:25:37,214 --> 00:25:38,089 SPEAKER 2: Our study. 507 00:25:38,089 --> 00:25:39,466 Stay tuned. 508 00:25:39,466 --> 00:25:42,220 >> EGGERS: No, this is CS50. 509 00:25:42,220 --> 00:25:44,370 >> DAVID J. MALAN: And now, last but not least, a 510 00:25:44,370 --> 00:25:48,520 submission from Phillip in Germany. 511 00:25:48,520 --> 00:25:50,436 >> PHILLIP: Hey there David, I'm Phil. 512 00:25:50,436 --> 00:25:52,635 I'm a student of cognitive science from Germany. 513 00:25:52,635 --> 00:25:56,050 Cognitive science is a field that studies the human mind 514 00:25:56,050 --> 00:26:01,410 and brain, joined from disciplines like neuroscience, psychology, linguistics, 515 00:26:01,410 --> 00:26:03,270 and even computer science. 516 00:26:03,270 --> 00:26:07,120 Now last semester, I spent a semester abroad at Harvard. 517 00:26:07,120 --> 00:26:10,030 And I also attended your course, CS50. 518 00:26:10,030 --> 00:26:13,850 >> Now while I loved CS50, I never got my own desk lamp. 519 00:26:13,850 --> 00:26:18,340 Now I raised my hand in almost every lecture in a desperate attempt 520 00:26:18,340 --> 00:26:21,405 to get me on stage and receive my own CS50 desk 521 00:26:21,405 --> 00:26:25,510 lamp-- or even just a fricking stress ball. 522 00:26:25,510 --> 00:26:29,530 Now I finally got my stress ball at the CS50 fair, 523 00:26:29,530 --> 00:26:36,970 but I'm still suffering deeply from that lack of a CS50 desk lamp in my life. 524 00:26:36,970 --> 00:26:41,930 So Mr. David Malan, my question to you is quite simple. 525 00:26:41,930 --> 00:26:45,650 Where's my [BLEEP] desk lamp? 526 00:26:45,650 --> 00:26:47,540 >> DAVID J. MALAN: And now a bit more history. 527 00:26:47,540 --> 00:26:50,270 You may recall the following film from week one of CS50. 528 00:26:50,270 --> 00:26:56,450 >> [MUSIC PLAYS] 529 00:26:56,450 --> 00:26:59,320 >> SPEAKER 3 : A triumph of mathematical and mechanical skill, 530 00:26:59,320 --> 00:27:03,170 as this great new automatic calculator at Harvard University. 531 00:27:03,170 --> 00:27:07,050 Intricate problems in mathematics put through the machine in coded form 532 00:27:07,050 --> 00:27:10,270 on tape are accurately solved in a minute fraction 533 00:27:10,270 --> 00:27:12,790 of the time required for human calculation. 534 00:27:12,790 --> 00:27:24,170 535 00:27:24,170 --> 00:27:28,485 Designed to expedite all forms of mathematical and scientific research, 536 00:27:28,485 --> 00:27:33,610 the giant mechanical brain will work for the United States Navy until war's end. 537 00:27:33,610 --> 00:27:42,745 538 00:27:42,745 --> 00:27:44,870 DAVID J. MALAN: Now the Mark I is no longer in use, 539 00:27:44,870 --> 00:27:46,910 but it does still live here on campus. 540 00:27:46,910 --> 00:27:49,840 We decided to take one final stroll with Professor Harry Lewis 541 00:27:49,840 --> 00:27:53,080 to take a closer look at Harvard's science center-- new home 542 00:27:53,080 --> 00:27:54,350 to the Harvard Mark I. 543 00:27:54,350 --> 00:27:56,600 PROFESSOR HARRY LEWIS: So we're in the Harvard Science 544 00:27:56,600 --> 00:27:59,950 Center, which is the crossroads of the Harvard campus. 545 00:27:59,950 --> 00:28:04,180 A lot of the science departments have their classrooms and offices in here. 546 00:28:04,180 --> 00:28:07,190 What's behind us here is the Mark I computer, 547 00:28:07,190 --> 00:28:09,820 which was early electromechanical computer. 548 00:28:09,820 --> 00:28:12,190 >> So the Mark I computer is here at Harvard 549 00:28:12,190 --> 00:28:17,580 because Howard Hathaway Aiken, who was the person who conceived and designed 550 00:28:17,580 --> 00:28:21,350 the machine in collaboration with IBM engineers, 551 00:28:21,350 --> 00:28:26,220 was a Harvard professor of applied mathematics. 552 00:28:26,220 --> 00:28:32,590 And he wanted to relieve the labor of solving numerical equations 553 00:28:32,590 --> 00:28:36,820 by mechanical calculation that was done on pencil and paper. 554 00:28:36,820 --> 00:28:39,930 >> What we have here is actually only a chunk of it. 555 00:28:39,930 --> 00:28:43,820 It was 51 feet long and when it was all in one piece. 556 00:28:43,820 --> 00:28:49,730 It could do three additions per second, a multiplication took six seconds, 557 00:28:49,730 --> 00:28:53,110 and a division took 15 seconds. 558 00:28:53,110 --> 00:28:57,870 So this was a huge advance over doing things with pencil and paper, 559 00:28:57,870 --> 00:29:02,870 but it was slow work, and keeping the machine going all the time 560 00:29:02,870 --> 00:29:08,670 was a major feat of electromechanical engineering expertise. 561 00:29:08,670 --> 00:29:12,100 >> It was used for ballistics calculations, for calculating 562 00:29:12,100 --> 00:29:15,120 the trajectory of missiles. 563 00:29:15,120 --> 00:29:19,050 And it was also used for a little bit of the calculation in the Manhattan 564 00:29:19,050 --> 00:29:25,470 Project for determining the right parameters for the atomic bomb. 565 00:29:25,470 --> 00:29:29,230 >> So what you see here are paper tape drives, 566 00:29:29,230 --> 00:29:33,550 so the program was punched in paper tape and was on a loop. 567 00:29:33,550 --> 00:29:36,820 What you see there are registers that would 568 00:29:36,820 --> 00:29:42,060 correspond to the stored memory of the machine, which was only used for data. 569 00:29:42,060 --> 00:29:44,480 The program itself was fixed. 570 00:29:44,480 --> 00:29:47,460 These electric typewriters were used to print the output. 571 00:29:47,460 --> 00:29:51,220 These dials, which have 10 positions, are 572 00:29:51,220 --> 00:29:53,120 where you would insert the constants. 573 00:29:53,120 --> 00:29:57,990 So the program was fixed on paper tape, and if you had a constant, 574 00:29:57,990 --> 00:30:03,360 like you have in C+ code-- you set some variable equal to 47 at the beginning 575 00:30:03,360 --> 00:30:05,950 of your program-- this is the equivalent here. 576 00:30:05,950 --> 00:30:10,910 You would dial in the number 47 using these registers. 577 00:30:10,910 --> 00:30:14,460 >> The computational equivalent of this is much less 578 00:30:14,460 --> 00:30:22,055 than the smallest wrist watch computer that is now being produced. 579 00:30:22,055 --> 00:30:23,680 DAVID J. MALAN: That's it for CS50Live. 580 00:30:23,680 --> 00:30:25,471 Thanks so much to this week's contributors, 581 00:30:25,471 --> 00:30:27,550 as well as to this week's team behind the camera. 582 00:30:27,550 --> 00:30:30,050 Let's close the show with a look at a scratch project 583 00:30:30,050 --> 00:30:32,040 from Lisa Chung in Boston, 584 00:30:32,040 --> 00:31:41,227 >> [MUSIC- YLVIS, "THE FOX"]