1 00:00:00,000 --> 00:00:00,982 2 00:00:00,982 --> 00:00:01,940 DAVID MALAN: All right. 3 00:00:01,940 --> 00:00:03,260 So my name is David Malan. 4 00:00:03,260 --> 00:00:07,100 And in fall of 1995, I sat exactly where you're sitting 5 00:00:07,100 --> 00:00:08,870 right now in an economics class. 6 00:00:08,870 --> 00:00:12,890 And elsewhere on campus, I sat in on government, and some mathematics, 7 00:00:12,890 --> 00:00:14,422 and similar related fields. 8 00:00:14,422 --> 00:00:16,880 And the reason for that was that when I got here on campus, 9 00:00:16,880 --> 00:00:19,970 I really just gravitated toward the familiar, the kinds of subjects 10 00:00:19,970 --> 00:00:23,060 in high school that I rather liked and I felt I was good at. 11 00:00:23,060 --> 00:00:24,960 And computer science wasn't even on my radar. 12 00:00:24,960 --> 00:00:27,680 In fact, it wasn't until sophomore fall that I finally 13 00:00:27,680 --> 00:00:29,870 got up the nerve following some friends on campus 14 00:00:29,870 --> 00:00:33,050 into a class called CS50, our introductory course in CS, 15 00:00:33,050 --> 00:00:36,020 that I even got up the nerve to step over that threshold. 16 00:00:36,020 --> 00:00:38,030 And the only reason I stayed in that class 17 00:00:38,030 --> 00:00:41,480 my sophomore year was because the professor let me enroll pass/fail. 18 00:00:41,480 --> 00:00:45,140 But over the next few months I realized that this actually 19 00:00:45,140 --> 00:00:47,990 was a field for me and for so many of my classmates. 20 00:00:47,990 --> 00:00:49,970 It wasn't really something to beware. 21 00:00:49,970 --> 00:00:52,020 It was absolutely a challenge and a lot of work. 22 00:00:52,020 --> 00:00:55,820 But that was at the same time what made it so fun and interesting. 23 00:00:55,820 --> 00:00:59,360 And to this day, I still remember going back to Mather House on Friday 24 00:00:59,360 --> 00:01:01,740 nights when homework assignments were released 25 00:01:01,740 --> 00:01:04,500 and diving in after dinner time into the problem set 26 00:01:04,500 --> 00:01:05,970 just because I liked it so much. 27 00:01:05,970 --> 00:01:09,840 And so after 19 years not really ever finding homework fun 28 00:01:09,840 --> 00:01:12,570 to find that to be the case, I sort of found my way. 29 00:01:12,570 --> 00:01:16,020 And whether you end up majoring in a field like computer science 30 00:01:16,020 --> 00:01:19,410 or really just taking one class, it's just such an empowering field 31 00:01:19,410 --> 00:01:21,430 because you can go back to the arts, humanities, 32 00:01:21,430 --> 00:01:23,848 social sciences, natural sciences, and not only 33 00:01:23,848 --> 00:01:25,890 think a little bit differently about those worlds 34 00:01:25,890 --> 00:01:30,438 but practically solve problems using code or just ideas therein. 35 00:01:30,438 --> 00:01:32,730 And so what I thought I'd do in just a few minutes here 36 00:01:32,730 --> 00:01:36,510 is give you not only a taste of this class called CS50 but also computer 37 00:01:36,510 --> 00:01:39,420 science more generally, which I dare say is probably 38 00:01:39,420 --> 00:01:43,660 more accessible, more familiar to you than you might otherwise actually 39 00:01:43,660 --> 00:01:44,160 think. 40 00:01:44,160 --> 00:01:48,720 And as for CS50 itself, more than just teach you a programming language as 41 00:01:48,720 --> 00:01:50,800 is rather the norm in high school courses, 42 00:01:50,800 --> 00:01:54,270 especially we really do aspire now to teach you how to program 43 00:01:54,270 --> 00:01:56,075 and how to think more methodically. 44 00:01:56,075 --> 00:01:58,200 We introduce you to a language first called Scratch 45 00:01:58,200 --> 00:02:00,200 that you might even remember from middle school. 46 00:02:00,200 --> 00:02:03,300 We spend time thereafter on a language called C, and Python, 47 00:02:03,300 --> 00:02:05,160 and later in the class we end by focusing 48 00:02:05,160 --> 00:02:07,950 on web programming or mobile application development 49 00:02:07,950 --> 00:02:11,560 and using the tools that are inevitably going to evolve over the coming years 50 00:02:11,560 --> 00:02:15,270 but by way of this foundation, even if it's the only CS class you ever take, 51 00:02:15,270 --> 00:02:18,210 you can actually teach yourself new languages thereafter 52 00:02:18,210 --> 00:02:21,610 and keep up and pick up what new topics might arise. 53 00:02:21,610 --> 00:02:24,750 So then what is then CS and who then are you? 54 00:02:24,750 --> 00:02:29,490 Well, according to Les Pass Fall 2022, 2/3 of CS50 students 55 00:02:29,490 --> 00:02:33,400 have never programmed before or taken a computer science class before. 56 00:02:33,400 --> 00:02:36,990 And so indeed if you're feeling like that is not for me, 57 00:02:36,990 --> 00:02:40,200 realize you are and will be in very good company. 58 00:02:40,200 --> 00:02:43,560 And I dare say CS is really just this picture, problem solving more 59 00:02:43,560 --> 00:02:44,070 generally. 60 00:02:44,070 --> 00:02:44,970 And what's a problem? 61 00:02:44,970 --> 00:02:48,510 Well, it's something that's got input and we need output, the solution there 62 00:02:48,510 --> 00:02:49,030 too. 63 00:02:49,030 --> 00:02:51,630 But before we can solve problems, especially with computers, 64 00:02:51,630 --> 00:02:55,390 we just have to decide how we're going to represent these inputs and outputs. 65 00:02:55,390 --> 00:02:58,710 And for instance, if I might want to represent information on my human hand 66 00:02:58,710 --> 00:03:01,110 to take attendance, well, how many people 67 00:03:01,110 --> 00:03:04,430 could I count on my one human hand? 68 00:03:04,430 --> 00:03:05,000 Five. 69 00:03:05,000 --> 00:03:05,600 Very good. 70 00:03:05,600 --> 00:03:09,410 But incorrect, because if I think about this a little more differently, 71 00:03:09,410 --> 00:03:14,820 I could actually count as high as I think 31 on one human hand, 72 00:03:14,820 --> 00:03:17,510 maybe not by counting like one, two, three, four, five, 73 00:03:17,510 --> 00:03:21,720 but maybe if I come up with some kind of pattern, maybe one, two, three-- 74 00:03:21,720 --> 00:03:24,470 can't really do the next one because it involves the middle finger 75 00:03:24,470 --> 00:03:28,290 but then it's six and then seven and beyond. 76 00:03:28,290 --> 00:03:32,510 And so how do we get from that simple hand to just thinking 77 00:03:32,510 --> 00:03:33,980 a little more differently about it? 78 00:03:33,980 --> 00:03:37,105 Well, let me propose that we start even more simply with just a light bulb. 79 00:03:37,105 --> 00:03:40,790 Indeed, inside of your computer, your phone, there's tiny little transistors, 80 00:03:40,790 --> 00:03:44,720 otherwise known as little switches that can either be on or off. 81 00:03:44,720 --> 00:03:46,610 And you probably already know whether or not 82 00:03:46,610 --> 00:03:49,280 you've taken a CS class before that computers speak zeros 83 00:03:49,280 --> 00:03:51,330 and ones, the so-called binary system. 84 00:03:51,330 --> 00:03:54,050 But how do we get to zeros and ones to counting 85 00:03:54,050 --> 00:03:57,020 to two, to three, to 31 or even higher? 86 00:03:57,020 --> 00:03:59,330 Well, we can just turn these light bulbs on 87 00:03:59,330 --> 00:04:04,350 and count with a single light bulb, or a single switch, or a single binary digit 88 00:04:04,350 --> 00:04:09,540 or bit from zero, if this thing here is off, to up to a one 89 00:04:09,540 --> 00:04:12,060 if this here light bulb or switch is on. 90 00:04:12,060 --> 00:04:14,460 Well, let's take this more simply than five fingers. 91 00:04:14,460 --> 00:04:15,660 How about three light bulbs? 92 00:04:15,660 --> 00:04:16,920 How high can you count-- 93 00:04:16,920 --> 00:04:19,800 knowing that this is now indeed a trick question-- how high can you 94 00:04:19,800 --> 00:04:22,610 count with three light bulbs? 95 00:04:22,610 --> 00:04:23,420 So OK. 96 00:04:23,420 --> 00:04:25,760 So some of you already gleaned that it's indeed seven. 97 00:04:25,760 --> 00:04:27,697 And if you didn't, you're in good company. 98 00:04:27,697 --> 00:04:30,030 Only a third of the audience probably just gleaned that. 99 00:04:30,030 --> 00:04:33,770 But how do you get from three light bulbs to counting as high as seven? 100 00:04:33,770 --> 00:04:37,530 Well, I could very familiarly just turn these on one at a time. 101 00:04:37,530 --> 00:04:39,890 So that's one, that's two, that's three. 102 00:04:39,890 --> 00:04:43,910 But what if I take some inspiration from permuting my fingers up and down 103 00:04:43,910 --> 00:04:45,780 in different patterns, if you will? 104 00:04:45,780 --> 00:04:49,550 Well, then I could say this is zero when they're all off but maybe this is one, 105 00:04:49,550 --> 00:04:54,680 maybe this is two, maybe this is three, and now four, and now five, and now 106 00:04:54,680 --> 00:04:56,720 six, and now seven. 107 00:04:56,720 --> 00:04:59,240 And even if that was a little quickly, take my word for it 108 00:04:59,240 --> 00:05:02,240 that there were seven distinct patterns there plus eight 109 00:05:02,240 --> 00:05:04,190 for them all being off. 110 00:05:04,190 --> 00:05:07,400 Now turns out that this system, even if it's not obvious 111 00:05:07,400 --> 00:05:09,560 why I was turning one on and not the other, 112 00:05:09,560 --> 00:05:11,430 is actually already familiar to us. 113 00:05:11,430 --> 00:05:13,820 This, of course, is the human number 123. 114 00:05:13,820 --> 00:05:17,220 And you just kind of get that by looking at these symbols on the screen. 115 00:05:17,220 --> 00:05:19,670 But that's all they are, symbols that you and I were 116 00:05:19,670 --> 00:05:24,570 taught in like grade school to ascribe some mathematical meaning to them, 123. 117 00:05:24,570 --> 00:05:27,880 But if we rewind some 10, 20 years, this, of course, 118 00:05:27,880 --> 00:05:29,460 you might recall is the ones place. 119 00:05:29,460 --> 00:05:31,170 This now is the tens place. 120 00:05:31,170 --> 00:05:33,490 This is the hundreds place and so forth. 121 00:05:33,490 --> 00:05:36,330 So when you see one, two, three in that order, 122 00:05:36,330 --> 00:05:40,410 we immediately do some mental math of 100 times 1 plus 10 times 123 00:05:40,410 --> 00:05:46,920 2 plus 1 times 3, which of course, is 100 plus 20 plus 3, ergo 123. 124 00:05:46,920 --> 00:05:49,710 And we just kind of do that intuitively nowadays. 125 00:05:49,710 --> 00:05:51,995 Well, computers do exactly the same thing. 126 00:05:51,995 --> 00:05:54,120 And even though they have just tiny little switches 127 00:05:54,120 --> 00:05:57,660 that they can turn on and off, by way of those patterns can 128 00:05:57,660 --> 00:06:00,040 they represent any number we might like. 129 00:06:00,040 --> 00:06:02,430 So here for instance is a three-digit value, just 130 00:06:02,430 --> 00:06:04,353 something, something something, but notice 131 00:06:04,353 --> 00:06:07,020 that those columns, even though your grade school teacher didn't 132 00:06:07,020 --> 00:06:10,800 talk to you about powers and exponents, are really just 10 to the zero, 10 133 00:06:10,800 --> 00:06:12,970 to the one, 10 to the two, and so forth. 134 00:06:12,970 --> 00:06:15,720 But what if we don't give you 10 digits, zero through nine? 135 00:06:15,720 --> 00:06:19,260 We give you just zero or one, off or on? 136 00:06:19,260 --> 00:06:21,370 Well, we can just change the base, so to speak, 137 00:06:21,370 --> 00:06:26,190 to be two so now you have the ones place, the twos place, the fours place, 138 00:06:26,190 --> 00:06:28,860 then eight, 16, 32, and so forth. 139 00:06:28,860 --> 00:06:31,500 And so computers are using the same system as you and me. 140 00:06:31,500 --> 00:06:35,200 They're just doing it with a smaller, simpler even alphabet. 141 00:06:35,200 --> 00:06:37,920 And so here in binary, zeros and ones would 142 00:06:37,920 --> 00:06:41,045 be the number we know as 0 because it's off, off, off. 143 00:06:41,045 --> 00:06:42,330 Here now is one. 144 00:06:42,330 --> 00:06:43,650 Here now is two. 145 00:06:43,650 --> 00:06:44,280 And why? 146 00:06:44,280 --> 00:06:46,920 Because there's a one in the twos column only. 147 00:06:46,920 --> 00:06:51,990 Here now it's three because there's a two and a one that are both one or on. 148 00:06:51,990 --> 00:06:55,805 And now of course four, and five, and six, and seven. 149 00:06:55,805 --> 00:06:58,680 And this invites the question, well, how do we count as high as eight 150 00:06:58,680 --> 00:07:01,900 or what is eight in binary? 151 00:07:01,900 --> 00:07:06,520 Should be 1000 but we need more hardware. 152 00:07:06,520 --> 00:07:07,690 We need another light bulb. 153 00:07:07,690 --> 00:07:08,650 We need another switch. 154 00:07:08,650 --> 00:07:10,730 We need more memory, so to speak. 155 00:07:10,730 --> 00:07:13,810 And so if you keep giving me more digits, more memory, more hardware, 156 00:07:13,810 --> 00:07:15,970 we can count as high up as we might want, 157 00:07:15,970 --> 00:07:22,000 be it 31 using five digits literally here, or maybe even 16, or 32, or 64 158 00:07:22,000 --> 00:07:24,010 nowadays as is the norm. 159 00:07:24,010 --> 00:07:27,428 So how do we represent other things if we have different types of problems? 160 00:07:27,428 --> 00:07:29,470 Well, we could represent letters of the alphabet. 161 00:07:29,470 --> 00:07:32,230 But if we've already decided that everything is numbers, 162 00:07:32,230 --> 00:07:36,320 we need to agree that, OK, we need to represent letters with numbers. 163 00:07:36,320 --> 00:07:38,800 And so it turns out humans decades ago decided 164 00:07:38,800 --> 00:07:42,400 that this pattern of switches, light bulbs, or bits, binary digits, 165 00:07:42,400 --> 00:07:45,880 will represent the capital letter A in English. 166 00:07:45,880 --> 00:07:47,410 What does that translate to? 167 00:07:47,410 --> 00:07:49,270 Well, that's the 64s place. 168 00:07:49,270 --> 00:07:50,690 That's the ones place. 169 00:07:50,690 --> 00:07:53,050 So if we do some quick math, that gives me 65. 170 00:07:53,050 --> 00:07:55,660 And that's just what every Mac, PC, Android phone, 171 00:07:55,660 --> 00:07:58,450 iPhone nowadays has used for now decades. 172 00:07:58,450 --> 00:08:01,580 Well, that's part of a system we know is Unicode. 173 00:08:01,580 --> 00:08:05,150 And it can be used for other things too like sending actual messages. 174 00:08:05,150 --> 00:08:08,900 So here's a chart of all of the English letters, capital, lowercase, 175 00:08:08,900 --> 00:08:10,410 some punctuation, and more. 176 00:08:10,410 --> 00:08:15,590 And if you focus just on this column, notice that 72 is H, 73 is I, 177 00:08:15,590 --> 00:08:19,440 and we started, of course, with 65 being A and everything in between. 178 00:08:19,440 --> 00:08:22,760 So if your phone were to receive a pattern of zeros and ones, 179 00:08:22,760 --> 00:08:25,460 some kind of wireless signal that represents this, well, 180 00:08:25,460 --> 00:08:29,510 that I will stipulate is 72, 73, 33. 181 00:08:29,510 --> 00:08:32,200 So what text message did I just receive? 182 00:08:32,200 --> 00:08:33,280 Apparently, hi. 183 00:08:33,280 --> 00:08:34,630 Now what was the 33? 184 00:08:34,630 --> 00:08:36,169 We'd have to kind of go back here. 185 00:08:36,169 --> 00:08:39,730 And it turns out it's an exclamation point just according to the standard. 186 00:08:39,730 --> 00:08:42,370 And this is how your phone sort of knows what to display. 187 00:08:42,370 --> 00:08:44,890 Now suppose your phone got this pattern of zeros and ones. 188 00:08:44,890 --> 00:08:45,850 This is getting big. 189 00:08:45,850 --> 00:08:47,620 It's roughly four billion. 190 00:08:47,620 --> 00:08:50,290 But that is just another letter of an alphabet. 191 00:08:50,290 --> 00:08:52,960 And it's not the English alphabet in this case but anyone 192 00:08:52,960 --> 00:08:56,990 want to hazard a guess or if you've taken CS50 online might know? 193 00:08:56,990 --> 00:09:02,360 This is a very happy face with tears of joy, which is the most popular emoji as 194 00:09:02,360 --> 00:09:04,580 of last year but you might notice that sometimes this 195 00:09:04,580 --> 00:09:08,660 looks like this on an iPhone or slightly different like this on Android. 196 00:09:08,660 --> 00:09:11,330 And that's because even emoji are just characters 197 00:09:11,330 --> 00:09:14,695 that have patterns of zeros and ones or numbers that represent them. 198 00:09:14,695 --> 00:09:16,820 And much like we have different fonts in the world, 199 00:09:16,820 --> 00:09:20,540 it's up to the computer, the phone, to decide pictorially 200 00:09:20,540 --> 00:09:22,260 how this thing is going to be displayed. 201 00:09:22,260 --> 00:09:24,260 And if we thought about it, it turns out there's 202 00:09:24,260 --> 00:09:26,360 like 64 light bulbs here in Sanders. 203 00:09:26,360 --> 00:09:30,800 And if we treated these as eight distinct groups of binary digits, 204 00:09:30,800 --> 00:09:34,430 I bet we could even spell something out here on the stage for all of you. 205 00:09:34,430 --> 00:09:37,640 Now me and lastly, how might we represent other things? 206 00:09:37,640 --> 00:09:40,980 Well, in CS50, you'll learn how to represent colors of some amount of red, 207 00:09:40,980 --> 00:09:43,880 green, and blue, for instance, how to represent music, 208 00:09:43,880 --> 00:09:46,382 maybe some combination of what's the note, how long do 209 00:09:46,382 --> 00:09:48,590 you want to hear it, how loud do you want to hear it, 210 00:09:48,590 --> 00:09:53,060 so just numeric values too so it's just a system of coding that represents 211 00:09:53,060 --> 00:09:54,780 these different types of values. 212 00:09:54,780 --> 00:09:57,750 So if we just kind of agree for now until September 213 00:09:57,750 --> 00:10:02,370 that computers can represent inputs and outputs using zeros and ones alone, 214 00:10:02,370 --> 00:10:04,920 well, let's lastly look at this black box in between. 215 00:10:04,920 --> 00:10:07,035 How do we actually solve some problem? 216 00:10:07,035 --> 00:10:08,910 Well, one common problem, for instance, might 217 00:10:08,910 --> 00:10:10,860 be this here technology, a phone book. 218 00:10:10,860 --> 00:10:13,920 And in this phone book is a whole bunch of human names, A through Z, 219 00:10:13,920 --> 00:10:15,580 and their corresponding phone numbers. 220 00:10:15,580 --> 00:10:18,870 Now as old school as this is, it's the exact same idea in your phones 221 00:10:18,870 --> 00:10:22,650 nowadays with the Contacts icon of course on iPhone or Android. 222 00:10:22,650 --> 00:10:26,530 And if you think about it, if you ever autocomplete someone's name, 223 00:10:26,530 --> 00:10:29,882 the phone is searching for that person's name alphabetically much like I might. 224 00:10:29,882 --> 00:10:31,590 So how might I do this in the human world 225 00:10:31,590 --> 00:10:34,000 or how might Apple or Google do this in code? 226 00:10:34,000 --> 00:10:38,820 Well, I could start searching one page at a time left to right. 227 00:10:38,820 --> 00:10:42,120 This is a very methodical algorithm, step by step instruction 228 00:10:42,120 --> 00:10:43,200 for solving this problem. 229 00:10:43,200 --> 00:10:45,050 Is it correct? 230 00:10:45,050 --> 00:10:47,540 So technically yes, it is correct, because if I'm 231 00:10:47,540 --> 00:10:51,600 looking for John Harvard, H, well, I'll eventually get to him albeit slowly. 232 00:10:51,600 --> 00:10:52,100 All right. 233 00:10:52,100 --> 00:10:53,433 What could I do a little better? 234 00:10:53,433 --> 00:10:55,400 Maybe two, four, six, eight. 235 00:10:55,400 --> 00:10:58,400 I should probably look down but 10, 12, and so forth. 236 00:10:58,400 --> 00:11:00,740 Is that algorithm correct? 237 00:11:00,740 --> 00:11:01,430 So no. 238 00:11:01,430 --> 00:11:03,700 Why? 239 00:11:03,700 --> 00:11:06,460 I might miss it because if I get unlucky and John Harvard 240 00:11:06,460 --> 00:11:09,317 is sandwiched between two pages but it's twice as fast. 241 00:11:09,317 --> 00:11:10,150 So that's appealing. 242 00:11:10,150 --> 00:11:10,720 So OK. 243 00:11:10,720 --> 00:11:14,980 Worst case, let me just double back if I hit names starting with I instead of H 244 00:11:14,980 --> 00:11:17,497 and then I can at least solve that bug or potential mistake. 245 00:11:17,497 --> 00:11:20,080 And we'll teach you how to solve even more problems than that. 246 00:11:20,080 --> 00:11:21,930 But obviously, back in the day and even now 247 00:11:21,930 --> 00:11:23,680 what Apple and Google and others are doing 248 00:11:23,680 --> 00:11:26,500 when they search digitally is they're metaphorically opening 249 00:11:26,500 --> 00:11:28,870 to the middle of your contacts, looking down, 250 00:11:28,870 --> 00:11:32,260 and of course it's probably the M section roughly halfway through 251 00:11:32,260 --> 00:11:36,100 but what do I know about John Harvard now with respect to this phone book? 252 00:11:36,100 --> 00:11:38,030 Is he to the left or to the right? 253 00:11:38,030 --> 00:11:39,730 So left alphabetically. 254 00:11:39,730 --> 00:11:44,680 And so here in CS50 is where we can tear this problem in half, throw half of it 255 00:11:44,680 --> 00:11:49,320 away, leaving us with maybe originally 1,000 pages, now maybe 500 pages, 256 00:11:49,320 --> 00:11:50,320 and I can do this again. 257 00:11:50,320 --> 00:11:51,653 And oh, I went a little too far. 258 00:11:51,653 --> 00:11:52,780 I'm in the F section. 259 00:11:52,780 --> 00:11:55,390 But I can again tear the problem in half. 260 00:11:55,390 --> 00:11:58,060 Now I'm down to 250 pages. 261 00:11:58,060 --> 00:11:59,980 And we can only do this demo once each year. 262 00:11:59,980 --> 00:12:03,778 But now I can go to 125, 67 or so. 263 00:12:03,778 --> 00:12:06,570 And I have to deal with rounding and silly little issues like that. 264 00:12:06,570 --> 00:12:10,400 But I dare say I can eventually get down to the H page 265 00:12:10,400 --> 00:12:12,450 and call John Harvard at that point. 266 00:12:12,450 --> 00:12:17,210 And if I started with 1,000 and I divide it in half, dividing and conquering 267 00:12:17,210 --> 00:12:22,670 more familiarly, it turns out I can do this in 10 total steps, not 1,000, not 268 00:12:22,670 --> 00:12:25,470 500, 10 total steps. 269 00:12:25,470 --> 00:12:29,240 And that's just a taste then of what you'll learn in a course like CS50 270 00:12:29,240 --> 00:12:31,520 and in computer science more generally. 271 00:12:31,520 --> 00:12:35,600 Beyond that and along the way, you'll see so much of a support structure 272 00:12:35,600 --> 00:12:40,130 at hand and indeed CS50 is distinct in so many 273 00:12:40,130 --> 00:12:41,990 of its supports so many of your classmates 274 00:12:41,990 --> 00:12:45,860 themselves are our own teaching fellows or TFs and course assistant CAs. 275 00:12:45,860 --> 00:12:49,040 And now that everything has been back on campus for the past year, just 276 00:12:49,040 --> 00:12:52,790 like in olden times we've brought back a lot of the community and supportive 277 00:12:52,790 --> 00:12:54,207 events that we've long had. 278 00:12:54,207 --> 00:12:57,290 And so I thought I'd conclude by hitting play on this short slideshow that 279 00:12:57,290 --> 00:13:00,020 will paint a picture of what your predecessors have experienced 280 00:13:00,020 --> 00:13:03,870 this past fall and what awaits you too this fall as well. 281 00:13:03,870 --> 00:13:08,777 This then is CS50. 282 00:13:08,777 --> 00:13:11,222 [VIDEO PLAYBACK] 283 00:13:11,222 --> 00:13:21,002 284 00:13:21,002 --> 00:13:22,950 [VOCALIZING] 285 00:13:22,950 --> 00:13:30,018 286 00:13:30,018 --> 00:13:32,180 SPEAKER 1: (SINGING) You're strolling along 287 00:13:32,180 --> 00:13:38,060 Mass Ave. We're sitting by Widener, rubbing John Harvard's foot, 288 00:13:38,060 --> 00:13:46,190 wishing for the best, praying to the Ivy gods thinking, man, what are the odds 289 00:13:46,190 --> 00:13:50,540 that Harvard is the place I'll manifest? 290 00:13:50,540 --> 00:13:53,150 Now Ivy Day has arrived. 291 00:13:53,150 --> 00:13:58,250 You're nervous as ever, crowding around a tiny screen. 292 00:13:58,250 --> 00:14:00,636 Heart beats as you wait. 293 00:14:00,636 --> 00:14:03,080 [INAUDIBLE] and click. 294 00:14:03,080 --> 00:14:04,358 Congratulations. 295 00:14:04,358 --> 00:14:06,260 You're in. 296 00:14:06,260 --> 00:14:11,330 Oh, this, this could be the start of something great. 297 00:14:11,330 --> 00:14:14,180 Now Visitas has come upon us. 298 00:14:14,180 --> 00:14:16,190 Let's all shop a class. 299 00:14:16,190 --> 00:14:21,230 Who knows what David Malan has in store. 300 00:14:21,230 --> 00:14:26,150 Learning Scratch, JavaScript, CSS, SQL, C, F Flask, 301 00:14:26,150 --> 00:14:31,130 getting free food, who could ask for more? 302 00:14:31,130 --> 00:14:35,990 Next thing you know, fall is here and it's your first P set. 303 00:14:35,990 --> 00:14:40,236 You can't get the Scratch cat to do its little dance. 304 00:14:40,236 --> 00:14:43,380 Oh, suddenly it's Sunday night. 305 00:14:43,380 --> 00:14:46,440 Everyone's in such a fright. 306 00:14:46,440 --> 00:14:50,370 Oh, this could be the start of your next chance. 307 00:14:50,370 --> 00:14:52,040 You're freaking out. 308 00:14:52,040 --> 00:14:55,150 It's week two and you've only just started. 309 00:14:55,150 --> 00:15:00,220 You're actually coding now or so you might think. 310 00:15:00,220 --> 00:15:02,690 You've never done this before. 311 00:15:02,690 --> 00:15:05,550 That's why you can't handle more. 312 00:15:05,550 --> 00:15:09,550 You don't see how you're going to sleep a wink. 313 00:15:09,550 --> 00:15:10,250 Don't stress. 314 00:15:10,250 --> 00:15:11,795 Your TFs are there. 315 00:15:11,795 --> 00:15:14,246 They're ready to help you. 316 00:15:14,246 --> 00:15:18,770 A legion of programmers at your beck and call. 317 00:15:18,770 --> 00:15:24,580 When all of a sudden, you look up and the error's gone, 318 00:15:24,580 --> 00:15:28,670 oh, maybe you can code well after all. 319 00:15:28,670 --> 00:15:35,050 Who knew that coding for the first time would be such a rush, or the first time 320 00:15:35,050 --> 00:15:41,100 you build binary search, or that your first day here on campus 321 00:15:41,100 --> 00:15:47,610 would be a straight flush, and you'd go home with CS50 bucks. 322 00:15:47,610 --> 00:15:51,930 Next thing you know, winter's here and it's the last lecture. 323 00:15:51,930 --> 00:15:56,690 You walk into Sanders and lights start to shine. 324 00:15:56,690 --> 00:15:59,060 Well, how the semester's flown. 325 00:15:59,060 --> 00:16:02,140 Your confidence has grown. 326 00:16:02,140 --> 00:16:04,780 And this could be the start of something. 327 00:16:04,780 --> 00:16:07,090 This could be the heart of something. 328 00:16:07,090 --> 00:16:11,110 This could be the start of something fun. 329 00:16:11,110 --> 00:16:13,800 So fun. 330 00:16:13,800 --> 00:16:16,110 So fine. 331 00:16:16,110 --> 00:16:17,370 So fine. 332 00:16:17,370 --> 00:16:21,464 333 00:16:21,464 --> 00:16:24,908 [APPLAUSE] 334 00:16:24,908 --> 00:16:29,608 335 00:16:29,608 --> 00:16:30,650 KATIE: Thank you so much. 336 00:16:30,650 --> 00:16:34,240 We are the Radcliffe Pitches, Harvard University's oldest treble voice jazz 337 00:16:34,240 --> 00:16:36,740 a cappella group founded back in 1975. 338 00:16:36,740 --> 00:16:39,700 And it is such an honor to be singing with all of you tonight. 339 00:16:39,700 --> 00:16:43,267 I hope you are all enjoying Visitas, albeit a little bit rainy. 340 00:16:43,267 --> 00:16:45,100 But if you are interested at all in singing, 341 00:16:45,100 --> 00:16:48,100 the Pitches are actually having an open rehearsal later this evening 342 00:16:48,100 --> 00:16:49,660 in Farkas Hall 203. 343 00:16:49,660 --> 00:16:53,650 You can join us and we promise not to make you sing CS50 related lyrics. 344 00:16:53,650 --> 00:16:57,130 Now at this time, I'd like to invite our sibling group, the Harvard Krokodiloes, 345 00:16:57,130 --> 00:16:58,460 on stage to join us. 346 00:16:58,460 --> 00:17:00,165 We hope you'll get a kick out of it. 347 00:17:00,165 --> 00:17:01,540 SPEAKER 2: Thanks so much, Katie. 348 00:17:01,540 --> 00:17:03,730 As Katie said, we are the Harvard Krokodiloes, 349 00:17:03,730 --> 00:17:08,050 Harvard University's oldest a cappella singing group founded way back in 1946. 350 00:17:08,050 --> 00:17:16,069 And we are so excited to welcome you all, the class of 2027, to Harvard. 351 00:17:16,069 --> 00:17:19,089 Now we're going to sing just one more song for you all today. 352 00:17:19,089 --> 00:17:22,540 But if you like what you hear, please feel 353 00:17:22,540 --> 00:17:26,770 free to follow us on Instagram @HarvardKrokodiloes 354 00:17:26,770 --> 00:17:30,560 or check out our TikTok, @TheKrokTalk You can find more information 355 00:17:30,560 --> 00:17:31,580 about our group there. 356 00:17:31,580 --> 00:17:33,140 Congratulations, everyone. 357 00:17:33,140 --> 00:17:35,026 And welcome to Harvard. 358 00:17:35,026 --> 00:17:38,477 [APPLAUSE] 359 00:17:38,477 --> 00:17:44,886 360 00:17:44,886 --> 00:17:51,510 (SINGING) My story is much too sad to be told. 361 00:17:51,510 --> 00:18:00,190 But practically everything leaves me totally cold. 362 00:18:00,190 --> 00:18:10,160 The only exception I know is the case when I'm out on a quiet spree 363 00:18:10,160 --> 00:18:16,310 fighting vainly the old ennui and I suddenly 364 00:18:16,310 --> 00:18:22,580 turn to see your fabulous face. 365 00:18:22,580 --> 00:18:23,160 1, 2, 3, 366 00:18:23,160 --> 00:18:23,660 4. 367 00:18:23,660 --> 00:18:26,894 [VOCALIZING] 368 00:18:26,894 --> 00:18:33,210 369 00:18:33,210 --> 00:18:37,700 I get no kick from champagne. 370 00:18:37,700 --> 00:18:41,520 Mere alcohol doesn't thrill me at all. 371 00:18:41,520 --> 00:18:50,990 So tell me why it should be true that I get a kick out of you. 372 00:18:50,990 --> 00:18:55,460 Some like a perfume from Spain. 373 00:18:55,460 --> 00:19:04,010 I'm sure that if I took even one sniff, it would bore me terrifically, too. 374 00:19:04,010 --> 00:19:06,575 Yet I get a kick out of you. 375 00:19:06,575 --> 00:19:09,230 376 00:19:09,230 --> 00:19:17,698 I get a kick every time I see you standing there before me. 377 00:19:17,698 --> 00:19:24,984 I get a kick though it's clear to me you obviously don't adore me. 378 00:19:24,984 --> 00:19:27,520 [VOCALIZING] 379 00:19:27,520 --> 00:19:51,855 380 00:19:51,855 --> 00:19:55,315 [APPLAUSE] 381 00:19:55,315 --> 00:19:55,815 382 00:19:55,815 --> 00:19:57,150 I see you. 383 00:19:57,150 --> 00:19:58,290 You're standing. 384 00:19:58,290 --> 00:20:00,135 You're there before me. 385 00:20:00,135 --> 00:20:01,770 You're standing before me. 386 00:20:01,770 --> 00:20:10,825 I get a kick though it's clear to me you obviously don't adore me. 387 00:20:10,825 --> 00:20:15,120 Some get their kick in a plane. 388 00:20:15,120 --> 00:20:23,310 Flying so high with some gal in the sky is my idea of nothing to do. 389 00:20:23,310 --> 00:20:37,990 Yet I get a kick, oh I get a kick, yes, I get a kick out of you. 390 00:20:37,990 --> 00:20:43,630 391 00:20:43,630 --> 00:20:44,320 Out of you. 392 00:20:44,320 --> 00:20:46,160 [VOCALIZING] 393 00:20:46,160 --> 00:20:48,560 394 00:20:48,560 --> 00:20:51,610 [APPLAUSE] 395 00:20:51,610 --> 00:21:05,000