1 00:00:19,994 --> 00:00:22,760 [Powered by Google Translate] SPEAKER 1: Dette er CS50. 2 00:00:22,760 --> 00:00:27,120 Så jeg var der du er nå noen år siden, og da jeg var en freshman på 3 00:00:27,120 --> 00:00:32,000 gang, var jeg egentlig ikke på denne veien for å gjøre datamaskiner vitenskap, for å gjøre 4 00:00:32,000 --> 00:00:32,490 engineering. 5 00:00:32,490 --> 00:00:35,780 Faktisk kom jeg inn i dette stedet som en regjering konsentratoren. 6 00:00:35,780 --> 00:00:38,910 Jeg hadde vært i videregående skole en gutt som likte ting som historie. 7 00:00:38,910 --> 00:00:41,940 Jeg likte statsrett, slag av engelsk og matematikk, så snilt av 8 00:00:41,940 --> 00:00:45,840 godt avrundet, men ikke nødvendigvis vet ting som jeg ikke hadde lært 9 00:00:45,840 --> 00:00:46,520 i videregående skole. 10 00:00:46,520 --> 00:00:49,570 Og så freshman år, hadde jeg denne trepidation, der selv om jeg 11 00:00:49,570 --> 00:00:53,400 likte datamaskiner, spille dataspill og lignende, jeg absolutt aldri 12 00:00:53,400 --> 00:00:57,120 tenkt på meg selv som en datamaskin person, en datamaskin vitenskapsmann, og 13 00:00:57,120 --> 00:00:59,610 ærlig, trodde jeg mine venner i videregående skole som ble tatt datamaskin 14 00:00:59,610 --> 00:01:03,990 vitenskap var litt av en - geeks. 15 00:01:03,990 --> 00:01:08,880 >> Og likevel, når jeg kom hit på campus, var det dette kurset, CS50, og på 16 00:01:08,880 --> 00:01:12,620 tiden, hadde det dette ryktet av å virkelig være noe å pass. 17 00:01:12,620 --> 00:01:13,690 Det var en god kurs. 18 00:01:13,690 --> 00:01:15,360 Det var en morsom kurset. 19 00:01:15,360 --> 00:01:18,970 Men du måtte faktisk få den foten i døren. 20 00:01:18,970 --> 00:01:22,090 Og selv jeg ikke krysse at terskelen freshman year. 21 00:01:22,090 --> 00:01:25,590 Og jeg gikk på min måte å være en regjering konsentratoren, går gjennom 22 00:01:25,590 --> 00:01:28,787 som mange av forutsetningene som jeg kunne, krysser telle ting for gen 23 00:01:28,787 --> 00:01:32,340 ed eller kjerne og lignende, og deretter sophomore året, for noen grunn, jeg 24 00:01:32,340 --> 00:01:35,580 opp nerve å gå foten i Science Center B, der CS50. 25 00:01:35,580 --> 00:01:38,970 En svært kjent datamaskin vitenskapsmann ved navn Brian Kernighan var 26 00:01:38,970 --> 00:01:44,020 undervisning her det året, og selv da, jeg var bare villig til å faktisk 27 00:01:44,020 --> 00:01:47,720 fylle ut min studie kortet ved å ta denne klassen bestått / ikke bestått. 28 00:01:47,720 --> 00:01:50,140 Jeg så rundt meg, og jeg skjønte at alle i dette rommet er nødt til å vite 29 00:01:50,140 --> 00:01:52,880 måten mer om informatikk, om programmering, om datamaskiner. 30 00:01:52,880 --> 00:01:56,090 Alle må være programmering i dette rommet siden de var 12, men ja, 31 00:01:56,090 --> 00:01:57,470 det var ikke tilfelle. 32 00:01:57,470 --> 00:02:01,600 Og så den aller siste dagen, den femte mandag av semesteret som jeg tar 33 00:02:01,600 --> 00:02:05,300 dette spranget og endring fra bestått / ikke bestått til en bokstavkarakter, og ender opp med å endre min 34 00:02:05,300 --> 00:02:07,730 konsentrasjon samme dag til informatikk. 35 00:02:07,730 --> 00:02:10,630 >> Nå det er ikke vårt mål i denne klassen, for å slå dere alle inn i datamaskinen 36 00:02:10,630 --> 00:02:14,600 vitenskap konsentratorer, men egentlig å foreslå at det er denne muligheten 37 00:02:14,600 --> 00:02:18,630 på dette feltet og i andre felt som du kan være ganske ukjente, 38 00:02:18,630 --> 00:02:21,920 gitt at videregående skoler vanligvis følger en ganske standard curricular 39 00:02:21,920 --> 00:02:26,170 banen, men venture i, i CS50, til nye farvann. 40 00:02:26,170 --> 00:02:30,460 Og hvis du sitter her i dag tenker du ikke egentlig hører hjemme, så 41 00:02:30,460 --> 00:02:34,110 gjøre de fleste til høyre og til venstre. 42 00:02:34,110 --> 00:02:39,970 Faktisk, i fjor, hadde 76% av elevene i denne klassen noen tidligere erfaring. 43 00:02:39,970 --> 00:02:43,510 Så i motsetning til hva du kanskje tror, ​​de fleste av menneskene som sitter rundt deg 44 00:02:43,510 --> 00:02:47,130 i dag ikke, faktisk, har noen tidligere erfaring. 45 00:02:47,130 --> 00:02:52,030 18% har tatt en CS klasse, og 6% har tatt to eller flere. 46 00:02:52,030 --> 00:02:55,300 I mellomtiden ber vi våre studenter hvert år for å beskrive seg selv i form 47 00:02:55,300 --> 00:02:57,760 av komfort nivå, og dette er - 48 00:02:57,760 --> 00:02:59,010 det er ingen definisjon av dette. 49 00:02:59,010 --> 00:03:02,480 Du bare slags vet det, hvis du ikke er veldig komfortabel i CS50. 50 00:03:02,480 --> 00:03:07,250 Og i fjor hadde vi 55% i denne grønne pie stykke her, selv beskriver 51 00:03:07,250 --> 00:03:10,640 som mindre komfortable studenter som ærlig vi hadde ingen anelse om Hvorfor gjorde de 52 00:03:10,640 --> 00:03:14,800 handle kurset på den første dagen, men det samme 55% forble med oss ​​til 53 00:03:14,800 --> 00:03:19,270 Begrepet er slutt, det samme gjorde 35%, som var et sted i mellom de mer 54 00:03:19,270 --> 00:03:22,100 komfortable og de mindre komfortable. 55 00:03:22,100 --> 00:03:23,490 >> Så hva er informatikk? 56 00:03:23,490 --> 00:03:26,630 Vel, i videregående skole, og virkelig, mer generelt der ute i disse dager, 57 00:03:26,630 --> 00:03:29,740 det er denne oppfatningen eller denne misforståelse at informatikk er 58 00:03:29,740 --> 00:03:30,400 programmering. 59 00:03:30,400 --> 00:03:33,550 Og det er absolutt en del av informatikk, men programmering, 60 00:03:33,550 --> 00:03:36,490 uansett språk er, er egentlig bare et verktøy som dataforskere 61 00:03:36,490 --> 00:03:39,890 bruke til å løse problemer, enten i domenet av informatikk eller, 62 00:03:39,890 --> 00:03:42,990 stadig i disse dager, i naturvitenskap, den naturlige 63 00:03:42,990 --> 00:03:45,890 fag, i medisin, i humaniora, analysere 64 00:03:45,890 --> 00:03:47,320 store datasett. 65 00:03:47,320 --> 00:03:51,070 Anywhere nå er det datamaskin og data, er det en mulighet til å søke 66 00:03:51,070 --> 00:03:54,400 erfaringer i en klasse som CS50. 67 00:03:54,400 --> 00:03:57,490 >> Så la oss løse et problem at en datamaskin vitenskapsmann kan gå om 68 00:03:57,490 --> 00:04:02,370 løse og prøve å sette noen sjargong, sette noen konseptuelt rammeverk, rundt 69 00:04:02,370 --> 00:04:05,420 hva kan ellers være noen ganske abstrakte ideer. 70 00:04:05,420 --> 00:04:07,370 Så dette er en telefon. 71 00:04:07,370 --> 00:04:08,840 Du ser ikke disse tingene for ofte. 72 00:04:08,840 --> 00:04:11,910 Høgskolen synes fortsatt å ha disse i hus og sovesaler, men 73 00:04:11,910 --> 00:04:14,970 tilbake i dag, når du ønsker å bruke en telefon som dette, var det ingen 74 00:04:14,970 --> 00:04:16,760 elektronisk adressebok i din mobiltelefon. 75 00:04:16,760 --> 00:04:20,250 Snarere, trakk deg opp noe som kalles en telefonbok, og disse telefonen bøker 76 00:04:20,250 --> 00:04:23,110 hadde ca 1000 sider vanligvis. 77 00:04:23,110 --> 00:04:26,850 De ble sortert fra A til Z, og du bare måtte finne riktig side 78 00:04:26,850 --> 00:04:30,150 finne den personen du leter etter for å finne deres navn og deres 79 00:04:30,150 --> 00:04:31,020 telefonnummer. 80 00:04:31,020 --> 00:04:33,120 Nå hvordan går du om å se opp noen i denne boken? 81 00:04:33,120 --> 00:04:35,800 >> Anta mitt mål er å gi min venn Mike Smith en samtale. 82 00:04:35,800 --> 00:04:37,820 Vel, hvordan går jeg om å finne Mike Smith? 83 00:04:37,820 --> 00:04:42,370 Vel, en svært fornuftig tilnærming, hvis naiv og ineffektiv, ville være å starte 84 00:04:42,370 --> 00:04:47,690 her, og begynner flippe side fire, til side fem, til side seks, og å sortere 85 00:04:47,690 --> 00:04:50,930 av lineært, langs en rett linje, gå gjennom denne telefonboken, og selv 86 00:04:50,930 --> 00:04:54,010 selv om det kommer til å bli utrolig kjedelig, hvis Mike Smith er i denne 87 00:04:54,010 --> 00:04:57,480 bok, jeg til slutt kommer til å nå ham når jeg endelig snu til S 88 00:04:57,480 --> 00:04:58,790 delen av denne boken. 89 00:04:58,790 --> 00:05:01,240 Nå, selvfølgelig, trenger du ikke å være en datamaskin vitenskapsmann å vite at dette 90 00:05:01,240 --> 00:05:02,980 er en dum måte å løse dette problemet. 91 00:05:02,980 --> 00:05:04,620 Hva ville en typisk menneske gjøre? 92 00:05:08,430 --> 00:05:09,330 Godt gjort. 93 00:05:09,330 --> 00:05:11,370 Så du ville vende til midten, ikke sant? 94 00:05:11,370 --> 00:05:14,970 Så du vil vende omtrent til midten, se her, og jeg synes å finne meg selv 95 00:05:14,970 --> 00:05:16,660 i M-delen. 96 00:05:16,660 --> 00:05:19,880 Ok, så M er helt klart ikke det jeg leter etter. 97 00:05:19,880 --> 00:05:23,150 Mike er til høyre, så å si, i denne delen, og som noen av dere har 98 00:05:23,150 --> 00:05:27,740 sett før, kan vi bokstavelig talt nå fortsette å rive dette 99 00:05:27,740 --> 00:05:28,990 problem i en halv. 100 00:05:33,870 --> 00:05:35,060 >> Du bør ikke være så imponert. 101 00:05:35,060 --> 00:05:36,990 Rive det ned sømmen er faktisk ikke så vanskelig. 102 00:05:36,990 --> 00:05:40,040 De virkelige mennesker gjør det på denne måten, men ned sømmen, vi 103 00:05:40,040 --> 00:05:41,400 nå har to problemer. 104 00:05:41,400 --> 00:05:44,800 Som hver er halvparten så stor, og vi kan bokstavelig kaste at halvparten av 105 00:05:44,800 --> 00:05:45,560 problemet bort. 106 00:05:45,560 --> 00:05:48,590 Nå er vi igjen ikke med 1.000 sider, men si 500. 107 00:05:48,590 --> 00:05:49,580 Så nå hva gjør jeg? 108 00:05:49,580 --> 00:05:53,030 Vel, vil en typisk menneskelig gå omtrent i midten igjen, og jeg finner meg selv på 109 00:05:53,030 --> 00:05:55,080 R delen, så ikke helt der. 110 00:05:55,080 --> 00:05:58,380 Så igjen, kan jeg rive dette problemet i to. 111 00:05:58,380 --> 00:05:59,630 Takk. 112 00:06:02,000 --> 00:06:07,050 Så nå har jeg bare rundt 250 sider, og jeg kan gjøre dette igjen og igjen, og 113 00:06:07,050 --> 00:06:11,340 igjen, og gå fra 125 ned til omtrent 60, til 30, til 15, og så videre. 114 00:06:11,340 --> 00:06:16,680 Og til slutt vil jeg få redusert til en av S-sider, der, hvis han er 115 00:06:16,680 --> 00:06:19,510 i telefonboken, bør Mike Smith være. 116 00:06:19,510 --> 00:06:22,720 >> Nå det er en åpenbart ganske rimelig algoritme, og det er en 117 00:06:22,720 --> 00:06:25,395 engangsavgift for bruk algoritmen i dette tilfellet, men hva kan vi liksom 118 00:06:25,395 --> 00:06:26,920 ta bort fra det? 119 00:06:26,920 --> 00:06:30,750 Vel, den første tilnærmingen, riktig, hvis naiv, men det var, kan være 120 00:06:30,750 --> 00:06:32,270 beskrevet av denne rette linje. 121 00:06:32,270 --> 00:06:35,740 Så hvis du er på x-aksen, her vi si, dette er størrelsen på problemet. 122 00:06:35,740 --> 00:06:39,530 Slik som x-aksen går til høyre, blir problemet større. 123 00:06:39,530 --> 00:06:40,870 Hva betyr det å bli større? 124 00:06:40,870 --> 00:06:43,920 I sammenheng med dette problemet, flere sider i telefonboken. 125 00:06:43,920 --> 00:06:45,860 Det er mer noe vi kan måle. 126 00:06:45,860 --> 00:06:47,660 På y-aksen, tid til å løse. 127 00:06:47,660 --> 00:06:51,790 Så som aksen går opp, antar vi det antakelig tar mer tid. 128 00:06:51,790 --> 00:06:56,960 Slik at første tilnærming lineært søker fra side en til side 1000 129 00:06:56,960 --> 00:07:01,480 er en lineær prosedyre, en lineær algoritme eller prosess, og vi kan 130 00:07:01,480 --> 00:07:03,120 beskrive det ved denne rette linje. 131 00:07:03,120 --> 00:07:06,560 Hvis jeg legger flere sider i telefonlisten, det kommer til, i verste 132 00:07:06,560 --> 00:07:09,950 tilfelle, ta meg en side flip å finne Mike Smith. 133 00:07:09,950 --> 00:07:13,840 Hvis jeg legger 100 sider, 100 flere knipser, eller enheter av gangen. 134 00:07:13,840 --> 00:07:15,350 >> Nå kan jeg være litt flink med dette. 135 00:07:15,350 --> 00:07:17,550 Jeg trenger ikke å virkelig slå den én side av gangen. 136 00:07:17,550 --> 00:07:21,110 Jeg kan gjøre ting som to av gangen eller fire om gangen, men selv det er ikke 137 00:07:21,110 --> 00:07:22,350 alle som fundamentalt bedre. 138 00:07:22,350 --> 00:07:26,540 Selv om det er to om gangen, ja, beveger den slags denne linjen ned litt, 139 00:07:26,540 --> 00:07:31,010 og det betyr at det tar mindre tid, gitt samme antall sider, men 140 00:07:31,010 --> 00:07:32,570 det er ikke fundamentalt bedre. 141 00:07:32,570 --> 00:07:36,290 Men hva gjør vi bare gjøre, og hva gjorde dere alle gjør instinktivt? 142 00:07:36,290 --> 00:07:41,210 Du faktisk oppnådd en litt noe sånt som dette, logaritmisk tid, 143 00:07:41,210 --> 00:07:46,540 hvorved problemet kan vokse og vokse og vokse, men kostnaden ved å løse det 144 00:07:46,540 --> 00:07:49,460 problem, den tiden som kreves for å løse det problemet, ikke 145 00:07:49,460 --> 00:07:51,460 vokse nesten like fort. 146 00:07:51,460 --> 00:07:55,930 Dette ville være en logaritmisk kurve, logg av n, hvor n er bare i størrelsen 147 00:07:55,930 --> 00:07:58,310 problemet, antall sider i denne telefonboken. 148 00:07:58,310 --> 00:07:59,780 Og hva betyr dette i praksis? 149 00:07:59,780 --> 00:08:02,630 Vel, hvis vi har, i likhet, 500 personer i dette rommet akkurat nå - 150 00:08:02,630 --> 00:08:04,470 eller rettere sagt, hvis vi har - 151 00:08:04,470 --> 00:08:06,020 miksing metafor - 152 00:08:06,020 --> 00:08:09,870 gjorde ikke som eksempel, men dette året - så hvis vi har 500 sider i telefonen 153 00:08:09,870 --> 00:08:14,450 bok, og vi doble det til 1000, i dette mer intelligent modellen av 154 00:08:14,450 --> 00:08:17,670 bla til midten, ikke hvor mange flere sider-tearers det ta å gå fra 155 00:08:17,670 --> 00:08:19,520 500 sider til 1000? 156 00:08:19,520 --> 00:08:21,650 Vel, bare en ekstra side tåre. 157 00:08:21,650 --> 00:08:24,580 Hvis du ga meg en 2000 side telefonbok, ingen big deal. 158 00:08:24,580 --> 00:08:27,200 Jeg ville bare rive det en ekstra gang. 159 00:08:27,200 --> 00:08:31,780 >> Så kort sagt, kan størrelsen på problemet vokser mye raskere enn kostnadene for 160 00:08:31,780 --> 00:08:32,780 faktisk løse det. 161 00:08:32,780 --> 00:08:35,030 Nå er dette bare en slik algoritme. 162 00:08:35,030 --> 00:08:37,610 Det er andre vi kan løse i dette samme måte. 163 00:08:37,610 --> 00:08:40,730 Og så hvorfor kan ikke vi gjøre dette - hvis du vil humor meg, riktignok klønete her 164 00:08:40,730 --> 00:08:45,085 i Sanders, gå videre, alle sammen, hvis du kan, og stå opp i stedet. 165 00:08:48,550 --> 00:08:52,440 Som du ser på skjermen her, dette er en algoritme, en prosess, en datamaskin 166 00:08:52,440 --> 00:08:55,980 programmet, hvis du vil, for å bli henrettet av mennesker, som har bare tre trinn. 167 00:08:55,980 --> 00:08:57,980 Vi er allerede på trinn en, har du stått opp. 168 00:08:57,980 --> 00:09:00,260 Og nå tenke deg selv nummer én. 169 00:09:00,260 --> 00:09:01,450 Det er din nåværende tall. 170 00:09:01,450 --> 00:09:03,120 Alle her er nummer én. 171 00:09:03,120 --> 00:09:07,160 Trinn to, koble opp med noen stående og dine tall sammen, 172 00:09:07,160 --> 00:09:09,345 og deretter vedta denne summen som det nye nummeret. 173 00:09:17,470 --> 00:09:20,830 En av dere bør sette seg ned, og gjenta. 174 00:10:11,330 --> 00:10:14,100 >> På dette punktet, bør færre og færre mennesker bli stående. 175 00:10:16,820 --> 00:10:20,030 Det er der det blir mer vanskelig. 176 00:10:20,030 --> 00:10:21,280 Noen her, her. 177 00:10:30,620 --> 00:10:34,180 Det verste er, du må også veldig verbalt regne foran 178 00:10:34,180 --> 00:10:36,310 av hundrevis av Harvard undergrads. 179 00:10:42,920 --> 00:10:45,280 Ok, litt av en bug her. 180 00:10:45,280 --> 00:10:48,470 Ok, hva er nummeret ditt? 181 00:10:48,470 --> 00:10:49,170 Ni. 182 00:10:49,170 --> 00:10:51,880 Okay. 183 00:10:51,880 --> 00:10:53,130 Hva er nummeret ditt? 184 00:10:55,920 --> 00:10:57,710 179. 185 00:10:57,710 --> 00:10:58,470 Ok, bra. 186 00:10:58,470 --> 00:10:59,420 Så 188. 187 00:10:59,420 --> 00:11:00,570 Så dere kan sitte ned. 188 00:11:00,570 --> 00:11:02,320 Hva er nummeret ditt? 189 00:11:02,320 --> 00:11:04,420 118. 190 00:11:04,420 --> 00:11:07,440 Noen smarte undergrad begynne å gjøre regnestykket. 191 00:11:07,440 --> 00:11:09,180 Ok, 118, 188. 192 00:11:09,180 --> 00:11:10,430 Hva annet har vi? 193 00:11:13,120 --> 00:11:16,450 71. 194 00:11:16,450 --> 00:11:17,650 79. 195 00:11:17,650 --> 00:11:18,260 Okay. 196 00:11:18,260 --> 00:11:20,220 Og? 197 00:11:20,220 --> 00:11:23,240 47, som lærere, som gir oss hvor mange? 198 00:11:26,250 --> 00:11:29,830 705 er svaret. 199 00:11:29,830 --> 00:11:32,045 Og det er faktisk akkurat riktig. 200 00:11:37,250 --> 00:11:40,080 >> Nei, vi var faktisk litt av det, men hvordan 201 00:11:40,080 --> 00:11:41,220 bør dette ha fungert? 202 00:11:41,220 --> 00:11:44,080 Hva burde skjedde? 203 00:11:44,080 --> 00:11:48,270 Så på hver iterasjon av denne algoritmen, startet vi med noen tall 204 00:11:48,270 --> 00:11:51,480 av folk som står, og det var det totale antallet, n, først. 205 00:11:51,480 --> 00:11:53,880 Enn halvparten av dere satte seg, og vi gikk til n over to. 206 00:11:53,880 --> 00:11:57,570 Enn halvparten av dere satte seg, gikk vi til n over fire, n over åtte, over 16, 207 00:11:57,570 --> 00:12:01,220 og så videre, inntil, selv om den slags disintegrerte det på 208 00:12:01,220 --> 00:12:04,760 slutt, i teorien, alle hadde koblet sammen i balkong, og mezzanine, og 209 00:12:04,760 --> 00:12:10,180 orkester her, ville vi ha hatt bare en ensom person stående, med en total 210 00:12:10,180 --> 00:12:13,930 verdi, i dette tilfellet, av 705. 211 00:12:13,930 --> 00:12:16,600 Nå hva betyr det, men for kjøretiden? 212 00:12:16,600 --> 00:12:18,960 Vel, tenk om jeg, som menneske, hadde gjort dette manuelt. 213 00:12:18,960 --> 00:12:22,602 Jeg ville ha startet ganske naivt, men riktig med én, to, tre, 214 00:12:22,602 --> 00:12:27,060 fire, fem, seks, sju, åtte, og så videre, tar ganske lang tid. 215 00:12:27,060 --> 00:12:28,120 Så jeg kan gjøre bedre, ikke sant? 216 00:12:28,120 --> 00:12:29,830 I grunnskolen, trenger du ikke bare telle i seg. 217 00:12:29,830 --> 00:12:30,580 Du teller i toere. 218 00:12:30,580 --> 00:12:32,190 Så to, fire, seks, åtte, ti, tolv. 219 00:12:32,190 --> 00:12:36,210 Og det blir mye raskere, men nå fundamentalt, ved å utnytte 220 00:12:36,210 --> 00:12:39,710 kollektiv intelligens til alle i dette rommet, kan vi oppnå en kurve mye 221 00:12:39,710 --> 00:12:43,750 lignende, hvor nå, antall mennesker i dette rommet 222 00:12:43,750 --> 00:12:48,570 kunne doble, en annen 700 personer går inn i dette rommet for 1400 mennesker, men 223 00:12:48,570 --> 00:12:53,010 det ville bare ta oss en mer gjentakelse av denne algoritmen for å løse. 224 00:12:53,010 --> 00:12:55,970 >> Og så i økende grad, i disse dager, når vi har disse enorme datasett i 225 00:12:55,970 --> 00:12:59,690 Facebook og Google, og lignende, er det å løse problemer med denne litt 226 00:12:59,690 --> 00:13:04,060 innsikt, denne litt kløkt, som er slik at vi i økende grad til å gjøre mye, 227 00:13:04,060 --> 00:13:07,290 mye kraftigere ting med datamaskiner i dag. 228 00:13:07,290 --> 00:13:10,440 Hvis du liker slike ting, har du kanskje sett på Facebook CS50 er 229 00:13:10,440 --> 00:13:12,990 egen Puzzle Day, kommer opp førstkommende lørdag. 230 00:13:12,990 --> 00:13:15,860 Hvis du ønsker å delta i noe som dette, hvor du og 231 00:13:15,860 --> 00:13:20,470 to, eller tre, eller fire lag med fire ønsker å løse noen gåter slike 232 00:13:20,470 --> 00:13:25,030 som denne, vil du stå en sjanse til å vinne noen flotte premier, blant disse er en 233 00:13:25,030 --> 00:13:29,130 Wii, og noen gavekort, og noen andre Facebook swag denne lørdagen, 234 00:13:29,130 --> 00:13:30,770 middag til 15:00. 235 00:13:30,770 --> 00:13:35,590 Gå til cs50.net/rsvp for slikt. 236 00:13:35,590 --> 00:13:38,070 Og dette bildet er på nettet hvis du ønsker å leke seg. 237 00:13:38,070 --> 00:13:40,170 Oppgavene i år skal være nye. 238 00:13:40,170 --> 00:13:43,350 >> Du kan legge merke til i klasserommet, også, alle flere kameraer i år. 239 00:13:43,350 --> 00:13:47,950 Så ikke bare vil kurset bli filmet på vanlig måte, kan CS50 også være 240 00:13:47,950 --> 00:13:51,230 ta del i en dokumentar om høyere utdanning som ser på 241 00:13:51,230 --> 00:13:54,460 transformerende opplevelse som en student kan ha i disse dager i en 242 00:13:54,460 --> 00:13:56,010 lavere studium. 243 00:13:56,010 --> 00:14:00,340 Så mot disse slutten, vil vi ikke bare være filme for det, vil vi filme 244 00:14:00,340 --> 00:14:04,700 så vel for, i økende grad, vår online publikum, så vel som til tider 245 00:14:04,700 --> 00:14:05,810 denne målgruppen her. 246 00:14:05,810 --> 00:14:09,120 Så vi velkommen til klassen årets våre Harvard Extension School studenter, 247 00:14:09,120 --> 00:14:12,060 graduate school of design, utdanning, handelshøyskole, Kennedy 248 00:14:12,060 --> 00:14:15,600 Skolen, jusstudiet, samt en rekke studenter fra Belmont, 249 00:14:15,600 --> 00:14:18,280 Lexington, Newton, og Watertown High Schools. 250 00:14:18,280 --> 00:14:19,250 Velkommen til dere alle. 251 00:14:19,250 --> 00:14:22,330 I tillegg dette året, som du kanskje har hørt, Harvard, og MIT, og 252 00:14:22,330 --> 00:14:25,740 Berkeley har nå inngått et samarbeid partnerskap på en 253 00:14:25,740 --> 00:14:30,490 initiativ kalt EDX, som er et initiativ for å åpne opp utdanning til alle 254 00:14:30,490 --> 00:14:34,010 jo flere folk på nettet og, fundamentalt, begynner å forske på 255 00:14:34,010 --> 00:14:36,530 et mye bredere skala med hensyn til hvordan folk lærer. 256 00:14:36,530 --> 00:14:39,960 Og så CS50 vil være høgskolens første kurset deltar i det 257 00:14:39,960 --> 00:14:42,960 initiativ, så vel, noe som betyr at du vil ha tilgang til alle de mer 258 00:14:42,960 --> 00:14:46,890 verktøy, desto mer pensum innhold, desto mer videoinnhold som 259 00:14:46,890 --> 00:14:52,410 et resultat, så vel som av går morgen, 53.019 personer som har 260 00:14:52,410 --> 00:14:56,825 registrert for å ta CS50 sammen med deg i år på internett. 261 00:15:05,940 --> 00:15:08,830 Så hva dette betyr, i særdeleshet, er at lærere og jeg har 262 00:15:08,830 --> 00:15:12,080 tilbrakte mye tid i sommer forbereder for høsten, både på campus 263 00:15:12,080 --> 00:15:15,720 og på, slik at vi kan begynne å bygge opp et korpus av interessant, av 264 00:15:15,720 --> 00:15:20,760 overbevisende, å engasjere pedagogisk innhold, fokuserer på at spesielt på 265 00:15:20,760 --> 00:15:26,090 mer intime conveyances av ganske komplisert materiale. 266 00:15:26,090 --> 00:15:28,540 >> Så i tillegg til kursets forelesninger, og seksjoner, og ting 267 00:15:28,540 --> 00:15:31,810 såkalte walkthroughs, som vi vil se i bare litt, vil vi også ha 268 00:15:31,810 --> 00:15:35,090 disse shorts i år som lar deg engasjere seg med kurs fra en 269 00:15:35,090 --> 00:15:36,660 annen vinkel alle sammen. 270 00:15:36,660 --> 00:15:39,610 Så la oss bruke dette som en mulighet til å ta en rask titt på en som 271 00:15:39,610 --> 00:15:41,460 drøfter dette begrepet binære. 272 00:15:41,460 --> 00:15:44,890 >> Så i informatikk er det ting som kalles algoritmer, hvorav to 273 00:15:44,890 --> 00:15:47,870 vi bare tok en titt på - disse prosedyrene for å løse problemer. 274 00:15:47,870 --> 00:15:51,060 Men på slutten av dagen, må du representere informasjon eller annen måte, og du 275 00:15:51,060 --> 00:15:54,540 trenger å representere det på en måte som en datamaskin kan forstå. 276 00:15:54,540 --> 00:15:57,330 Og selv om du egentlig ikke forstår datamaskiner, og du er i 277 00:15:57,330 --> 00:16:01,470 at 76% akkurat nå, har du sannsynligvis noen vag følelse at datamaskiner 278 00:16:01,470 --> 00:16:05,300 liksom avtale i nuller og enere, det binære systemet, så å si. 279 00:16:05,300 --> 00:16:06,630 Nå hvorfor er det slik? 280 00:16:06,630 --> 00:16:10,120 Vel, det viser seg når datamaskiner første kom, hvis du trengte å representere 281 00:16:10,120 --> 00:16:13,810 informasjon, kan du gjøre det med strøm, og selv om dette er litt 282 00:16:13,810 --> 00:16:18,140 av en overforenkling, er en svært enkel måte å registrere informasjon enten 283 00:16:18,140 --> 00:16:22,600 ved å slå på at elektrisitet på, en i binær, så å si, eller snu 284 00:16:22,600 --> 00:16:24,290 at elektrisitet av. 285 00:16:24,290 --> 00:16:26,210 >> Så Barry, hvis du ikke har noe imot, kunne vi dempe lysene 286 00:16:26,210 --> 00:16:28,140 fullt for bare et øyeblikk? 287 00:16:28,140 --> 00:16:31,750 Dette her er en veldig umotivert binær null. 288 00:16:31,750 --> 00:16:35,960 Greit, hvis vi skru lysene opp, nå Sanders Theatre er 289 00:16:35,960 --> 00:16:37,990 representerer den binære verdien av en. 290 00:16:37,990 --> 00:16:41,860 Dessverre, med bare en bit, med bare ett sett med lys, kan vi bare 291 00:16:41,860 --> 00:16:45,770 representerer to tall i verden, null og én, og det ville være fint om 292 00:16:45,770 --> 00:16:48,510 datamaskiner kunne telle litt høyere enn det, men ja, de kan. 293 00:16:48,510 --> 00:16:52,170 Så la meg trekke opp på skjermen her vår venn, Nate Hardison, som vil gi 294 00:16:52,170 --> 00:16:54,980 oss en rask titt i løpet av bare noen få minutter på 295 00:16:54,980 --> 00:16:56,505 denne oppfatningen av binære. 296 00:17:03,526 --> 00:17:06,550 >> NATE Hardison: Tilbake når du lærte å lese og skrive tall, du 297 00:17:06,550 --> 00:17:10,589 lært om tallene null til ni. 298 00:17:10,589 --> 00:17:13,589 Å skrive hele tall større enn ni, lærer du at alt du måtte gjøre 299 00:17:13,589 --> 00:17:23,130 ble bruke en kombinasjon av disse sifre, som i 52 og 437. 300 00:17:23,130 --> 00:17:27,760 Så denne måten å skrive tall har et navn, titallssystemet. 301 00:17:27,760 --> 00:17:28,830 Hvorfor desimal? 302 00:17:28,830 --> 00:17:33,630 Vel, betyr det latinske roten av desimal, deca, 10, og når du har 10 siffer 303 00:17:33,630 --> 00:17:37,420 i notasjon systemet, blir 10 en ganske spesielt nummer. 304 00:17:37,420 --> 00:17:42,480 La oss se på antall 437 skrevet i titallssystemet å forstå hvorfor. 305 00:17:42,480 --> 00:17:52,330 >> Vi kan først bryte opp 437 i 400 pluss 30 pluss 7. 306 00:17:52,330 --> 00:18:00,260 Vi kan ta den fra hverandre enda mer, slik at vi har fått fire ganger 100 pluss tre 307 00:18:00,260 --> 00:18:05,120 ganger 10 pluss 7 ganger 1. 308 00:18:05,120 --> 00:18:08,580 Husk å lære om de sted, 10s sted, 100s 309 00:18:08,580 --> 00:18:10,190 sted, og så videre? 310 00:18:10,190 --> 00:18:13,120 Dette er akkurat der det kommer fra. 311 00:18:13,120 --> 00:18:15,870 Og til slutt, kan vi se hvordan vi har fått en haug med krefter 312 00:18:15,870 --> 00:18:17,900 10 innebygd i her. 313 00:18:17,900 --> 00:18:28,820 Vi har fire ganger 10 til 2 pluss 3 ganger 10 til 1 pluss 7 314 00:18:28,820 --> 00:18:31,720 ganger 10 til null. 315 00:18:31,720 --> 00:18:35,390 Så nå kan du se hvorfor 10 er et spesielt nummer i titallssystemet. 316 00:18:35,390 --> 00:18:37,370 Faktisk har vi et navn for det. 317 00:18:37,370 --> 00:18:40,420 Det kalles basen, siden det er i bunnen av eksponenten i 318 00:18:40,420 --> 00:18:42,100 vår regning her. 319 00:18:42,100 --> 00:18:45,320 >> Titallssystemet er ikke den eneste måten å representere tall. 320 00:18:45,320 --> 00:18:50,480 Faktisk, selv om vi blir kvitt sifrene to gjennom ni, kan vi fortsatt 321 00:18:50,480 --> 00:18:53,740 representere alle de tallene som vi kunne med desimal. 322 00:18:53,740 --> 00:18:58,910 Så nå som vi har to sifre, null og én, er to vår spesielt nummer, 323 00:18:58,910 --> 00:19:01,210 grunnlaget for vår notasjonssystem. 324 00:19:01,210 --> 00:19:04,580 Navnet på denne notasjon system kalles binært, siden 325 00:19:04,580 --> 00:19:07,030 prefiks bi betyr to. 326 00:19:07,030 --> 00:19:11,190 Så i stedet, nå, for å ha et de sted, og 10s sted, og så videre, har vi 327 00:19:11,190 --> 00:19:15,900 har nå et de sted, et toere sted, et Fours sted, og så videre, går opp med 328 00:19:15,900 --> 00:19:17,550 krefter to. 329 00:19:17,550 --> 00:19:19,450 Så la oss se dette ved å gjøre noen telling. 330 00:19:19,450 --> 00:19:24,940 Så null er fortsatt null, og en er fremdeles en. 331 00:19:24,940 --> 00:19:31,050 Men nå som vi har fått en toere sted i stedet for et 10s sted, 10 332 00:19:31,050 --> 00:19:33,190 representerer nummer to. 333 00:19:33,190 --> 00:19:38,386 Å få tre, legger vi en til det, og få 11. 334 00:19:38,386 --> 00:19:44,660 Fire, siden det er nå en fire sted, er representert med 100. 335 00:19:44,660 --> 00:19:49,410 Fem er 101. 336 00:19:49,410 --> 00:19:53,642 Seks er 110. 337 00:19:53,642 --> 00:19:56,610 Sju er 111. 338 00:19:56,610 --> 00:19:58,470 Åtte igjen, har sin egen plass. 339 00:19:58,470 --> 00:20:02,790 Så det er 1000. 340 00:20:02,790 --> 00:20:05,201 Og jeg tror du tar poenget. 341 00:20:05,201 --> 00:20:09,800 >> SPEAKER 1: Så dette er å si hva datamaskiner gjør og hva binær er er 342 00:20:09,800 --> 00:20:13,690 faktisk ikke så ulik fra hva vi har tatt for gitt for noen 343 00:20:13,690 --> 00:20:14,560 år, ikke sant? 344 00:20:14,560 --> 00:20:17,097 Tilbake i grunnskolen, lærte du å telle nøyaktig i 345 00:20:17,097 --> 00:20:19,970 mote som Nate foreslått, men du sannsynligvis ikke har egentlig tenkt på 346 00:20:19,970 --> 00:20:22,440 det siden, det faktum at det er dette som sted, 10s sted og 100s 347 00:20:22,440 --> 00:20:23,315 sted, og det er ganske vilkårlig. 348 00:20:23,315 --> 00:20:26,210 Og faktisk, datamaskiner rett og slett bruke denne annen base. 349 00:20:26,210 --> 00:20:30,160 Men på slutten av dagen, å faktisk fysisk representere denne oppfatningen av en 350 00:20:30,160 --> 00:20:33,130 null og én, har du åpenbart ikke bare slå av lysene på og av 351 00:20:33,130 --> 00:20:33,445 nødvendigvis. 352 00:20:33,445 --> 00:20:36,100 Du trenger å gjøre det på en mye finere korn skala. 353 00:20:36,100 --> 00:20:39,990 Og ved finere korn, kan du huske dette dum liten leketøy fra barndommen, 354 00:20:39,990 --> 00:20:42,570 Ullen Willy og disse små magnetiske partikler. 355 00:20:42,570 --> 00:20:46,440 >> Så magnetiske partikler er noe som du kan justere i et par 356 00:20:46,440 --> 00:20:49,920 forskjellige retninger, kanskje nord-sør eller sør-nord. 357 00:20:49,920 --> 00:20:53,470 Og så mye fysiske inkarnasjoner av teknologi i disse dager som bruker 358 00:20:53,470 --> 00:20:57,690 binære, som bruker nuller og enere, bare ha magnetisme på innsiden 359 00:20:57,690 --> 00:21:04,110 som justerer ting opp-ned eller ned-opp, og dermed representerer en null eller en, 360 00:21:04,110 --> 00:21:04,890 henholdsvis. 361 00:21:04,890 --> 00:21:08,930 Så ja, la oss gå bort fra det abstrakte her, og se på innsiden 362 00:21:08,930 --> 00:21:10,780 av hva som er en mer tradisjonell datamaskinens harddisk. 363 00:21:10,780 --> 00:21:13,840 Dette skjer for å være litt større på skjermen, i at det er fra en stasjonær 364 00:21:13,840 --> 00:21:18,310 datamaskin, men bærbare datamaskiner i dag har fortsatt den samme teknologien, men er gradvis 365 00:21:18,310 --> 00:21:22,140 blir erstattet av mer avanserte ting som faktisk har ingen bevegelige 366 00:21:22,140 --> 00:21:25,275 deler - inne, da, på en harddisk. 367 00:21:25,275 --> 00:21:28,450 >> SPEAKER 2: Harddisken er der PC lagrer mesteparten av 368 00:21:28,450 --> 00:21:29,990 sine faste data. 369 00:21:29,990 --> 00:21:34,710 For å gjøre det, reiser data fra RAM sammen med programvare signaler som forteller 370 00:21:34,710 --> 00:21:37,420 harddisken hvordan du kan lagre disse dataene. 371 00:21:37,420 --> 00:21:40,720 Harddisken kretser oversette disse signalene til spenning 372 00:21:40,720 --> 00:21:42,270 svingninger. 373 00:21:42,270 --> 00:21:46,290 Disse, i sin tur, styrer harddiskens bevegelige deler, noen av de få 374 00:21:46,290 --> 00:21:48,890 bevegelige deler igjen i den moderne datamaskinen. 375 00:21:48,890 --> 00:21:53,400 Noen av de signaler styrer en motor, hvilke skoler metall belagt platestabel. 376 00:21:53,400 --> 00:21:56,810 Dine data er faktisk lagret på disse platene. 377 00:21:56,810 --> 00:21:59,940 Andre signaler flytte lese-og skrivehoder å lese eller 378 00:21:59,940 --> 00:22:02,030 skrive data på platene. 379 00:22:02,030 --> 00:22:06,710 Dette maskineriet er så presis at et hårstrå kan ikke engang passere mellom 380 00:22:06,710 --> 00:22:11,390 hoder spinne fat, men det fungerer alt på kjempefint hastigheter. 381 00:22:11,390 --> 00:22:15,120 >> SPEAKER 1: Så vi nå zoome inn på hva som faktisk skjer på toppen av disse 382 00:22:15,120 --> 00:22:19,620 platters i form av magnetisme, har vi denne andre av to utseende. 383 00:22:19,620 --> 00:22:22,940 >> SPEAKER 3: La oss se på hva vi nettopp så i sakte film. 384 00:22:22,940 --> 00:22:27,010 Når en kort puls av elektrisitet blir sendt til lese-skrive hodet, knipser det 385 00:22:27,010 --> 00:22:30,390 på en liten elektromagnetisk for en brøkdel av et sekund. 386 00:22:30,390 --> 00:22:34,280 Magneten skaper et felt, endrer hvilke polariteten en liten, liten 387 00:22:34,280 --> 00:22:37,995 del av metallpartikler som strøk hver tallerken overflate. 388 00:22:37,995 --> 00:22:41,810 Et mønster serie av disse små ladede opp områder på disken representerer en 389 00:22:41,810 --> 00:22:45,820 eneste bit av data i et binært tall som brukes av datamaskiner. 390 00:22:45,820 --> 00:22:49,430 Nå hvis strømmen er sendt en vei gjennom lese-skrive hodet, området 391 00:22:49,430 --> 00:22:51,170 er polarisert i en retning. 392 00:22:51,170 --> 00:22:53,250 Hvis strømmen er sendt i den motsatte retning, den 393 00:22:53,250 --> 00:22:55,220 polarisering er reversert. 394 00:22:55,220 --> 00:22:57,680 Hvordan får du data utenfor harddisken? 395 00:22:57,680 --> 00:22:59,400 Bare reversere prosessen. 396 00:22:59,400 --> 00:23:02,050 Så det er partiklene på disken som får strøm og lese-skrive 397 00:23:02,050 --> 00:23:03,340 hode i bevegelse. 398 00:23:03,340 --> 00:23:06,010 Sett sammen millioner av disse magnetisert segmenter, og 399 00:23:06,010 --> 00:23:07,440 du har en fil. 400 00:23:07,440 --> 00:23:12,240 Nå biter av en enkelt fil kan bli spredt over et stasjonens fat, 401 00:23:12,240 --> 00:23:15,270 typen som rotet papirer på skrivebordet. 402 00:23:15,270 --> 00:23:18,800 Så en spesiell ekstra fil holder oversikt over hvor alt er. 403 00:23:18,800 --> 00:23:21,640 Tror ikke du ønske du hadde noe sånt? 404 00:23:21,640 --> 00:23:23,340 >> SPEAKER 1: Ja. 405 00:23:23,340 --> 00:23:27,560 Så vi har denne evnen til å representere denne informasjonen, tall 406 00:23:27,560 --> 00:23:28,440 på et svært lavt nivå. 407 00:23:28,440 --> 00:23:32,730 Vi har en fysisk måte å representere det samme, men vi kan ikke egentlig 408 00:23:32,730 --> 00:23:36,440 gjøre alt det mye av interesse ennå, annet enn kanskje noen aritmetiske og 409 00:23:36,440 --> 00:23:36,940 matematikk. 410 00:23:36,940 --> 00:23:40,830 Vi har ingen måte å representere hittil ting som alfabetiske bokstaver, 411 00:23:40,830 --> 00:23:44,100 slik at vi mennesker kan kommunisere ved hjelp av disse samme enhetene. 412 00:23:44,100 --> 00:23:48,240 Men heldigvis, det finnes kodinger, mønstre av nuller og enere 413 00:23:48,240 --> 00:23:52,920 som representerer høyere nivå konstruerer som A og B, og C, og hele 414 00:23:52,920 --> 00:23:54,880 setninger og avsnitt, og lignende. 415 00:23:54,880 --> 00:24:00,300 Og så ASCII, som er et akronym som refererer til denne kodesystem der 416 00:24:00,300 --> 00:24:04,350 ett nummer representerer en gitt bokstav - for eksempel nummeret som vi vet 417 00:24:04,350 --> 00:24:09,120 som desimalverdi 65 er kjent som den store bokstaven A til datamaskiner. 418 00:24:09,120 --> 00:24:13,670 Desimalverdien av 97 i datamaskiner er kjent som en liten en. 419 00:24:13,670 --> 00:24:15,210 Og hva betyr det egentlig? 420 00:24:15,210 --> 00:24:19,510 Vel, selv om Nate, for et øyeblikk siden, telles bare opp fra null til åtte, hvis 421 00:24:19,510 --> 00:24:24,910 vi skulle fortsette å telle opp til 65, eller ytterligere, til 97, mønsteret av 422 00:24:24,910 --> 00:24:28,440 nuller og enere at han ville ha trukket på skjermen ville være nøyaktig 423 00:24:28,440 --> 00:24:33,420 hva en datamaskin bruker til å representere bokstaven A i alle caps, eller bokstaven a 424 00:24:33,420 --> 00:24:34,610 med små bokstaver. 425 00:24:34,610 --> 00:24:36,690 Og ja, det er en hel ordning på dette. 426 00:24:36,690 --> 00:24:41,570 Dette er, ved første øyekast, overveldende oversikt over kodinger, men hvis du fokuserer 427 00:24:41,570 --> 00:24:46,210 bare på høyre halvdel her, legge merke til i denne midterste kolonnen, har vi denne 428 00:24:46,210 --> 00:24:49,010 oppfatningen av tall etterfulgt av bokstaver. 429 00:24:49,010 --> 00:24:53,830 Og på toppen, har vi 32, og karakteren char, som 32, 430 00:24:53,830 --> 00:24:57,360 heltall, nå refererer, er tilsynelatende mellomromstasten karakter. 431 00:24:57,360 --> 00:25:00,720 Når du får plass bar tegnet på den bærbare datamaskinen, hva du virkelig 432 00:25:00,720 --> 00:25:04,160 sending er et tall, et mønster av nuller og enere, en strøm av elektrisitet, 433 00:25:04,160 --> 00:25:07,770 hvis du vil, som representerer de nuller og enere, at datamaskinen da 434 00:25:07,770 --> 00:25:10,330 tolker som et mellomrom på skjermen. 435 00:25:10,330 --> 00:25:12,210 Et utropstegn er 33. 436 00:25:12,210 --> 00:25:13,345 Anførselstegn er 34. 437 00:25:13,345 --> 00:25:18,945 Og hvis vi bla nedover her over til høyre, ser vi at 65 er faktisk A, og 438 00:25:18,945 --> 00:25:21,290 97 er små bokstaver faktisk en. 439 00:25:21,290 --> 00:25:23,910 >> Så nå som vi har denne kodeskjema, kan vi begynne å 440 00:25:23,910 --> 00:25:25,080 stave ting ut. 441 00:25:25,080 --> 00:25:30,170 Faktisk, datamaskiner vanligvis uttrykker seg i standard enheter, ikke 442 00:25:30,170 --> 00:25:33,020 med en individuell bit, som igjen er ikke alle som nyttig å bare 443 00:25:33,020 --> 00:25:36,600 representerer null eller én, lysene på eller av, men snarere ved hjelp 444 00:25:36,600 --> 00:25:37,530 sekvenser av biter. 445 00:25:37,530 --> 00:25:40,100 Og den vanligste måleenheten, som du sikkert vet, eller i det minste 446 00:25:40,100 --> 00:25:41,810 utledes, er en byte. 447 00:25:41,810 --> 00:25:45,960 En byte er bare åtte biter, åtte nuller og ettall på rad. 448 00:25:45,960 --> 00:25:48,090 Så vi kan begynne å stave ting ut. 449 00:25:48,090 --> 00:25:52,580 Og så hvis vi kunne, hvorfor ikke prøve dette litt kollektivt her? 450 00:25:52,580 --> 00:25:55,670 Er det åtte personer i dette rommet som ville være villig 451 00:25:55,670 --> 00:25:56,870 å komme opp på scenen? 452 00:25:56,870 --> 00:26:00,880 Du må være komfortabel vises på kameraet, men du egentlig ikke trenger 453 00:26:00,880 --> 00:26:03,690 å vite ellers hva som skjer ennå. 454 00:26:03,690 --> 00:26:07,240 Jeg ser en person som blir frivillig over her. 455 00:26:07,240 --> 00:26:18,380 To, tre, fire, fem, seks, syv, og hvordan om åtte? 456 00:26:18,380 --> 00:26:18,920 Kom opp. 457 00:26:18,920 --> 00:26:22,550 >> Så du er i ferd med å representere en byte av mennesker. 458 00:26:22,550 --> 00:26:30,190 La meg har du vært 128s sted, du 64s sted, du 32s sted. 459 00:26:30,190 --> 00:26:32,720 Men vi kommer til å veldig raskt å reversere dette. 460 00:26:32,720 --> 00:26:35,170 Så la meg møte dere alle der. 461 00:26:35,170 --> 00:26:39,840 Og du bør være i 128s sted hele veien over, her mye som 462 00:26:39,840 --> 00:26:43,080 hundrevis sted eller tusenvis sted ville være lenger til venstre, vil vi 463 00:26:43,080 --> 00:26:45,740 den største plassholderen å være her på venstre også. 464 00:26:45,740 --> 00:26:55,230 Vi har 64s, 32, 16s, 8s, 4s, 2s, og 1'ere - 465 00:26:55,230 --> 00:26:56,030 utmerket. 466 00:26:56,030 --> 00:26:58,100 Så nå har vi - 467 00:26:58,100 --> 00:27:00,190 okay, kan du hjelpe meg. 468 00:27:00,190 --> 00:27:01,890 Så nå har vi - hva heter du? 469 00:27:01,890 --> 00:27:02,560 JOANNE: Joanne. 470 00:27:02,560 --> 00:27:06,240 SPEAKER 1: Så Joanne og jeg skal nå gi råd disse gutta om hvordan vi 471 00:27:06,240 --> 00:27:07,850 kan gå om stavekontroll noe ut. 472 00:27:07,850 --> 00:27:10,640 Så på ryggen av sine ark, de har en liten jukselapp 473 00:27:10,640 --> 00:27:14,720 som kommer til å fortelle dem om de var representerte en null eller en. 474 00:27:14,720 --> 00:27:18,000 Og hvorfor ikke, for enkelhet, vil vi representere null ved bare 475 00:27:18,000 --> 00:27:19,580 står der klønete. 476 00:27:19,580 --> 00:27:20,360 Veldig bra. 477 00:27:20,360 --> 00:27:24,200 Eller en ved å heve hånden, som representerer en. 478 00:27:24,200 --> 00:27:28,380 Og la oss se om vi ikke kan stave ut en fire tegn setning her. 479 00:27:28,380 --> 00:27:33,870 >> Så gå videre nå, frivillige, og utføre runde en ved å heve hånden 480 00:27:33,870 --> 00:27:38,940 hvis du er en, eller holde den nede hvis du er et null. 481 00:27:38,940 --> 00:27:45,550 Så nå som vi har disse tre hendene opp, hvilket nummer, alle andre, er 482 00:27:45,550 --> 00:27:47,800 de faktisk representerer? 483 00:27:47,800 --> 00:27:48,760 Ok, 67 år. 484 00:27:48,760 --> 00:27:49,040 Hvorfor? 485 00:27:49,040 --> 00:27:49,970 Vel, rask forstanden sjekk. 486 00:27:49,970 --> 00:27:51,910 64s sted, fordi det er en. 487 00:27:51,910 --> 00:27:58,870 Det er som en ganger 64, pluss en ganger to, så det er 66, pluss 1 ganger 1. 488 00:27:58,870 --> 00:28:00,610 Det er pluss 1, så 67 år. 489 00:28:00,610 --> 00:28:03,740 Så nå er disse gutta er samlet representerer 67, som tilsynelatende 490 00:28:03,740 --> 00:28:06,240 representerer hva her i ASCII? 491 00:28:06,240 --> 00:28:06,510 Ok, 492 00:28:06,510 --> 00:28:07,650 så en C. All right. 493 00:28:07,650 --> 00:28:09,530 Så la oss nå gå videre til runde to. 494 00:28:09,530 --> 00:28:12,735 Alle starter med hendene ned, og deretter runde to. 495 00:28:12,735 --> 00:28:15,260 Egentlig er det ikke mye av en rolle her, antar jeg, men vi later. 496 00:28:15,260 --> 00:28:19,820 Så runde to, heve eller senke hendene. 497 00:28:19,820 --> 00:28:20,530 >> OK. 498 00:28:20,530 --> 00:28:23,230 Publikum, hva er vi nå? 499 00:28:23,230 --> 00:28:24,860 Uttrykke er 83. 500 00:28:24,860 --> 00:28:26,050 Så du kan gjøre matematikk. 501 00:28:26,050 --> 00:28:29,810 Men for alle som har hånd er opp, legger du inn nummeret som de representerer. 502 00:28:29,810 --> 00:28:31,610 Så nå har vi 83. 503 00:28:31,610 --> 00:28:36,510 La oss utvide jukse ark litt, og vi har nå - 504 00:28:36,510 --> 00:28:38,890 dette kan være opplagt hvor vi skal her, men 505 00:28:38,890 --> 00:28:42,220 likevel, runde tre. 506 00:28:42,220 --> 00:28:45,870 Ok, runde tre godt å gå ned der, så tre runde, hvilket nummer er 507 00:28:45,870 --> 00:28:47,120 disse gutta nå representerer? 508 00:28:50,090 --> 00:28:56,690 Ok, jeg hørte 53, som nå representerer - interessant. 509 00:28:56,690 --> 00:29:00,770 Nå hvorfor denne typen bakvendt resultat, ikke sant? 510 00:29:00,770 --> 00:29:02,910 Hvis vi ønsker å representere fem - 511 00:29:02,910 --> 00:29:03,900 vi alle sikkert vet hvor dette kommer - 512 00:29:03,900 --> 00:29:07,360 hvorfor jeg ikke bare heve firere stedet og de sted? 513 00:29:07,360 --> 00:29:10,060 >> Vel, innser vi at det er en forskjell, fundamentalt, mellom hvordan 514 00:29:10,060 --> 00:29:11,760 en datamaskin tolker disse bitene. 515 00:29:11,760 --> 00:29:15,470 Hvis du prøver å representere nummer fem, så absolutt, vi bare 516 00:29:15,470 --> 00:29:18,330 heve hånden nummer fire og heve hånden nummer én. 517 00:29:18,330 --> 00:29:20,010 Men vi representerer tall her. 518 00:29:20,010 --> 00:29:23,690 Sammenheng her på scenen er at vi representerer tegn eller 519 00:29:23,690 --> 00:29:28,110 chars, og i denne sammenheng, har datamaskinen til å innse at oh, dette 520 00:29:28,110 --> 00:29:30,720 mønster av biter er ikke et tall alene. 521 00:29:30,720 --> 00:29:33,210 Det er faktisk representerer et høyere nivå konsept. 522 00:29:33,210 --> 00:29:35,010 I dette tilfellet, en alfabetisk bokstav. 523 00:29:35,010 --> 00:29:38,820 Så det faktum at det nå er som representerer antall fem med 524 00:29:38,820 --> 00:29:44,290 Verdien 53 er fordi i ASCII, ting vi estetisk ser som 525 00:29:44,290 --> 00:29:48,200 nummer fem selv trenger et mønster av biter - fordi hvorfor? 526 00:29:48,200 --> 00:29:51,310 Vel, verden nettopp besluttet å bruke lavere tall, null, ett, to, 527 00:29:51,310 --> 00:29:54,130 tre for det som så ut til å være ganske kryptiske ting. 528 00:29:54,130 --> 00:29:56,830 Og ja, dette er de tegn som ikke er på et tastatur. 529 00:29:56,830 --> 00:30:00,330 Spesielle uttrykk som du trenger i en datamaskin for å gjøre interessante ting, men 530 00:30:00,330 --> 00:30:02,010 mennesker aldri skrive dem. 531 00:30:02,010 --> 00:30:04,220 Så 53, faktisk representerer fem. 532 00:30:04,220 --> 00:30:10,460 Nå bare som en siste tilregnelighet sjekk, hvilket nummer skal de 533 00:30:10,460 --> 00:30:12,880 representerer en liten stund? 534 00:30:12,880 --> 00:30:14,060 Ok, så 48. 535 00:30:14,060 --> 00:30:15,720 Og ja, gå videre, runde fire. 536 00:30:18,650 --> 00:30:22,680 16 pluss 32 er faktisk 48. 537 00:30:22,680 --> 00:30:26,510 Og så en stor applaus, hvis vi kunne, for våre åtte frivillige her. 538 00:30:31,410 --> 00:30:32,660 Veldig godt gjort. 539 00:30:35,290 --> 00:30:36,490 Noen retning er fine. 540 00:30:36,490 --> 00:30:41,050 >> Slik at vi nå har en måte ikke bare å tenke på hvordan å representere data, 541 00:30:41,050 --> 00:30:44,120 og faktisk representerer det fysisk, men også gjør høyere 542 00:30:44,120 --> 00:30:45,710 nivå ting på toppen av. 543 00:30:45,710 --> 00:30:48,430 Og ja, dette kommer til å bli et tema i hele informatikk av 544 00:30:48,430 --> 00:30:52,410 bygge flere og mer interessant og kompleks ting på toppen av 545 00:30:52,410 --> 00:30:54,030 ganske enkle ideer - 546 00:30:54,030 --> 00:30:56,170 i dette tilfellet, bare nuller og enere. 547 00:30:56,170 --> 00:31:00,120 I forhold til hvorfor dette er nyttig, vel, selv om det i et kurs som dette, 548 00:31:00,120 --> 00:31:03,810 Vi vil fokusere på grunnleggende, og på programmering, og på å løse av 549 00:31:03,810 --> 00:31:07,050 problemer, kan du gå av i informatikk i en rekke retninger. 550 00:31:07,050 --> 00:31:10,950 I dette tilfellet her, dette er et diagram som du har på baksiden av 551 00:31:10,950 --> 00:31:14,580 uoffisielle guide til CS ved Harvard, en av dagens to utskrifter. 552 00:31:14,580 --> 00:31:17,450 Dette tyder de mange forskjellige retninger som du kan gå etter en 553 00:31:17,450 --> 00:31:18,400 kurs som dette - 554 00:31:18,400 --> 00:31:21,530 lære om kunstig intelligens, om grafikk, om 555 00:31:21,530 --> 00:31:24,370 maskinlæring, om språket selv. 556 00:31:24,370 --> 00:31:26,410 Innser også at det er ennå andre baner. 557 00:31:26,410 --> 00:31:28,670 Det er mer matematiske stier i informatikk. 558 00:31:28,670 --> 00:31:31,740 Hvis du ikke selv i stand til å ta noe sånt CS50 denne høsten, er det 559 00:31:31,740 --> 00:31:35,070 introduksjonskurs i løpet av våren, Computer 1 Science, for eksempel, er 560 00:31:35,070 --> 00:31:38,050 enda en på rampen til denne nye verden. 561 00:31:38,050 --> 00:31:41,600 >> Nå som en side, av hensyn til å løse problemer knyttet til kurs, 562 00:31:41,600 --> 00:31:46,050 realisere CS50 sett ut for en tid siden for å prøve å løse en av disse problemene, en 563 00:31:46,050 --> 00:31:49,640 problemet kjent som my.harvard, som mange av dere kanskje bruker til å faktisk 564 00:31:49,640 --> 00:31:54,040 shop for kurs, men hvis ikke, sjekk ut et verktøy som dette, samt andre 565 00:31:54,040 --> 00:31:57,800 etterkommere at noen av våre tidligere studenter og ansatte har opprettet. 566 00:31:57,800 --> 00:32:00,770 Men i Harvard Kurs, som er et web-basert verktøy, noe som du 567 00:32:00,770 --> 00:32:05,510 vil være i stand til å utforme og distribusjon dere samt ennå 568 00:32:05,510 --> 00:32:09,210 andre ting også ved slutten av semesteret, innser at dette bygger 569 00:32:09,210 --> 00:32:10,590 mot en åpen datasettet. 570 00:32:10,590 --> 00:32:13,490 I dette tilfellet, selvfølgelig, katalog, og tillater elevene i dette tilfellet til 571 00:32:13,490 --> 00:32:16,320 utforske en ganske kompleks datasett. 572 00:32:16,320 --> 00:32:19,495 >> Vi gravde opp i går kveld noen statistikk basert på de få tusen folk som 573 00:32:19,495 --> 00:32:21,530 har brukt denne de siste dagene. 574 00:32:21,530 --> 00:32:25,260 Hvis du har vært nysgjerrig på å vite hvor mange kurs vennene dine faktisk 575 00:32:25,260 --> 00:32:29,720 tendens til å handle, vel, i dag er dette data tyder på at 7,6 er den gjennomsnittlige 576 00:32:29,720 --> 00:32:32,610 rekke kurs i noens handleliste. 577 00:32:32,610 --> 00:32:36,350 Og nå skal jeg gi dere også statistikken over flest antall 578 00:32:36,350 --> 00:32:39,550 kurs på noens handleliste - og vi alle sikkert vet 579 00:32:39,550 --> 00:32:40,800 noen som dette. 580 00:32:43,820 --> 00:32:46,740 201 er årets posten. 581 00:32:46,740 --> 00:32:52,320 Nå noen av våre tidligere studenter og ansatte faktisk sette sammen et klipp til 582 00:32:52,320 --> 00:32:55,560 male et bilde for deg om hva denne banen for informatikk 583 00:32:55,560 --> 00:32:57,360 og CS50 selv er. 584 00:32:57,360 --> 00:33:02,060 La meg gå videre og trekke opp, takket være Mr. Harvahd her, en video produsert av 585 00:33:02,060 --> 00:33:06,825 noen av dine forgjengere, hvis vi kunne holde lysene opp for dette. 586 00:33:10,980 --> 00:35:39,126 [Musikk spilles] 587 00:35:39,126 --> 00:35:42,630 >> SPEAKER 1: Jeg hadde ingen anelse om at skulle skje. 588 00:35:42,630 --> 00:35:46,170 Så en mer alvorlig titt på hva som ligger foran oss. 589 00:35:46,170 --> 00:35:49,060 Så i forhold til forventningene dette kurset, er du faktisk forventet å 590 00:35:49,060 --> 00:35:52,817 delta eller se kursets foredrag, sende åtte oppgavesett, ta to 591 00:35:52,817 --> 00:35:54,720 spørrekonkurranser, sende et avsluttende prosjekt. 592 00:35:54,720 --> 00:35:58,640 I form av karakterer, innser at mine kommentarer på åpningen om 593 00:35:58,640 --> 00:36:02,380 pass-mislykkes, noe som vi veldig mye å ta til hjertet i CS50 - det er ikke 594 00:36:02,380 --> 00:36:05,110 nesten nok av en kultur ved Harvard for å prøve 595 00:36:05,110 --> 00:36:07,080 noe og risikere å mislykkes. 596 00:36:07,080 --> 00:36:09,870 Faktisk hadde vi antall studenter, og jeg spesielt, som var 597 00:36:09,870 --> 00:36:15,310 bekymret skade din GPA, eller får en B i noe sånt CS50, 598 00:36:15,310 --> 00:36:19,222 og muligheten til å ta et kurs som dette og andre gateway kurs på 599 00:36:19,222 --> 00:36:23,950 innføringsnivå bestått / ikke bestått er en svært lite brukt mulighet på dette 600 00:36:23,950 --> 00:36:24,740 college generelt. 601 00:36:24,740 --> 00:36:29,750 Og så skal du vite, selv jeg deltok i dette kurset utgangspunktet for bestått / ikke bestått 602 00:36:29,750 --> 00:36:32,840 kreditt alene, og selv om Jeg bytte på slutten av dagen, det var 603 00:36:32,840 --> 00:36:36,170 de fem første ukene, opp til femte mandag av semesteret, som er 604 00:36:36,170 --> 00:36:39,700 cutoff, som tillot meg å faktisk sette foten inn i disse nye 605 00:36:39,700 --> 00:36:43,660 farvann, og faktisk prøve noe veldig ukjent og svært ubehagelig 606 00:36:43,660 --> 00:36:45,540 for meg på den tiden. 607 00:36:45,540 --> 00:36:49,440 >> Så i form nå av hvilken rolle de ulike vinkler som du kan 608 00:36:49,440 --> 00:36:51,530 nærme seg dette kurset tjene - 609 00:36:51,530 --> 00:36:53,080 så forelesninger. Det er opp til deg. 610 00:36:53,080 --> 00:36:56,550 Hvis du delta med oss ​​i person på dette sted, ja, vi vet 611 00:36:56,550 --> 00:37:00,920 statistisk at omtrent 40% av dere vil slags komme og gå over 612 00:37:00,920 --> 00:37:05,140 løpet av semesteret, og 10% av dere vi aldri vil se igjen etter i dag. 613 00:37:05,140 --> 00:37:07,540 Og det er helt greit, for å være ærlig. 614 00:37:07,540 --> 00:37:10,470 En av de kjennetegner CS50 er at det er disse 615 00:37:10,470 --> 00:37:14,220 utallige ressurser, noen som vi vil skrangle gjennom i løpet av et øyeblikk, 616 00:37:14,220 --> 00:37:17,890 forelesninger og seksjoner, og ting som kalles walkthroughs og kontor 617 00:37:17,890 --> 00:37:20,850 timer, og lignende, og det er mer ressurser enn den typiske student 618 00:37:20,850 --> 00:37:24,400 bør ha eller kunne fysisk dra nytte av, men det er fordi 619 00:37:24,400 --> 00:37:27,510 av de ulike læringsstiler at enhver student body manifesterer. 620 00:37:27,510 --> 00:37:31,590 Og så i forelesninger, er den primære rolle som jeg ser det ikke verbalt presse 621 00:37:31,590 --> 00:37:35,360 ut ganske kompleks materiale og å nødvendigvis levere all 622 00:37:35,360 --> 00:37:39,040 vanskelighetene med det grunnleggende at vi vil utforske dette semesteret, men 623 00:37:39,040 --> 00:37:42,430 heller å gjøre ting som vi har gjort så langt allerede, disse eksemplene 624 00:37:42,430 --> 00:37:46,480 involverer mennesker på scenen prøver å male et mentalt bilde, og også 625 00:37:46,480 --> 00:37:49,430 opprette, tør jeg si, noen av disse minneverdige øyeblikkene, slik at selv når du 626 00:37:49,430 --> 00:37:53,280 sliter med visse emner, har du disse minnene, som oh, selv om 627 00:37:53,280 --> 00:37:56,740 som var ganske abstrakt, matte, jeg har mistet med å bære en, som, 628 00:37:56,740 --> 00:38:00,260 det virkelig, på slutten av dagen, er ikke alle som ulikt noe jeg 629 00:38:00,260 --> 00:38:01,060 allerede vet. 630 00:38:01,060 --> 00:38:04,560 Og så den rollen som forelesninger vil tjene, enten personlig her i Sanders 631 00:38:04,560 --> 00:38:09,040 eller online på video er virkelig å sette scenen mentalt for deg hver uke 632 00:38:09,040 --> 00:38:12,370 for de ulike begreper og problemstillinger som vi vil være dykking inn. 633 00:38:12,370 --> 00:38:16,800 >> I form av høyt nivå konsepter, kanskje de fleste av disse ordene flyte over 634 00:38:16,800 --> 00:38:17,670 hodet for øyeblikket. 635 00:38:17,670 --> 00:38:18,680 Og det er fint. 636 00:38:18,680 --> 00:38:21,210 De av dere som vil komme inn i kurset mer komfortabel vil vite av 637 00:38:21,210 --> 00:38:24,870 noen av disse temaene, men vanligvis for 10 at% av klassen som 638 00:38:24,870 --> 00:38:28,600 de har mye mer bakgrunn, tar AP informatikk, programmering siden 639 00:38:28,600 --> 00:38:31,850 de var 12, innse at det vil være muligheter i seksjoner og 640 00:38:31,850 --> 00:38:36,030 Problemet setter å gå hele mer dybde i ulike emner, fylle 641 00:38:36,030 --> 00:38:39,590 hva hull du kan ha fra videregående skole eller før bakgrunn. 642 00:38:39,590 --> 00:38:43,440 I form av språk, innser at det språket vi bruker i CS50 er 643 00:38:43,440 --> 00:38:45,360 irrelevant på slutten av dagen. 644 00:38:45,360 --> 00:38:49,500 Vi måtte bruke primært et språk kalt C. Mot slutten av 645 00:38:49,500 --> 00:38:53,260 semester, introduserer vi web-sentriske språk, som PHP og JavaScript. 646 00:38:53,260 --> 00:38:56,800 Men vi og andre kunne lære et kurs som dette i de fleste enhver moderne 647 00:38:56,800 --> 00:38:57,740 høynivåspråk - 648 00:38:57,740 --> 00:39:01,710 Python og Ruby, og andre er ganske populært i disse dager, fordi innse, 649 00:39:01,710 --> 00:39:04,350 på slutten av dagen, du er ikke læring i denne C. Du er ikke 650 00:39:04,350 --> 00:39:06,310 læring PHP eller JavaScript. 651 00:39:06,310 --> 00:39:10,190 Du lærer hvordan du kan løse problemer, enten web-basert, PC-basert, eller 652 00:39:10,190 --> 00:39:14,810 data-orientert seg selv, ved hjelp av disse bare som verktøy. 653 00:39:14,810 --> 00:39:17,910 >> Nå i form av logistikk, vil du bruke noe til slutt kalt 654 00:39:17,910 --> 00:39:18,810 CS50 Appliance. 655 00:39:18,810 --> 00:39:22,150 Spiller ingen rolle om du har en Mac, en PC, en Linux-datamaskin, eller lignende, 656 00:39:22,150 --> 00:39:25,740 vil du ha fritt tilgjengelig programvare som starter neste uke med å bruke 657 00:39:25,740 --> 00:39:28,890 den CS50 Appliance, et virtuelt miljø som du vil bruke på 658 00:39:28,890 --> 00:39:32,720 egen datamaskin, slik at du og alle dine klassekamerater har en uniform Linux 659 00:39:32,720 --> 00:39:34,220 skrivebordet i dette tilfellet. 660 00:39:34,220 --> 00:39:37,010 Det er problemet sett, skjønt, hvor du virkelig få hendene 661 00:39:37,010 --> 00:39:37,910 skitne i kurset. 662 00:39:37,910 --> 00:39:40,820 Og på slutten av dagen, er det de oppgavesett, tror jeg, som virkelig 663 00:39:40,820 --> 00:39:43,510 definere en student erfaring i dette kurset. 664 00:39:43,510 --> 00:39:46,660 Innse at mange av oppgavesett vil bli utgitt i to utgaver - 665 00:39:46,660 --> 00:39:50,140 en standard utgave som vi forventer og oppmuntrer 90% av 666 00:39:50,140 --> 00:39:51,690 klasse til å dykke inn. 667 00:39:51,690 --> 00:39:55,255 Men vi har også gitt ut noen problem sett i såkalte hacker utgaver, og du 668 00:39:55,255 --> 00:39:58,110 vet at det er hacker utgave, fordi på hver side med et vannmerke, det 669 00:39:58,110 --> 00:39:59,970 sier hacker utgave på den. 670 00:39:59,970 --> 00:40:03,390 Og det er for denne demografiske av dere som har AP informatikk med 10 671 00:40:03,390 --> 00:40:06,500 år programmering under beltet, og er ute etter å fylle disse hullene, 672 00:40:06,500 --> 00:40:10,170 og å ha mer formell, snarere enn selvlært trening kanskje, innser 673 00:40:10,170 --> 00:40:13,420 at det er en meget betydelig demografisk i den klassen som har 674 00:40:13,420 --> 00:40:15,230 nettopp den samme målet. 675 00:40:15,230 --> 00:40:16,460 Du har fem sent dager. 676 00:40:16,460 --> 00:40:19,380 Oppgavesett er vanligvis på grunn på torsdager, men du kan utvide fem av 677 00:40:19,380 --> 00:40:22,900 de tidsfrister som bruker disse tingene kalles sent dager, og vi vil også slippe 678 00:40:22,900 --> 00:40:25,520 din laveste score på slutten av semesteret, i henhold til 679 00:40:25,520 --> 00:40:27,540 opplysninger i pensum. 680 00:40:27,540 --> 00:40:31,630 >> Men en annen særtrekk ved CS50 gjennom årene har blitt kontor 681 00:40:31,630 --> 00:40:36,060 timer, en mulighet som du så visuelt i bilder litt siden der 682 00:40:36,060 --> 00:40:39,090 vi samles tidligere i huset spisesalene, før det i 683 00:40:39,090 --> 00:40:42,120 kjelleren av science center, og i år i Annenberg Hall, fire 684 00:40:42,120 --> 00:40:45,670 netter i uken 20:00 til 11:00, hvor har du dette veldig mye 685 00:40:45,670 --> 00:40:49,810 delte erfaringer med å jobbe på, sliter gjennom visse problemer, 686 00:40:49,810 --> 00:40:52,520 men med en betydelig støtte strukturen på plass. 687 00:40:52,520 --> 00:40:55,780 Faktisk er måten dette vil fungere vil ankomme Annenberg hvis du har 688 00:40:55,780 --> 00:40:56,950 noen spørsmål i løpet av uken. 689 00:40:56,950 --> 00:41:00,190 Du vil ta den bærbare datamaskinen, vil du sitte ned, hente noe mat, og du vil logge 690 00:41:00,190 --> 00:41:04,100 på CS50 Diskuter, en web-basert verktøy som lærerne har 691 00:41:04,100 --> 00:41:07,860 utviklet som vil tillate deg å legge inn spørsmål og se followups i en 692 00:41:07,860 --> 00:41:12,590 typisk diskusjonsforum forstand, bruker etiketter og lignende, og autofullfør 693 00:41:12,590 --> 00:41:13,790 å søke i data. 694 00:41:13,790 --> 00:41:17,950 Men du vil også være i stand til, i de timene kontortid, har din 695 00:41:17,950 --> 00:41:20,490 spørsmål eskalert til virkelige mennesker. 696 00:41:20,490 --> 00:41:24,000 Faktisk er målet til slutt slik at man begynner vi å bygge opp over 697 00:41:24,000 --> 00:41:27,740 løpet av semesteret et korpus av forhåpentligvis virkelig nyttig informasjon, 698 00:41:27,740 --> 00:41:31,770 felles svar på vanlige spørsmål, slik at du selv kan løse problemer 699 00:41:31,770 --> 00:41:35,980 og få unstuck så raskt som mulig, samtidig som de har undervisning 700 00:41:35,980 --> 00:41:40,320 ansatte - vanligvis 20% til 30% av undervisningen stipendiater og kurs assistenter 701 00:41:40,320 --> 00:41:41,780 i staben på en gang. 702 00:41:41,780 --> 00:41:45,150 >> Vi vil ha det som kalles CS50 Greeter i Annenberg, og når vi 703 00:41:45,150 --> 00:41:46,610 bestemme det, vet du hva? 704 00:41:46,610 --> 00:41:50,900 Dette spørsmålet, vi virkelig svare effektivt på nettet. 705 00:41:50,900 --> 00:41:51,930 Vi trenger å se datamaskinen din. 706 00:41:51,930 --> 00:41:53,470 Vi ønsker å snakke med deg en mot en. 707 00:41:53,470 --> 00:41:56,060 Du er virkelig sliter, og du derfor ønsker å snakke en på en 708 00:41:56,060 --> 00:41:59,160 sammen noen, vil du bli sendt til CS50 Greeter, en 709 00:41:59,160 --> 00:42:02,700 undervisning stipendiat holding, bokstavelig talt, en iPod som har elevenes navn på en 710 00:42:02,700 --> 00:42:04,880 side, undervisning personalets navn på den andre. 711 00:42:04,880 --> 00:42:07,900 Vi vil samle inn navn, etterfulgt av navnet på en pedagogisk personale, og 712 00:42:07,900 --> 00:42:12,020 dataskjermen vil begynne å blinke, sier du gå se Alice eller ta 713 00:42:12,020 --> 00:42:14,110 gå se Bob på ansatte bordet. 714 00:42:14,110 --> 00:42:17,240 Og så på denne måten, vil vi være i stand til å sende ting så effektivt som 715 00:42:17,240 --> 00:42:22,030 mulig, samt veilede deg mot løsninger hele lettere. 716 00:42:22,030 --> 00:42:25,900 I seksjoner, og disse vil være muligheter for mer intime hands- 717 00:42:25,900 --> 00:42:30,080 på muligheter med en av undervisning stipendiater og 12 til 16 eller så av 718 00:42:30,080 --> 00:42:34,020 klassekameratene dine, der hver uke, vil vi få problemer i oppgavesettet 719 00:42:34,020 --> 00:42:36,750 som spør en rekke konseptuelle spørsmål, og en rekke bite-sized 720 00:42:36,750 --> 00:42:39,180 programmering spørsmål som du kunne finne ut på egen hånd, og du kan 721 00:42:39,180 --> 00:42:42,140 arbeide på egen hånd, men i sammenheng med seksjonen vil vi arbeide gjennom 722 00:42:42,140 --> 00:42:45,230 kollektivt noen av disse problemene, og gå hvor 723 00:42:45,230 --> 00:42:46,700 samtale tar oss. 724 00:42:46,700 --> 00:42:51,340 >> I tillegg vil i avsnitt har du muligheter til å gjennomgå innsending av 725 00:42:51,340 --> 00:42:54,470 lekser som du har gjort, klassekameratene dine, noen ganger anonymiseres, 726 00:42:54,470 --> 00:42:56,780 alltid av en opt-in, hvis du ønsker å dele 727 00:42:56,780 --> 00:42:57,930 fungere som du har sendt inn. 728 00:42:57,930 --> 00:43:00,890 Så det vil virkelig være en toveis samtale, og mulighet til å 729 00:43:00,890 --> 00:43:05,050 gjennomgå eget arbeid i en mye mer dynamisk forstand, snarere enn bare 730 00:43:05,050 --> 00:43:08,620 ser på en PDF eller utskrift og tenke på det i noen sekunder 731 00:43:08,620 --> 00:43:10,760 og ikke nødvendigvis absorberende tilbakemelding om at 732 00:43:10,760 --> 00:43:12,270 lærere har gitt. 733 00:43:12,270 --> 00:43:14,670 Og du vil bruke et verktøy her kalt CS50 Spaces. 734 00:43:14,670 --> 00:43:18,165 For de som ikke kjenner, er dette språket kjent som C øverst til venstre, og 735 00:43:18,165 --> 00:43:21,360 du får vite dette over tid, men dette er en web-basert verktøy som vi vil 736 00:43:21,360 --> 00:43:25,350 bruke i delen som vil tillate deg og dine 15 eller så klassekamerater å logge inn med 737 00:43:25,350 --> 00:43:27,120 undervisningen stipendiat på forsiden av rommet. 738 00:43:27,120 --> 00:43:28,890 Du vil være i stand til å skrive kode i dette vinduet. 739 00:43:28,890 --> 00:43:31,800 Du vil være i stand til å chatte elektronisk dersom du ikke er faktisk på delen på 740 00:43:31,800 --> 00:43:35,300 det aktuelle øyeblikket, og undervisningen stipendiat, når det gjelder tid til å 741 00:43:35,300 --> 00:43:41,295 diskutere Alice eller Bob løsning i klassen, kan undervisningen stipendiat klikke på en 742 00:43:41,295 --> 00:43:45,210 knappen, og voila, prosjekt på skjermen hva som student har vært 743 00:43:45,210 --> 00:43:47,120 arbeider på det aktuelle tidspunkt. 744 00:43:47,120 --> 00:43:50,400 Så for de av dere har venner som har tatt CS50 i det siste, innser 745 00:43:50,400 --> 00:43:53,790 at deler har blitt betydelig restartet i år for å være enda mer 746 00:43:53,790 --> 00:43:57,700 aktiv, desto mer dynamisk, og virkelig, en toveis samtale mellom 747 00:43:57,700 --> 00:44:00,300 lærere og studenter. 748 00:44:00,300 --> 00:44:01,160 >> Og gjennomgang. 749 00:44:01,160 --> 00:44:04,520 Så for disse problemområdene setter vi også tilby ikke bare spesifikasjonen 750 00:44:04,520 --> 00:44:08,110 seg selv, er som regel en ganske detaljert PDF, men også ting kjent 751 00:44:08,110 --> 00:44:12,070 som walkthroughs, der ett medlem av undervisningspersonalet vil føre en ukentlig 752 00:44:12,070 --> 00:44:15,460 sesjon som bokstavelig talt tar deg gjennom oppgavesettet, slik at du 753 00:44:15,460 --> 00:44:18,700 hint og råd, og start poeng, og er ment å spørre veldig 754 00:44:18,700 --> 00:44:21,370 ofte spurte spørsmål: hvor skal jeg begynne? 755 00:44:21,370 --> 00:44:25,550 Vel, begynner du enten ved å dykke ned i spec på egen hånd, eller ved å delta 756 00:44:25,550 --> 00:44:27,230 eller ser disse walkthroughs. 757 00:44:27,230 --> 00:44:29,550 Den første gjennomgang, faktisk, blir dette fredag. 758 00:44:29,550 --> 00:44:32,120 De vil være på fredager, ikke så mye fordi vi tror det vil være et populært 759 00:44:32,120 --> 00:44:34,940 tid, men fordi vi da kan filme dem veldig tidlig i uken og få 760 00:44:34,940 --> 00:44:38,410 dem online av helgen slik at du har så mange dager som mulig å 761 00:44:38,410 --> 00:44:40,530 faktisk engasjere seg i dette innholdet også. 762 00:44:40,530 --> 00:44:43,050 Men mer om det i foredraget denne fredagen. 763 00:44:43,050 --> 00:44:46,930 >> Nå i form av bærekonstruksjonen, er den mest signifikante statistikken 764 00:44:46,930 --> 00:44:50,600 kanskje de 108 undervisning stipendiater og kurs assistenter at dette kurset 765 00:44:50,600 --> 00:44:51,870 har i dag. 766 00:44:51,870 --> 00:44:54,490 Hvis noen av dere som ikke har motstridende klasser ønsker å delta 767 00:44:54,490 --> 00:44:58,900 meg opp her på scenen, er det disse gutta som til slutt vil virkelig definerer 768 00:44:58,900 --> 00:45:00,150 oppleve i kurset. 769 00:45:08,890 --> 00:45:11,870 Jeg hadde mye undervisning stipendiater som underviser meg klasser i dag, og jeg 770 00:45:11,870 --> 00:45:15,650 husker veldig få av dem, ærlig, men til dags dato, jeg husker blant 771 00:45:15,650 --> 00:45:19,990 de få min CS50 TF, som virkelig hjalp meg å svare på spørsmål, som virkelig 772 00:45:19,990 --> 00:45:22,830 hjalp meg da jeg strevde, og var virkelig en partner i dette 773 00:45:22,830 --> 00:45:25,770 opplevelsen av å lære et svært ny verden. 774 00:45:25,770 --> 00:45:29,100 I en liten bit, vil alle disse gutta bli med deg utenfor for kake, som 775 00:45:29,100 --> 00:45:32,560 er en tradisjon for CS50, i tverrskipet av Memorial Hall, men la meg 776 00:45:32,560 --> 00:45:36,980 første introdusere deg til Nate Hardison igjen, Rob Bowden, og Tommy 777 00:45:36,980 --> 00:45:39,370 McWilliams, leder årets kurs. 778 00:45:39,370 --> 00:45:41,385 Hvis dere vil bli med meg her i midten. 779 00:45:47,380 --> 00:45:50,045 De har alle forberedt noen inspirerende bemerkninger. 780 00:45:53,212 --> 00:45:55,775 >> TOMMY McWilliams: Jeg har ikke forberede noe inspirerende. 781 00:45:55,775 --> 00:45:57,170 Men mitt navn er Tommy. 782 00:45:57,170 --> 00:45:58,370 Jeg er en senior i Mather. 783 00:45:58,370 --> 00:46:01,620 Jeg studerer informatikk, veldig glade for å være på den hoder team og 784 00:46:01,620 --> 00:46:03,720 gå gjennom CS50 reise med deg. 785 00:46:03,720 --> 00:46:06,750 Hva jeg elsker om CS50 er hvordan det egentlig lærer deg å tenke på 786 00:46:06,750 --> 00:46:08,180 problemer på en ny måte. 787 00:46:08,180 --> 00:46:11,170 Dette er virkelig en ferdighet som kommer til å være uvurderlig, uansett hvilket felt 788 00:46:11,170 --> 00:46:12,090 du går inn. 789 00:46:12,090 --> 00:46:14,800 Og ikke bare det, men vi tilbyr mer gratis godteri enn noen 790 00:46:14,800 --> 00:46:16,050 andre kurs på campus. 791 00:46:22,730 --> 00:46:24,350 Så jeg bare gleder meg til å se hva 792 00:46:24,350 --> 00:46:25,645 alle bygger dette semesteret. 793 00:46:25,645 --> 00:46:28,860 Og hvis noen har noen spørsmål nå eller gjennom semesteret, definitivt 794 00:46:28,860 --> 00:46:32,976 gjerne nå ut til meg, og jeg vil være glad for å hjelpe. 795 00:46:32,976 --> 00:46:33,920 >> Rob Bowden: Hei. 796 00:46:33,920 --> 00:46:34,670 Jeg er Rob Bowden. 797 00:46:34,670 --> 00:46:35,920 Jeg er en senior i Kirkland. 798 00:46:40,030 --> 00:46:41,890 Ja, det er riktig. 799 00:46:41,890 --> 00:46:44,070 Vi er alle veldig glade for dette neste semester. 800 00:46:44,070 --> 00:46:45,325 Vi håper du alle glade. 801 00:46:49,850 --> 00:46:51,580 Jeg hadde ikke ventet det. 802 00:46:51,580 --> 00:46:52,530 Ja. 803 00:46:52,530 --> 00:46:56,030 Så vi legger så mye arbeid i å gjøre dette semesteret virkelig flott, og som 804 00:46:56,030 --> 00:46:58,830 lenge du er villig til å sette i arbeid, det er så mye du kan få 805 00:46:58,830 --> 00:47:00,080 ut av dette kurset. 806 00:47:06,810 --> 00:47:10,470 Du kan få mye moro ut av dette kurset. 807 00:47:10,470 --> 00:47:13,510 Vi ville ikke ha en stab på 108 hvis du ikke kunne få mye moro ut av det, 808 00:47:13,510 --> 00:47:17,450 så bare prøver å være involvert, og du vil ikke angre. 809 00:47:24,815 --> 00:47:26,020 >> NATE Hardison: Hei, folkens. 810 00:47:26,020 --> 00:47:26,930 Jeg er Nate. 811 00:47:26,930 --> 00:47:29,700 Jeg er veileder for kurset. 812 00:47:29,700 --> 00:47:31,200 Jeg er virkelig glad for å være her også. 813 00:47:31,200 --> 00:47:33,100 Dette er mitt første år her. 814 00:47:33,100 --> 00:47:36,520 Jeg håper dere alle ta dette kurset, og nyte det så mye som jeg har 815 00:47:36,520 --> 00:47:37,960 likte det så langt. 816 00:47:37,960 --> 00:47:41,520 Og hvis du noen gang ønsker å lære hvordan å komme til ni eller ti i binær, kommer 817 00:47:41,520 --> 00:47:43,351 snakke med meg. 818 00:47:43,351 --> 00:47:46,480 >> SPEAKER 1: Så på risikoen for å forlate disse gutta her på scenen litt 819 00:47:46,480 --> 00:47:50,330 awkwardly, la oss virvle gjennom bare noen av de tingene som venter før vi 820 00:47:50,330 --> 00:47:51,500 utsette for kake. 821 00:47:51,500 --> 00:47:52,980 Hva er det som ligger foran oss? 822 00:47:52,980 --> 00:47:56,410 Vel, hvis vi tar en rask titt tilbake på i fjor, i oppgavesettet null, din 823 00:47:56,410 --> 00:47:59,960 forgjengere due i et programmeringsspråk som heter Scratch, en grafisk 824 00:47:59,960 --> 00:48:03,160 programmeringsspråk vil du bruke i de første dagene av kurset, som starter 825 00:48:03,160 --> 00:48:07,080 denne fredagen, for å lære noen begreper ukjente for noen av dere, men innser 826 00:48:07,080 --> 00:48:10,330 vil det være en avansert aspekt av dette for de av dere med tidligere 827 00:48:10,330 --> 00:48:11,070 bakgrunn. 828 00:48:11,070 --> 00:48:14,082 >> I fjorårets problem satt to, due studenter inn i verden av 829 00:48:14,082 --> 00:48:17,740 kryptografi, kunsten enciphering eller scrambling informasjon, 830 00:48:17,740 --> 00:48:21,310 implementere programmer som krypterte data, og i hacker utgave sist 831 00:48:21,310 --> 00:48:26,710 år gjorde elevene fortsette å sprekke eller dekode passord i en typisk 832 00:48:26,710 --> 00:48:31,190 datamaskinens. xc passord filen ved å komme opp med algoritmer og heuristikk for 833 00:48:31,190 --> 00:48:34,980 brute force finne ut hva noens passord på en datamaskin 834 00:48:34,980 --> 00:48:35,770 systemet var. 835 00:48:35,770 --> 00:48:39,820 Siste året eller to, i problemet satt fire gjorde elevene 836 00:48:39,820 --> 00:48:41,420 gjennomføre spillet Sudoku. 837 00:48:41,420 --> 00:48:45,180 Og hacker utgaven som året gjorde elevene ikke bare implementere hvordan 838 00:48:45,180 --> 00:48:49,360 spille spillet, men faktisk en Solver, der datamaskinen kan gi deg, 839 00:48:49,360 --> 00:48:52,260 mennesket, med hint ved raskere enn du løse 840 00:48:52,260 --> 00:48:53,550 det aktuelle problemet. 841 00:48:53,550 --> 00:48:57,420 >> I oppgavesettet fem, gjorde vi dataanalyse, denne kunsten å utvinne informasjon 842 00:48:57,420 --> 00:49:00,160 som var et uhell eller svært bevisst 843 00:49:00,160 --> 00:49:01,450 slettet fra datamaskinen. 844 00:49:01,450 --> 00:49:04,530 I fjor ruslet det pedagogiske personalet og jeg rundt campus tar 845 00:49:04,530 --> 00:49:07,780 fotografier av mennesker, steder og ting og deretter uhell 846 00:49:07,780 --> 00:49:10,900 formatert mediekortet på våre kamera som hadde alle disse bildene. 847 00:49:10,900 --> 00:49:15,920 Men ikke noe problem, vi har gjort en etterforskning bilde av dette mediekort, ga den ut 848 00:49:15,920 --> 00:49:19,410 til alle elevene i klassen, og utfordret dem til å skrive programmer som 849 00:49:19,410 --> 00:49:22,240 gjenopprettet alle JPEG fra dette kortet. 850 00:49:22,240 --> 00:49:24,720 Og dette er faktisk en av våre favoritt oppgavesett, og jeg gravde opp en 851 00:49:24,720 --> 00:49:27,750 gamle e-post fra en av dine forgjengere som var mye moro å 852 00:49:27,750 --> 00:49:29,940 les en gang siden. 853 00:49:29,940 --> 00:49:31,270 >> Dette er fra Matt. 854 00:49:31,270 --> 00:49:34,970 Kjære David, går min søster ved et uhell formatert hennes kameraets SD 855 00:49:34,970 --> 00:49:37,770 kort og mistet et år igjen av minneverdige bilder. 856 00:49:37,770 --> 00:49:40,830 Hun er dessverre ikke best på å sikkerhetskopiere sine data. 857 00:49:40,830 --> 00:49:43,780 Men denne situasjonen minnet meg p-set fem, så jeg tenkte jeg ville prøve å 858 00:49:43,780 --> 00:49:47,620 kjøre henne SD kortet gjennom gjenopprette program som jeg skrev hele veien tilbake 859 00:49:47,620 --> 00:49:48,180 i oktober. 860 00:49:48,180 --> 00:49:51,660 Så etter fire timer med å finne ut hvordan du oppretter en rå bilde fra 861 00:49:51,660 --> 00:49:53,350 formatert SD-kort - 862 00:49:53,350 --> 00:49:56,050 Google vise seg å være ganske nyttig i denne forbindelse, før jeg ironisk 863 00:49:56,050 --> 00:50:00,140 skjedd kommer over dine instruksjoner på Internett - 864 00:50:00,140 --> 00:50:03,080 etter fiksing og triksing rundt med noen av kommandolinjeargumenter, klarte jeg 865 00:50:03,080 --> 00:50:06,020 å skape den rettsmedisinske bildet, og etter installere og konfigurere 866 00:50:06,020 --> 00:50:10,600 CS50 Appliance, klarte jeg å kjøre den rettsmedisinske bildet gjennom mitt program og 867 00:50:10,600 --> 00:50:16,065 gjenopprette alle 1027 av min søster fotografier, skriver Matt. 868 00:50:25,210 --> 00:50:28,600 >> I fjorårets oppgavesettet seks, ga vi elevene en ordbok av 869 00:50:28,600 --> 00:50:33,350 150000 engelske ord og utfordret dem til å skrive en stavekontroll som 870 00:50:33,350 --> 00:50:36,870 besvarte spørsmål i skjemaet, er dette ordet stavet riktig eller feil 871 00:50:36,870 --> 00:50:38,150 så fort som mulig. 872 00:50:38,150 --> 00:50:41,900 Og på opt-in basis var studenter lov til å så utfordre klassekamerater 873 00:50:41,900 --> 00:50:45,220 ved å publisere sine resultater, mengden RAM som de bruker, antall 874 00:50:45,220 --> 00:50:49,190 CPU-sykluser eller sekunder som de brukte, slik at studentene ble deretter rangert på 875 00:50:49,190 --> 00:50:53,010 kursets hjemmeside - igjen, rent valgfri del av det, men mye moro 876 00:50:53,010 --> 00:50:56,970 i det svært ofte vil en student få stilling nummer 10 eller så på den store 877 00:50:56,970 --> 00:51:00,370 styret, på nettstedet, kan du gå av til middag og deretter komme tilbake, og innse 878 00:51:00,370 --> 00:51:04,340 romkameraten hadde nettopp falt foran ham eller henne på the Big Board, 879 00:51:04,340 --> 00:51:07,620 dermed helle ytterligere to eller tre timer bare til én 880 00:51:07,620 --> 00:51:09,300 opp hans eller hennes romkamerat. 881 00:51:09,300 --> 00:51:11,730 >> Så vi ser frem til noe lignende i år også. 882 00:51:11,730 --> 00:51:15,400 I oppgavesettet 7 gjorde vi styre i retning av web-programmering, faktisk 883 00:51:15,400 --> 00:51:19,320 løse problemer i den stadig mer vanlig miljø 884 00:51:19,320 --> 00:51:20,300 av en nettleser. 885 00:51:20,300 --> 00:51:23,670 Vet da decreasingly laste vi programvare på Mac og PC, men 886 00:51:23,670 --> 00:51:25,790 økende grad, gjør vi alt innen web. 887 00:51:25,790 --> 00:51:30,140 >> Og ja, i fjor, noen 88% av studentenes endelige prosjekter i løpet 888 00:51:30,140 --> 00:51:31,790 var web-basert. 889 00:51:31,790 --> 00:51:34,670 Og de også er ferdigheter som du vil utlede fra denne klassen av 890 00:51:34,670 --> 00:51:38,410 Selvfølgelig er slutt, fordi hva som venter på kursets slutt er det CS50 Fair, dette 891 00:51:38,410 --> 00:51:42,100 Utstillingen som er basert på ideen om en science fair, men i denne versjonen av 892 00:51:42,100 --> 00:51:45,370 en rettferdig gjøre alle elevene i klassen bringe sine bærbare datamaskiner, og deres 893 00:51:45,370 --> 00:51:49,720 venner og familie, og andre til Northwest Science, en stor bygning på 894 00:51:49,720 --> 00:51:53,420 campus, sette opp sin laptop, få litt mat, få litt popcorn og drikke, og 895 00:51:53,420 --> 00:51:57,180 deretter vise sine siste prosjekter for alle som var tilstede, som i fjor 896 00:51:57,180 --> 00:52:01,510 nummerert noen 2500 deltakere fra hele campus, og uttrykk som 897 00:52:01,510 --> 00:52:05,510 dette, og som dette var ikke uvanlig på messen. 898 00:52:05,510 --> 00:52:09,660 >> Frem til messen er den CS50 hackathon, en mulighet til å hoppe på en 899 00:52:09,660 --> 00:52:13,610 Harvard shuttle, hodet ned gaten til Microsoft på 8:00, og ikke gå hjem 900 00:52:13,610 --> 00:52:14,810 til 7:00 AM. 901 00:52:14,810 --> 00:52:19,040 Vi serverer første middag på 20:00, andre middag på 1:00, og for de som fortsatt 902 00:52:19,040 --> 00:52:22,540 stående på 05:00 behandler vi til pannekaker på IHOP. 903 00:52:22,540 --> 00:52:26,580 Og hackathon er en mulighet, som avbildet her, å dykke inn i 904 00:52:26,580 --> 00:52:30,470 endelige prosjektene, uansett om man jobber på egen hånd eller med venner i en 905 00:52:30,470 --> 00:52:33,770 samarbeidsmiljø, hvor hele lærerstaben fungerer godt 906 00:52:33,770 --> 00:52:37,560 i natt med en rikelig tilførsel av Hong Kong kinesisk mat. 907 00:52:37,560 --> 00:52:43,070 På 5:00 vilje slike bilder som disse være ganske vanlig i år også. 908 00:52:43,070 --> 00:52:48,170 >> Slik som vi utsette et øyeblikk for kake, husk at 76% prosent av 909 00:52:48,170 --> 00:52:51,720 personer i dette rommet har ingen tidligere erfaring, og som per pensum, 910 00:52:51,720 --> 00:52:55,300 hva som til slutt teller i dette kurset er ikke så mye hvor du ender opp 911 00:52:55,300 --> 00:52:59,540 i forhold til klassekameratene dine, men hvor du, i uke 11, ender opp i forhold til 912 00:52:59,540 --> 00:53:01,540 selv i uke 0. 913 00:53:01,540 --> 00:53:03,690 Dette er CS50.