1 00:00:19,994 --> 00:00:22,760 [Powered by Google Translate] Spreker 1: Dit is CS50. 2 00:00:22,760 --> 00:00:27,120 So ek was waar jy nou is n paar jaar gelede, en toe was ek 'n groentjie op die 3 00:00:27,120 --> 00:00:32,000 tyd, was ek nie regtig op hierdie pad van rekenaars wetenskap te doen, doen 4 00:00:32,000 --> 00:00:32,490 ingenieurswese. 5 00:00:32,490 --> 00:00:35,780 Inderdaad, ek het in hierdie plek as 'n regering concentrator. 6 00:00:35,780 --> 00:00:38,910 Ek in die hoërskool 'n kind wat dinge soos die geskiedenis hou. 7 00:00:38,910 --> 00:00:41,940 Ek hou van staatsreg, soort van Engels en wiskunde, so soort van 8 00:00:41,940 --> 00:00:45,840 afgeronde, maar nie noodwendig dinge wat ek nie geleer ken 9 00:00:45,840 --> 00:00:46,520 in die hoërskool. 10 00:00:46,520 --> 00:00:49,570 En so eerstejaars jaar, ek het hierdie angs, waardeur selfs al het ek 11 00:00:49,570 --> 00:00:53,400 graag rekenaars, rekenaar speletjies speel en dies meer, het ek seker nooit 12 00:00:53,400 --> 00:00:57,120 van myself gedink as 'n rekenaar persoon, 'n rekenaar wetenskaplike en 13 00:00:57,120 --> 00:00:59,610 eerlik te wees, ek het gedink my vriende in die hoërskool wat die neem van die rekenaar 14 00:00:59,610 --> 00:01:03,990 wetenskap was 'n bietjie van 'n - geeks. 15 00:01:03,990 --> 00:01:08,880 >> En tog, toe ek hier gekom het op die kampus, was daar hierdie kursus, CS50, en by 16 00:01:08,880 --> 00:01:12,620 die tyd, dit het om die reputasie van die werklik iets om te pasop. 17 00:01:12,620 --> 00:01:13,690 Dit was 'n goeie kursus. 18 00:01:13,690 --> 00:01:15,360 Dit was 'n prettige kursus. 19 00:01:15,360 --> 00:01:18,970 Maar jy het om werklik te kry dat die voet in die deur. 20 00:01:18,970 --> 00:01:22,090 En selfs ek het nie oor die grens eerstejaars jaar. 21 00:01:22,090 --> 00:01:25,590 En ek het op my pad gegaan om 'n regering concentrator, gaan deur 22 00:01:25,590 --> 00:01:28,787 soveel van die voorvereistes as ek kon, steek toe dinge vir gen 23 00:01:28,787 --> 00:01:32,340 ed of kern-en dies meer, en dan stage jaar, vir een of ander rede, het ek 24 00:01:32,340 --> 00:01:35,580 up die senuwee voet te stap in Science Center B, waar CS50. 25 00:01:35,580 --> 00:01:38,970 'N baie bekende rekenaar wetenskaplike met die naam van Brian Kernighan 26 00:01:38,970 --> 00:01:44,020 leer hier om in daardie jaar, en selfs dan, ek was net bereid om te werklik 27 00:01:44,020 --> 00:01:47,720 vul my studie kaart deur die neem van hierdie klas slaag / druip. 28 00:01:47,720 --> 00:01:50,140 Ek kyk rondom my, en ek het gedink almal in hierdie kamer het om te weet 29 00:01:50,140 --> 00:01:52,880 manier om meer oor rekenaar wetenskap, oor programmering, oor rekenaars. 30 00:01:52,880 --> 00:01:56,090 Almal moet programmering in hierdie kamer, want hulle was 12, maar inderdaad, 31 00:01:56,090 --> 00:01:57,470 dit was nie die geval nie. 32 00:01:57,470 --> 00:02:01,600 En so het die heel laaste dag, die vyfde Maandag van die semester dat Ek neem 33 00:02:01,600 --> 00:02:05,300 hierdie sprong en verandering van slaag / druip na 'n brief graad, en uiteindelik die verandering van my 34 00:02:05,300 --> 00:02:07,730 konsentrasie wat dieselfde dag rekenaarwetenskap. 35 00:02:07,730 --> 00:02:10,630 >> Nou is dit nie ons doel in hierdie klas, julle almal om te draai in die rekenaar 36 00:02:10,630 --> 00:02:14,600 wetenskap concentrators, maar regtig, voor te stel dat daar van hierdie geleentheid 37 00:02:14,600 --> 00:02:18,630 in hierdie veld en in ander velde wat jy dalk baie onbekende, 38 00:02:18,630 --> 00:02:21,920 gegee dat hoërskole volg gewoonlik 'n redelik standaard kurrikulêre 39 00:02:21,920 --> 00:02:26,170 pad, maar waag, in CS50, na nuwe waters. 40 00:02:26,170 --> 00:02:30,460 En as jy hier sit vandag dink jy eintlik nie hoort nie, so 41 00:02:30,460 --> 00:02:34,110 doen die meeste van die mense aan jou regterkant en aan jou linkerkant. 42 00:02:34,110 --> 00:02:39,970 Trouens, verlede jaar, 76% van die studente in die klas het geen vorige ondervinding. 43 00:02:39,970 --> 00:02:43,510 So, in teenstelling met wat jy dalk dink, is die meeste van die mense rondom jou sit 44 00:02:43,510 --> 00:02:47,130 vandag nie, in werklikheid, het enige vorige ondervinding. 45 00:02:47,130 --> 00:02:52,030 18% het een CS klas, en 6% het twee of meer. 46 00:02:52,030 --> 00:02:55,300 Intussen, vra ons studente elke jaar om hulself te beskryf in terme 47 00:02:55,300 --> 00:02:57,760 van comfort vlak, en dit is - 48 00:02:57,760 --> 00:02:59,010 daar is nie een definisie van hierdie. 49 00:02:59,010 --> 00:03:02,480 Jy het net soort van weet dit, as jy nie baie gemaklik in CS50. 50 00:03:02,480 --> 00:03:07,250 En verlede jaar, ons het 55% in die groen sirkel sny hier, self-beskryf 51 00:03:07,250 --> 00:03:10,640 as minder gemaklike studente wat eerlik ons ​​het geen idee hoekom hulle 52 00:03:10,640 --> 00:03:14,800 shop die kursus op daardie eerste dag, maar dieselfde 55% met ons gebly tot 53 00:03:14,800 --> 00:03:19,270 kwartaal se einde, het 35%, wat iewers tussen diegene wat meer 54 00:03:19,270 --> 00:03:22,100 gemaklike en diegene wat minder gemaklik. 55 00:03:22,100 --> 00:03:23,490 >> So, wat is rekenaarwetenskap? 56 00:03:23,490 --> 00:03:26,630 Wel, in die hoërskool, en werklik, meer in die algemeen daar buite hierdie dae, 57 00:03:26,630 --> 00:03:29,740 daar is hierdie persepsie of hierdie wanopvatting dat rekenaarwetenskap 58 00:03:29,740 --> 00:03:30,400 programmering. 59 00:03:30,400 --> 00:03:33,550 En dit is absoluut een aspek van rekenaarwetenskap, maar programmering, 60 00:03:33,550 --> 00:03:36,490 ongeag die taal is, is regtig net 'n instrument wat die rekenaar wetenskaplikes 61 00:03:36,490 --> 00:03:39,890 gebruik om probleme op te los, hetsy in die domein van die rekenaarwetenskap, of 62 00:03:39,890 --> 00:03:42,990 toenemend hierdie dae, in die fisiese wetenskappe, die natuurlike 63 00:03:42,990 --> 00:03:45,890 wetenskappe, in die geneeskunde, in die geesteswetenskappe, te analiseer 64 00:03:45,890 --> 00:03:47,320 groot stelle data. 65 00:03:47,320 --> 00:03:51,070 Enigeplek nou is daar rekenaar en data, daar is 'n geleentheid om aansoek te doen 66 00:03:51,070 --> 00:03:54,400 lesse wat geleer is in 'n klas soos CS50. 67 00:03:54,400 --> 00:03:57,490 >> So laat ons 'n probleem op te los wat 'n rekenaar wetenskaplike kan gaan oor 68 00:03:57,490 --> 00:04:02,370 oplossing en probeer om sommige jargon te sit, 'n konseptuele raamwerk, om 69 00:04:02,370 --> 00:04:05,420 wat anders kan 'n paar redelik abstrakte idees. 70 00:04:05,420 --> 00:04:07,370 So, dit is 'n telefoon. 71 00:04:07,370 --> 00:04:08,840 Jy sien nie hierdie dinge te dikwels. 72 00:04:08,840 --> 00:04:11,910 Die kollege lyk nog steeds om dit te hê in die huise en slaapsale, maar 73 00:04:11,910 --> 00:04:14,970 terug in die dag, wanneer jy wou 'n selfoon te gebruik soos hierdie, was daar geen 74 00:04:14,970 --> 00:04:16,760 elektroniese adres boek in jou selfoon. 75 00:04:16,760 --> 00:04:20,250 Nee, jy trek iets wat bekend staan ​​as 'n telefoon boek, en die telefoon boeke 76 00:04:20,250 --> 00:04:23,110 het ongeveer 1000 bladsye tipies. 77 00:04:23,110 --> 00:04:26,850 Hulle is gesorteer van A tot Z, en jy moes eenvoudig die regte bladsy te vind 78 00:04:26,850 --> 00:04:30,150 vind die persoon wat jy is op soek na ten einde hul naam en hul te vind 79 00:04:30,150 --> 00:04:31,020 telefoonnommer. 80 00:04:31,020 --> 00:04:33,120 Nou hoe gaan jy oor op soek na iemand wat in hierdie boek? 81 00:04:33,120 --> 00:04:35,800 >> Gestel my doel is om te gee my vriend Mike Smith 'n oproep. 82 00:04:35,800 --> 00:04:37,820 Wel, hoe gaan ek te werk oor die vind van Mike Smith? 83 00:04:37,820 --> 00:04:42,370 Wel, 'n baie redelike benadering, as naïef en ondoeltreffende, sal begin 84 00:04:42,370 --> 00:04:47,690 hier, en begin daarby na bladsy vier na bladsy vyf na bladsy ses en te sorteer 85 00:04:47,690 --> 00:04:50,930 van lineêr, langs 'n reguit lyn, gaan deur middel van die telefoon boek, en selfs 86 00:04:50,930 --> 00:04:54,010 hoewel dit gaan ongelooflik vervelig wees, as Mike Smith is in hierdie 87 00:04:54,010 --> 00:04:57,480 boek, ek is uiteindelik gaan om hom te bereik wanneer ek uiteindelik draai na die S 88 00:04:57,480 --> 00:04:58,790 gedeelte van hierdie boek. 89 00:04:58,790 --> 00:05:01,240 Nou, natuurlik, het jy nie nodig om na 'n rekenaar wetenskaplike wees om te weet dat hierdie 90 00:05:01,240 --> 00:05:02,980 is 'n dom manier om hierdie probleem op te los. 91 00:05:02,980 --> 00:05:04,620 Wat sou 'n tipiese mens doen? 92 00:05:08,430 --> 00:05:09,330 Goed gedoen. 93 00:05:09,330 --> 00:05:11,370 So, julle sal draai na die middel, reg? 94 00:05:11,370 --> 00:05:14,970 So jy wil ongeveer flip na die middel, kyk hier, en dit lyk asof ek myself te vind 95 00:05:14,970 --> 00:05:16,660 in die M-afdeling. 96 00:05:16,660 --> 00:05:19,880 Okay, so M is duidelik nie wat ek soek nie. 97 00:05:19,880 --> 00:05:23,150 Mike is na regs, om so te praat, van hierdie artikel, en soos sommige van julle het 98 00:05:23,150 --> 00:05:27,740 gesien het, kan ons nou letterlik voortgaan om dit te skeur 99 00:05:27,740 --> 00:05:28,990 probleem in 'n half. 100 00:05:33,870 --> 00:05:35,060 >> Jy moet regtig nie dat beïndruk. 101 00:05:35,060 --> 00:05:36,990 Skeur dit af in die naat is eintlik nie so moeilik. 102 00:05:36,990 --> 00:05:40,040 Die regte mense doen dit op hierdie manier, maar die naat af, het ons 103 00:05:40,040 --> 00:05:41,400 het nou twee probleme. 104 00:05:41,400 --> 00:05:44,800 Elkeen wat die helfte so groot, en ons kan letterlik gooi die helfte van die 105 00:05:44,800 --> 00:05:45,560 probleem weg. 106 00:05:45,560 --> 00:05:48,590 Nou is ons gelaat nie met 1000 bladsye, maar sê, 500. 107 00:05:48,590 --> 00:05:49,580 So nou wat moet ek doen? 108 00:05:49,580 --> 00:05:53,030 Wel, sal 'n tipiese mens rofweg gaan weer in die middel, en Ek vind myself 109 00:05:53,030 --> 00:05:55,080 die R-afdeling, so nie heeltemal daar nie. 110 00:05:55,080 --> 00:05:58,380 Dit weer doen, kan ek hierdie probleem in die helfte skeur. 111 00:05:58,380 --> 00:05:59,630 Dankie. 112 00:06:02,000 --> 00:06:07,050 So nou is ek het net sowat 250 bladsye, en ek kan doen dit weer, en weer, en 113 00:06:07,050 --> 00:06:11,340 weer, en gaan van 125 af tot ongeveer 60, 30, 15, en so meer. 114 00:06:11,340 --> 00:06:16,680 En laastens, ek sal whittled kom neer na een van die S-bladsye waarop, as hy 115 00:06:16,680 --> 00:06:19,510 in die telefoon boek, moet Mike Smith. 116 00:06:19,510 --> 00:06:22,720 >> Nou is dit natuurlik redelik redelike algoritme, en dit is 'n 117 00:06:22,720 --> 00:06:25,395 one-time gebruik algoritme in hierdie geval, maar wat kan ons soort van 118 00:06:25,395 --> 00:06:26,920 neem weg van wat? 119 00:06:26,920 --> 00:06:30,750 Wel, die eerste benadering, korrek is, indien naïef, al is, dit is, kan 120 00:06:30,750 --> 00:06:32,270 beskryf by hierdie reguit lyn. 121 00:06:32,270 --> 00:06:35,740 So as op die x-as, hier is ons sê, dit is die omvang van die probleem. 122 00:06:35,740 --> 00:06:39,530 So as die x-as gaan na regs, die probleem groter. 123 00:06:39,530 --> 00:06:40,870 Wat beteken dit om groter wees? 124 00:06:40,870 --> 00:06:43,920 In die konteks van hierdie probleem, meer bladsye in die telefoon boek. 125 00:06:43,920 --> 00:06:45,860 Daar is meer iets wat ons kan kwantifiseer. 126 00:06:45,860 --> 00:06:47,660 Op die y-as, tyd op te los. 127 00:06:47,660 --> 00:06:51,790 So as die as gaan, ons vermoed dit is vermoedelik neem meer tyd. 128 00:06:51,790 --> 00:06:56,960 So dat die eerste benadering van lineêr soek van bladsy een tot bladsy 1000 129 00:06:56,960 --> 00:07:01,480 is 'n lineêre proses, 'n lineêre algoritme of proses, en ons kan 130 00:07:01,480 --> 00:07:03,120 beskryf dit by hierdie reguit lyn. 131 00:07:03,120 --> 00:07:06,560 As ek nog een bladsy na die telefoon boek, dit gaan, in die ergste 132 00:07:06,560 --> 00:07:09,950 geval, neem my nog een bladsy flip Mike Smith te vind. 133 00:07:09,950 --> 00:07:13,840 As ek voeg 100 bladsye, 100 meer flips, of eenhede van tyd. 134 00:07:13,840 --> 00:07:15,350 >> Nou kan ek 'n bietjie slim met hierdie. 135 00:07:15,350 --> 00:07:17,550 Ek hoef nie te regtig draai dit een bladsy op 'n tyd. 136 00:07:17,550 --> 00:07:21,110 Ek kan doen dinge soos twee op 'n tyd of vier op 'n slag, maar selfs dit is nie 137 00:07:21,110 --> 00:07:22,350 alles wat fundamenteel beter. 138 00:07:22,350 --> 00:07:26,540 Selfs al is dit twee op 'n tyd, ja, daardie soort van hierdie lyn beweeg 'n bietjie af, 139 00:07:26,540 --> 00:07:31,010 en dit beteken dat dit neem minder tyd, gegewe die dieselfde aantal bladsye, maar 140 00:07:31,010 --> 00:07:32,570 dit is nie fundamenteel beter. 141 00:07:32,570 --> 00:07:36,290 Maar wat ons nie net doen, en wat het julle almal instinktief? 142 00:07:36,290 --> 00:07:41,210 Jy eintlik 'n bietjie iets soos hierdie, logaritmiese tyd bereik, 143 00:07:41,210 --> 00:07:46,540 waardeur die probleem kan groei en groei en groei, maar die koste van die oplossing van daardie 144 00:07:46,540 --> 00:07:49,460 probleem, die tyd wat nodig is om die probleem op te los, is dit nie 145 00:07:49,460 --> 00:07:51,460 groei byna so vinnig. 146 00:07:51,460 --> 00:07:55,930 Dit sou 'n logaritmiese kurwe, log van n, waar n net in die grootte van 147 00:07:55,930 --> 00:07:58,310 die probleem, die aantal bladsye in die telefoon boek. 148 00:07:58,310 --> 00:07:59,780 En wat beteken dit in reële terme? 149 00:07:59,780 --> 00:08:02,630 Wel, as ons het, soos, 500 mense in hierdie kamer right now - 150 00:08:02,630 --> 00:08:04,470 of liewer, as ons - 151 00:08:04,470 --> 00:08:06,020 vermenging metafoor - 152 00:08:06,020 --> 00:08:09,870 nie doen wat byvoorbeeld nog hierdie jaar - so as ons het 500 bladsye in die telefoon 153 00:08:09,870 --> 00:08:14,450 boek, en ons verdubbel dit tot 1000, in hierdie meer intelligent model van 154 00:08:14,450 --> 00:08:17,670 daarby na die middel, hoeveel meer bladsy-tearers dit neem om te gaan 155 00:08:17,670 --> 00:08:19,520 500 bladsye na 1000? 156 00:08:19,520 --> 00:08:21,650 Wel, net 'n addisionele bladsy traan. 157 00:08:21,650 --> 00:08:24,580 As jy aan my 'n 2000 bladsy telefoon boek, geen big deal. 158 00:08:24,580 --> 00:08:27,200 Ek wil skeur dit net een addisionele tyd. 159 00:08:27,200 --> 00:08:31,780 >> Dus, in kort, kan die omvang van die probleem groei baie vinniger as die koste van 160 00:08:31,780 --> 00:08:32,780 eintlik die belangrikheid daarvan. 161 00:08:32,780 --> 00:08:35,030 Dit is nou net een so 'n algoritme. 162 00:08:35,030 --> 00:08:37,610 Daar is ander wat ons in hierdie selfde manier kan oplos. 163 00:08:37,610 --> 00:08:40,730 En so hoekom ons nie dit doen - as jy my sou humor, al is dit ongemaklik hier 164 00:08:40,730 --> 00:08:45,085 Sanders, voort te gaan, almal, as jy kan, en staan ​​in plek. 165 00:08:48,550 --> 00:08:52,440 Soos jy kan sien op die skerm hier, dit is 'n algoritme, 'n proses, 'n rekenaar 166 00:08:52,440 --> 00:08:55,980 program, as jy wil, wat uitgevoer moet word deur die mens, wat net drie stappe. 167 00:08:55,980 --> 00:08:57,980 Ons het reeds op stap een, het jy opgestaan. 168 00:08:57,980 --> 00:09:00,260 En nou dink aan jouself die nommer een. 169 00:09:00,260 --> 00:09:01,450 Dit is jou huidige nommer. 170 00:09:01,450 --> 00:09:03,120 Almal hier is nommer een. 171 00:09:03,120 --> 00:09:07,160 Stap twee, 'n paar saam met iemand staan ​​en jou nommers, 172 00:09:07,160 --> 00:09:09,345 en dan neem hierdie bedrag as jou nuwe nommer. 173 00:09:17,470 --> 00:09:20,830 Een van julle moet sit, dan herhaal. 174 00:10:11,330 --> 00:10:14,100 >> Op hierdie punt, moet minder en minder mense staan. 175 00:10:16,820 --> 00:10:20,030 Dit is waar dit raak meer ongemaklik. 176 00:10:20,030 --> 00:10:21,280 Iemand hier, hier. 177 00:10:30,620 --> 00:10:34,180 Die ergste deel is, moet jy ook baie mondelings doen rekenkundige voor 178 00:10:34,180 --> 00:10:36,310 van honderde van Harvard voorgraads. 179 00:10:42,920 --> 00:10:45,280 Okay, bietjie van 'n fout hier. 180 00:10:45,280 --> 00:10:48,470 Okay, wat is jou nommer? 181 00:10:48,470 --> 00:10:49,170 Nege. 182 00:10:49,170 --> 00:10:51,880 Okay. 183 00:10:51,880 --> 00:10:53,130 Wat is jou nommer? 184 00:10:55,920 --> 00:10:57,710 179. 185 00:10:57,710 --> 00:10:58,470 Goed. 186 00:10:58,470 --> 00:10:59,420 So 188. 187 00:10:59,420 --> 00:11:00,570 Sodat julle kan sit. 188 00:11:00,570 --> 00:11:02,320 Wat is jou nommer? 189 00:11:02,320 --> 00:11:04,420 118. 190 00:11:04,420 --> 00:11:07,440 'N paar slim undergrad begin om die wiskunde te doen. 191 00:11:07,440 --> 00:11:09,180 Okay, 118, 188. 192 00:11:09,180 --> 00:11:10,430 Wat anders het ons? 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 En? 197 00:11:20,220 --> 00:11:23,240 47, wat doserende personeel, wat gee ons hoeveel? 198 00:11:26,250 --> 00:11:29,830 705 is die antwoord. 199 00:11:29,830 --> 00:11:32,045 En dit is, in werklikheid, presies korrek. 200 00:11:37,250 --> 00:11:40,080 >> Nee, ons was eintlik 'n bietjie af daar, maar hoe 201 00:11:40,080 --> 00:11:41,220 moet dit gewerk het? 202 00:11:41,220 --> 00:11:44,080 Wat moet net gebeur het? 203 00:11:44,080 --> 00:11:48,270 So op elke iterasie van hierdie algoritme, het ons begin met 'n paar nommer 204 00:11:48,270 --> 00:11:51,480 van die mense staan, en wat was die totale getal, n, op die eerste. 205 00:11:51,480 --> 00:11:53,880 Dan die helfte van julle gaan sit, en ons het n oor twee. 206 00:11:53,880 --> 00:11:57,570 Dan is die helfte van julle gaan sit het, het ons na 'n oor vier, n meer as agt, meer as 16, 207 00:11:57,570 --> 00:12:01,220 en so meer, totdat, selfs al is dit soort van gedisintegreer daar by die 208 00:12:01,220 --> 00:12:04,760 einde, in teorie, moes almal gepaarde af in die balkon, en mezzanine, en 209 00:12:04,760 --> 00:12:10,180 orkes hier, ons het net een eensame persoon wat, met 'n totale 210 00:12:10,180 --> 00:12:13,930 waarde, in hierdie geval, van 705. 211 00:12:13,930 --> 00:12:16,600 Nou wat beteken dit beteken, al is, vir die loop van die tyd? 212 00:12:16,600 --> 00:12:18,960 Wel, dink as ek, as die mens gedoen het dit handmatig. 213 00:12:18,960 --> 00:12:22,602 Ek sou redelik naïef maar korrek het begin met een, twee, drie, 214 00:12:22,602 --> 00:12:27,060 vier, vyf, ses, sewe, agt, en so meer, neem 'n geruime tyd. 215 00:12:27,060 --> 00:12:28,120 So ek kan beter doen, reg? 216 00:12:28,120 --> 00:12:29,830 In graad skool, het jy nie net in dié tel. 217 00:12:29,830 --> 00:12:30,580 Jy tel in twees. 218 00:12:30,580 --> 00:12:32,190 So twee, vier, ses, agt, tien, twaalf. 219 00:12:32,190 --> 00:12:36,210 En wat kry baie vinniger, maar nou fundamenteel, deur gebruik te maak van die 220 00:12:36,210 --> 00:12:39,710 kollektiewe intelligensie van almal in hierdie kamer, kan ons 'n kurwe baie bereik 221 00:12:39,710 --> 00:12:43,750 meer soos hierdie, waarby nou, die aantal van die mense in hierdie kamer 222 00:12:43,750 --> 00:12:48,570 kan dubbel, nog 700 mense loop in hierdie kamer vir 1400 mense, maar 223 00:12:48,570 --> 00:12:53,010 sou dit neem ons net nog een iterasie van hierdie algoritme om op te los. 224 00:12:53,010 --> 00:12:55,970 >> En dit toenemend, hierdie dae, wanneer ons hierdie groot data stelle in 225 00:12:55,970 --> 00:12:59,690 Facebook, Google, en dies meer, is dit die oplossing van probleme met hierdie stukkie 226 00:12:59,690 --> 00:13:04,060 insig, hierdie bietjie van die slimheid, dis wat ons toelaat om steeds baie om te doen, 227 00:13:04,060 --> 00:13:07,290 veel meer kragtige dinge vandag met rekenaars. 228 00:13:07,290 --> 00:13:10,440 As jy hou van hierdie soort van dinge, sou jy gesien het op Facebook CS50 se 229 00:13:10,440 --> 00:13:12,990 eie legkaart Day, kom hierdie Saterdag. 230 00:13:12,990 --> 00:13:15,860 As jy wil om deel te neem in iets soos hierdie, waardeur jy en 231 00:13:15,860 --> 00:13:20,470 twee of drie, of vier spanne van vier wil graag op te los n paar raaisels sodanige 232 00:13:20,470 --> 00:13:25,030 soos hierdie een, staan ​​jy 'n kans om 'n paar fantastiese pryse te wen, waaronder 'n 233 00:13:25,030 --> 00:13:29,130 Wii, en 'n paar gift cards, en 'n paar ander Facebook buit hierdie Saterdag, 234 00:13:29,130 --> 00:13:30,770 middag tot 15:00. 235 00:13:30,770 --> 00:13:35,590 Gaan na cs50.net/rsvp vir sodanige. 236 00:13:35,590 --> 00:13:38,070 En hierdie dia is aanlyn as jy wil om rond te speel. 237 00:13:38,070 --> 00:13:40,170 Die kopkrapper hierdie jaar sal nuut wees. 238 00:13:40,170 --> 00:13:43,350 >> Jy mag opmerk in die klaskamer, ook al hoe meer kameras vanjaar. 239 00:13:43,350 --> 00:13:47,950 Dus nie net die kursus sal verfilm word op die gewone manier, CS50 kan ook 240 00:13:47,950 --> 00:13:51,230 om deel te neem in 'n dokumentêr oor hoër onderwys wat kyk na die 241 00:13:51,230 --> 00:13:54,460 transformerende ervaring wat 'n student kan deesdae in 'n 242 00:13:54,460 --> 00:13:56,010 voorgraadse kursus van studie. 243 00:13:56,010 --> 00:14:00,340 So na hierdie einde, sal ons nie net die verfilming word vir wat, ons sal verfilming word 244 00:14:00,340 --> 00:14:04,700 asook vir, en toenemend, ons aanlyn publiek, sowel as op die geleentheid, 245 00:14:04,700 --> 00:14:05,810 hierdie gehoor hier. 246 00:14:05,810 --> 00:14:09,120 Sodat ons welkom aan die klas hierdie jaar het ons Harvard uitbreiding skool studente, 247 00:14:09,120 --> 00:14:12,060 nagraadse skool van die ontwerp, die onderwys, die sakeskool, die Kennedy 248 00:14:12,060 --> 00:14:15,600 Skool, die wet skool, sowel as 'n aantal van die studente van Belmont, 249 00:14:15,600 --> 00:14:18,280 Lexington, Newton, en Watertown Hoërskole. 250 00:14:18,280 --> 00:14:19,250 Welkom aan julle almal. 251 00:14:19,250 --> 00:14:22,330 Daarbenewens het hierdie jaar, as jy dalk gehoor het, Harvard en MIT, en 252 00:14:22,330 --> 00:14:25,740 Berkeley nou aangegaan is 'n gesamentlike vennootskap op 'n 253 00:14:25,740 --> 00:14:30,490 inisiatief genaamd EDX, wat is 'n inisiatief om oop te maak onderwys vir almal 254 00:14:30,490 --> 00:14:34,010 hoe meer mense aanlyn en, fundamenteel, begin navorsing doen oor 255 00:14:34,010 --> 00:14:36,530 'n veel groter skaal as hoe mense leer. 256 00:14:36,530 --> 00:14:39,960 En so CS50 sal die kollege se eerste kursus deel te neem in daardie 257 00:14:39,960 --> 00:14:42,960 inisiatief, asook, wat beteken dat jy toegang tot al hoe meer 258 00:14:42,960 --> 00:14:46,890 gereedskap, al die kurrikulere inhoud, al hoe meer video-inhoud as 259 00:14:46,890 --> 00:14:52,410 'n gevolg, sowel as van gister oggend, die 53.019 mense wat 260 00:14:52,410 --> 00:14:56,825 geregistreer CS50 saam met jou te neem hierdie jaar op die internet. 261 00:15:05,940 --> 00:15:08,830 So, wat dit beteken, in die besonder, is dat die doserende personeel en ek het 262 00:15:08,830 --> 00:15:12,080 nogal 'n bietjie van die tyd spandeer om hierdie somer voor te berei vir die herfs, beide op die kampus 263 00:15:12,080 --> 00:15:15,720 en af, sodat ons kan begin om te bou aan 'n corpus van interessante, 264 00:15:15,720 --> 00:15:20,760 dwingende, van die beoefening van opvoedkundige inhoud, wat fokus in die besonder op 265 00:15:20,760 --> 00:15:26,090 meer intieme conveyances van redelik komplekse materiaal. 266 00:15:26,090 --> 00:15:28,540 >> Dus, in Benewens die kursus se lesings, en artikels, en dinge 267 00:15:28,540 --> 00:15:31,810 sogenaamde ipv, wat ons weer in net 'n bietjie, ons sal ook 268 00:15:31,810 --> 00:15:35,090 hierdie kortbroek hierdie jaar wat u toelaat om betrokke te raak met die verloop van 'n 269 00:15:35,090 --> 00:15:36,660 ander hoek almal saam. 270 00:15:36,660 --> 00:15:39,610 So laat ons gebruik hierdie as 'n geleentheid om 'n vinnige blik te neem aan een wat 271 00:15:39,610 --> 00:15:41,460 Bespreek hierdie idee van binêre. 272 00:15:41,460 --> 00:15:44,890 >> So in die rekenaar wetenskap is daar dinge genoem algoritmes, waarvan twee 273 00:15:44,890 --> 00:15:47,870 ons het net 'n blik op hierdie prosedures vir die oplos van probleme. 274 00:15:47,870 --> 00:15:51,060 Maar aan die einde van die dag, het jy inligting nodig het om een ​​of ander manier voor te stel, en jy 275 00:15:51,060 --> 00:15:54,540 moet dit voor te stel in 'n manier wat 'n rekenaar kan verstaan. 276 00:15:54,540 --> 00:15:57,330 En selfs as jy nie regtig nie rekenaars te verstaan, en jy is in 277 00:15:57,330 --> 00:16:01,470 dat 76% reg nou, het jy waarskynlik 'n paar vae gevoel dat rekenaars 278 00:16:01,470 --> 00:16:05,300 een of ander manier 'n deal in nulle en ene, die binêre stelsel, om so te praat. 279 00:16:05,300 --> 00:16:06,630 Nou is die rede waarom dit die geval? 280 00:16:06,630 --> 00:16:10,120 Wel, blyk Toe rekenaars vir die eerste keer, as jy nodig het om te verteenwoordig 281 00:16:10,120 --> 00:16:13,810 inligting, kan jy dit doen met elektrisiteit, en al is dit 'n bietjie 282 00:16:13,810 --> 00:16:18,140 van 'n oorvereenvoudiging, 'n baie maklike manier om van die optekening van inligting is óf 283 00:16:18,140 --> 00:16:22,600 deur die draai dat die elektrisiteit op 'n een in binêre, om so te praat, of draai 284 00:16:22,600 --> 00:16:24,290 dat elektrisiteit af. 285 00:16:24,290 --> 00:16:26,210 >> So Barry, indien jy nie sou omgee, kan ons dim die ligte 286 00:16:26,210 --> 00:16:28,140 ten volle vir 'n oomblik? 287 00:16:28,140 --> 00:16:31,750 Dit is hier 'n baie gratuite binêre nul. 288 00:16:31,750 --> 00:16:35,960 Alles reg, as ons draai die ligte back-up, nou Sanders Teater 289 00:16:35,960 --> 00:16:37,990 wat die binêre waarde van een. 290 00:16:37,990 --> 00:16:41,860 Ongelukkig, met net 'n bietjie, met net een stel van die ligte, ons kan net 291 00:16:41,860 --> 00:16:45,770 verteenwoordig twee getalle in die wêreld, nul en een, en dit sou mooi wees as 292 00:16:45,770 --> 00:16:48,510 rekenaars kan 'n bietjie hoër is as wat tel nie, maar wel, kan hulle. 293 00:16:48,510 --> 00:16:52,170 So laat my trek op die skerm hier om ons vriend, Nate Hardison, wie sal aan 294 00:16:52,170 --> 00:16:54,980 ons 'n vinnige blik oor die verloop van 'n paar minute by 295 00:16:54,980 --> 00:16:56,505 hierdie idee van binêre. 296 00:17:03,526 --> 00:17:06,550 >> Nate HARDISON: Terug by wat jy geleer het hoe om te lees en skryf getalle, jy 297 00:17:06,550 --> 00:17:10,589 geleer het oor die syfers van nul tot nege. 298 00:17:10,589 --> 00:17:13,589 Heelgetalle groter as nege te skryf, moet jy leer dat alles wat jy gehad het om te doen 299 00:17:13,589 --> 00:17:23,130 is 'n kombinasie van hierdie syfers gebruik, soos in 52 en 437. 300 00:17:23,130 --> 00:17:27,760 So is hierdie manier van getalle skryf het 'n naam, desimale notasie. 301 00:17:27,760 --> 00:17:28,830 Hoekom desimale? 302 00:17:28,830 --> 00:17:33,630 Wel, die Latynse wortel van die desimale, decaBDE, beteken 10, en wanneer jy 10 syfers 303 00:17:33,630 --> 00:17:37,420 in jou notasie stelsel, 10 'n eerder spesiale nommer. 304 00:17:37,420 --> 00:17:42,480 Kom ons kyk na die getal 437 in desimale notasie geskryf om te verstaan ​​waarom. 305 00:17:42,480 --> 00:17:52,330 >> Ons kan eers breek 437 tot 400 plus 30 plus 7. 306 00:17:52,330 --> 00:18:00,260 Ons kan dit uitmekaar selfs meer, sodat ons vier keer 100 plus 3 het 307 00:18:00,260 --> 00:18:05,120 keer 10 plus 7 keer 1. 308 00:18:05,120 --> 00:18:08,580 onthou leer oor die mense, die 10s, die 100'e 309 00:18:08,580 --> 00:18:10,190 plek, en so aan? 310 00:18:10,190 --> 00:18:13,120 Dit is presies waar dit kom uit. 311 00:18:13,120 --> 00:18:15,870 En ten slotte, kan ons sien hoe ons het 'n klomp van die magte van die 312 00:18:15,870 --> 00:18:17,900 10 ingebed hier. 313 00:18:17,900 --> 00:18:28,820 Ons het 4 keer 10 aan die 2 plus 3 keer 10 aan die 1 plus 7 314 00:18:28,820 --> 00:18:31,720 keer 10 aan die nul. 315 00:18:31,720 --> 00:18:35,390 So nou kan jy sien waarom 10 is 'n spesiale getal in desimale notasie. 316 00:18:35,390 --> 00:18:37,370 Om die waarheid te sê, ons het 'n naam vir dit. 317 00:18:37,370 --> 00:18:40,420 Dit is die basis genoem, want dit is die basis van die eksponent in 318 00:18:40,420 --> 00:18:42,100 ons rekenkundige hier. 319 00:18:42,100 --> 00:18:45,320 >> Desimale notasie is nie die enigste manier om getalle voor te stel. 320 00:18:45,320 --> 00:18:50,480 Om die waarheid te sê, selfs al is ons ontslae te raak van die syfers 2 deur nege, kan ons nog 321 00:18:50,480 --> 00:18:53,740 verteenwoordig al die getalle wat ons kon met desimale. 322 00:18:53,740 --> 00:18:58,910 So nou dat ons twee syfers, nul en een, twee is ons spesiale nommer, 323 00:18:58,910 --> 00:19:01,210 die basis van ons notasie stelsel. 324 00:19:01,210 --> 00:19:04,580 Die naam van hierdie notasie stelsel genoem binêre, aangesien die 325 00:19:04,580 --> 00:19:07,030 voorvoegsel bi beteken twee. 326 00:19:07,030 --> 00:19:11,190 So in plaas, nou, met 'n kinders, en 10e plek, en so aan, ons 327 00:19:11,190 --> 00:19:15,900 nou het dié plek, 'n twee-twee plek, 'n viere plek, en so aan, gaan deur 328 00:19:15,900 --> 00:19:17,550 magte van die twee. 329 00:19:17,550 --> 00:19:19,450 So laat ons sien dit deur te doen 'n paar tel. 330 00:19:19,450 --> 00:19:24,940 So nul is steeds nul is, en 'n mens is nog steeds een. 331 00:19:24,940 --> 00:19:31,050 Maar nou dat ons het 'n twee-twee in plaas van 'n 10s, 10 332 00:19:31,050 --> 00:19:33,190 die nommer twee. 333 00:19:33,190 --> 00:19:38,386 Drie tot kry, voeg ons dat, en kry 11. 334 00:19:38,386 --> 00:19:44,660 Vier, want daar is nou 'n viere plek, word verteenwoordig deur 100. 335 00:19:44,660 --> 00:19:49,410 Vyf is 101. 336 00:19:49,410 --> 00:19:53,642 Ses is 110. 337 00:19:53,642 --> 00:19:56,610 Sewe is 111. 338 00:19:56,610 --> 00:19:58,470 Agt, weer, het sy eie plek. 339 00:19:58,470 --> 00:20:02,790 So dit is 1000. 340 00:20:02,790 --> 00:20:05,201 En ek dink jy kry die punt. 341 00:20:05,201 --> 00:20:09,800 >> Spreker 1: So dit is om te sê wat rekenaars doen en wat die program is, is 342 00:20:09,800 --> 00:20:13,690 eintlik nie so verskillend van wat ons het is die neem van toegestaan ​​vir 'n paar 343 00:20:13,690 --> 00:20:14,560 jaar, reg? 344 00:20:14,560 --> 00:20:17,097 Terug in graad skool, jy het geleer om presies te tel in die 345 00:20:17,097 --> 00:20:19,970 mode dat Nate voorgestel, maar het jy waarskynlik nie regtig gedink oor 346 00:20:19,970 --> 00:20:22,440 dit sedert die feit dat daar is hierdie kinders, 10s plek, en 100'e 347 00:20:22,440 --> 00:20:23,315 plek, en dit is redelik arbitrêre. 348 00:20:23,315 --> 00:20:26,210 En inderdaad, rekenaars gebruik eenvoudig die verskillende base. 349 00:20:26,210 --> 00:20:30,160 Maar aan die einde van die dag, om fisies eintlik verteenwoordig hierdie idee van 'n 350 00:20:30,160 --> 00:20:33,130 nul en een, het jy natuurlik nie net nie draai die ligte aan en af 351 00:20:33,130 --> 00:20:33,445 noodwendig nie. 352 00:20:33,445 --> 00:20:36,100 Wat jy nodig het om dit te doen op 'n baie fyner korrel skaal. 353 00:20:36,100 --> 00:20:39,990 En deur fyner graan, kan jy onthou hierdie simpel speelding van kleins af, 354 00:20:39,990 --> 00:20:42,570 Wollerige Willy en hierdie klein magnetiese deeltjies. 355 00:20:42,570 --> 00:20:46,440 >> So magnetiese deeltjies is iets wat jy kan bring in 'n paar van 356 00:20:46,440 --> 00:20:49,920 verskillende rigtings, miskien noord-suid-of Suid-Noord. 357 00:20:49,920 --> 00:20:53,470 En so het 'n baie fisiese inkarnasies van tegnologie hierdie dae dat die gebruik 358 00:20:53,470 --> 00:20:57,690 binêre, wat gebruik maak van nulle en ene, eenvoudig magnetisme aan die binnekant 359 00:20:57,690 --> 00:21:04,110 wat ooreenstem dinge up-of af-up, en daardeur verteenwoordigend van 'n nul of 'n een, 360 00:21:04,110 --> 00:21:04,890 onderskeidelik. 361 00:21:04,890 --> 00:21:08,930 So inderdaad, laat ons wegbeweeg van die opsomming hier, en kyk na die binnekant 362 00:21:08,930 --> 00:21:10,780 van wat is 'n meer tradisionele hardeskyf. 363 00:21:10,780 --> 00:21:13,840 Hierdie een gebeur om te wees 'n bietjie groter op die skerm, in die sin dat dit is van 'n lessenaar 364 00:21:13,840 --> 00:21:18,310 rekenaar, maar skootrekenaars vandag nog steeds dieselfde tegnologie, maar is geleidelik 365 00:21:18,310 --> 00:21:22,140 word vervang deur meer gesofistikeerde dinge wat eintlik geen bewegende 366 00:21:22,140 --> 00:21:25,275 dele - die binnekant, dan, van 'n hardeskyf. 367 00:21:25,275 --> 00:21:28,450 >> Spreker 2: Die harde skyf is waar jou rekenaar stoor die meeste van 368 00:21:28,450 --> 00:21:29,990 sy permanente data. 369 00:21:29,990 --> 00:21:34,710 Dit te doen, die data uit die RAM reis saam met sagteware seine wat vertel 370 00:21:34,710 --> 00:21:37,420 die hardeskyf hoe om daardie data te stoor. 371 00:21:37,420 --> 00:21:40,720 Die hardeskyf stroombane vertaal daardie seine in spanning 372 00:21:40,720 --> 00:21:42,270 fluktuasies. 373 00:21:42,270 --> 00:21:46,290 Dit, op sy beurt, die hardeskyf se bewegende dele, 'n paar van die min beheer 374 00:21:46,290 --> 00:21:48,890 bewegende dele links in die moderne rekenaar. 375 00:21:48,890 --> 00:21:53,400 Sommige van die seine 'n motor, wat skole metaal bedek platters beheer. 376 00:21:53,400 --> 00:21:56,810 Jou data is eintlik gestoor op hierdie platters. 377 00:21:56,810 --> 00:21:59,940 Ander seine beweeg die lees-en skryf koppe te lees of 378 00:21:59,940 --> 00:22:02,030 skryf data op die borde. 379 00:22:02,030 --> 00:22:06,710 Hierdie masjinerie is so akkuraat dat 'n menslike hare, selfs kon nie slaag tussen 380 00:22:06,710 --> 00:22:11,390 die hoofde van die spin-platters, maar dit werk teen geweldige spoed. 381 00:22:11,390 --> 00:22:15,120 >> Spreker 1: So het ons nou in zoom op wat eintlik op die top van hierdie 382 00:22:15,120 --> 00:22:19,620 platters in terme van die magnetisme, ons het die tweede van twee lyk. 383 00:22:19,620 --> 00:22:22,940 >> SPREKER 3: Kom ons kyk na wat ons nou net gesien het in slow motion. 384 00:22:22,940 --> 00:22:27,010 Wanneer 'n kort puls van elektrisiteit is gestuur na die lees-en skryf kop, dit flips 385 00:22:27,010 --> 00:22:30,390 op 'n klein elektro vir 'n fraksie van 'n sekonde. 386 00:22:30,390 --> 00:22:34,280 Die magneet skep 'n veld, wat verander die polariteit van 'n klein, klein 387 00:22:34,280 --> 00:22:37,995 gedeelte van die metaal deeltjies wat jas elke skottel se oppervlak. 388 00:22:37,995 --> 00:22:41,810 'N patroon reeks van hierdie klein gehef gebiede op die skyf verteenwoordig 'n 389 00:22:41,810 --> 00:22:45,820 n bietjie van die data in 'n binêre getallestelsel wat gebruik word deur rekenaars. 390 00:22:45,820 --> 00:22:49,430 Nou as die huidige een manier deur middel van die lees-en skryf kop, die gebied gestuur 391 00:22:49,430 --> 00:22:51,170 is gepolariseerde in een rigting. 392 00:22:51,170 --> 00:22:53,250 As die stroom in die teenoorgestelde rigting gestuur, 393 00:22:53,250 --> 00:22:55,220 polarisasie is, word teruggeskryf. 394 00:22:55,220 --> 00:22:57,680 Hoe kry jy data van die hardeskyf af? 395 00:22:57,680 --> 00:22:59,400 Net die proses omkeer. 396 00:22:59,400 --> 00:23:02,050 So dit is die deeltjies op die skyf wat die huidige en die lees-en skryf 397 00:23:02,050 --> 00:23:03,340 kop beweeg. 398 00:23:03,340 --> 00:23:06,010 Saamgevoeg miljoene van hierdie gemagnetiseerde segmente, en 399 00:23:06,010 --> 00:23:07,440 jy het 'n lêer. 400 00:23:07,440 --> 00:23:12,240 Nou is die stukke van 'n enkele lêer kan versprei word oor 'n ry se platters, 401 00:23:12,240 --> 00:23:15,270 soort van soos die gemors van vraestelle op jou lessenaar. 402 00:23:15,270 --> 00:23:18,800 So 'n spesiale ekstra lêer hou van waar alles is. 403 00:23:18,800 --> 00:23:21,640 Dit nie doen nie jy wens jy het iets soos dit? 404 00:23:21,640 --> 00:23:23,340 >> Spreker 1: Inderdaad. 405 00:23:23,340 --> 00:23:27,560 So ons het die vermoë om hierdie inligting voor te stel, getalle 406 00:23:27,560 --> 00:23:28,440 op 'n baie lae vlak. 407 00:23:28,440 --> 00:23:32,730 Ons het 'n fisiese manier van dieselfde ding, maar ons kan nie regtig 408 00:23:32,730 --> 00:23:36,440 doen al dat baie van belang is nie, behalwe miskien 'n paar rekenkundige en 409 00:23:36,440 --> 00:23:36,940 wiskunde. 410 00:23:36,940 --> 00:23:40,830 Daar is geen manier wat tot dusver dinge soos alfabetiese letters, 411 00:23:40,830 --> 00:23:44,100 sodat ons mense kan kommunikeer, deur gebruik te maak van hierdie toestelle. 412 00:23:44,100 --> 00:23:48,240 Maar gelukkig, bestaan ​​daar enkoderings, patrone van nulle en ene 413 00:23:48,240 --> 00:23:52,920 wat hoër vlak konstrukte soos A, en B en C, en die hele stel 414 00:23:52,920 --> 00:23:54,880 sinne en paragrawe, en dies meer. 415 00:23:54,880 --> 00:24:00,300 En so ASCII, wat is 'n akroniem wat verwys na hierdie koderingstelsel waardeur 416 00:24:00,300 --> 00:24:04,350 een getal 'n gegewe letter - byvoorbeeld, die getal wat ons weet 417 00:24:04,350 --> 00:24:09,120 as desimale waarde 65 word bekend as die hoofstad letter A tot rekenaars. 418 00:24:09,120 --> 00:24:13,670 Die desimale waarde van 97 in rekenaars is bekend as 'n kleinletter a. 419 00:24:13,670 --> 00:24:15,210 En wat beteken dit werklik? 420 00:24:15,210 --> 00:24:19,510 Wel, selfs al Nate, 'n oomblik gelede, net getel vanaf nul tot agt, indien 421 00:24:19,510 --> 00:24:24,910 ons was om voort te gaan om te tel tot 65, of verder tot 97, die patroon van 422 00:24:24,910 --> 00:24:28,440 nulle en ene dat hy sou getrek het op die skerm sal presies wees 423 00:24:28,440 --> 00:24:33,420 wat 'n rekenaar gebruik om die letter A in alle pette, of die letter A te verteenwoordig 424 00:24:33,420 --> 00:24:34,610 in kleinletters. 425 00:24:34,610 --> 00:24:36,690 En inderdaad, daar is 'n hele skema te. 426 00:24:36,690 --> 00:24:41,570 Dit is met die eerste oogopslag, oorweldigende grafiek enkoderings, maar as jy fokus 427 00:24:41,570 --> 00:24:46,210 let net op die regter helfte hier, in die middelste kolom, het ons hierdie 428 00:24:46,210 --> 00:24:49,010 begrip van getalle gevolg deur letters. 429 00:24:49,010 --> 00:24:53,830 En by die top, het ons 32, en die karakter kar, waarin 32, die 430 00:24:53,830 --> 00:24:57,360 integer, nou verwys, is blykbaar die space bar karakter. 431 00:24:57,360 --> 00:25:00,720 Wanneer jy die space bar karakter op jou laptop, wat jy regtig 432 00:25:00,720 --> 00:25:04,160 stuur is 'n getal, 'n patroon van nulle en ene, 'n vloei van elektrisiteit, 433 00:25:04,160 --> 00:25:07,770 as jy wil, verteenwoordig daardie nulle en ene, dat die rekenaar dan 434 00:25:07,770 --> 00:25:10,330 interpreteer as 'n ruimte karakter op die skerm. 435 00:25:10,330 --> 00:25:12,210 'N uitroepteken is 33. 436 00:25:12,210 --> 00:25:13,345 Dubbele aanhalingstekens is 34. 437 00:25:13,345 --> 00:25:18,945 En as ons scroll down hier aan die regterkant, ons sien dat 65 is inderdaad 'n, en 438 00:25:18,945 --> 00:25:21,290 97 is inderdaad kleinletter a. 439 00:25:21,290 --> 00:25:23,910 >> So nou dat ons hierdie kodering skedule, kan ons begin om te 440 00:25:23,910 --> 00:25:25,080 spel dinge uit. 441 00:25:25,080 --> 00:25:30,170 Inderdaad, rekenaars tipies hulself uitdruk in standaard eenhede, nie 442 00:25:30,170 --> 00:25:33,020 deur gebruik te maak van 'n individuele bietjie, wat weer, is nie alles wat nuttig om net 443 00:25:33,020 --> 00:25:36,600 verteenwoordig nul of een, ligte op of af nie, maar eerder, met behulp van 444 00:25:36,600 --> 00:25:37,530 rye bisse. 445 00:25:37,530 --> 00:25:40,100 En die mees algemene eenheid van meting, soos u waarskynlik weet, of ten minste 446 00:25:40,100 --> 00:25:41,810 afgelei word, is 'n greep. 447 00:25:41,810 --> 00:25:45,960 'N greep is net agt bisse, agt nulpunte of wat in 'n ry. 448 00:25:45,960 --> 00:25:48,090 Sodat ons kan begin met die spelling dinge uit. 449 00:25:48,090 --> 00:25:52,580 En so het as ons kon, waarom nie probeer om dit 'n bietjie gesamentlik hier? 450 00:25:52,580 --> 00:25:55,670 Is daar agt mense in hierdie kamer wat bereid sou wees om 451 00:25:55,670 --> 00:25:56,870 om te kom op die verhoog? 452 00:25:56,870 --> 00:26:00,880 Jy moet gemaklik wees op kamera te verskyn, maar jy het nie regtig nodig 453 00:26:00,880 --> 00:26:03,690 om anders te weet wat gaan aan net nog. 454 00:26:03,690 --> 00:26:07,240 Ek sien 'n persoon wat vrywillig hier. 455 00:26:07,240 --> 00:26:18,380 Twee, drie, vier, vyf, ses, sewe, en hoe sowat agt? 456 00:26:18,380 --> 00:26:18,920 Kom op. 457 00:26:18,920 --> 00:26:22,550 >> So jy is oor 'n greep van die mense te verteenwoordig. 458 00:26:22,550 --> 00:26:30,190 Laat my het jy al die 128s plek, jy die 64s plek, moet jy die 32s plek. 459 00:26:30,190 --> 00:26:32,720 Maar ons gaan baie vinnig om dit om te keer. 460 00:26:32,720 --> 00:26:35,170 So laat ek julle ontmoet daar. 461 00:26:35,170 --> 00:26:39,840 En jy moet al die pad oor in die 128s plek, hier baie soos die 462 00:26:39,840 --> 00:26:43,080 honderde plek of die duisende plek sou wees om verder aan die linkerkant, ons wil 463 00:26:43,080 --> 00:26:45,740 die grootste plekhouer om hier te wees aan die linkerkant as well. 464 00:26:45,740 --> 00:26:55,230 Ons het 'n 64s, 32, 16s, 8s, 4s, 2s, en 1s - 465 00:26:55,230 --> 00:26:56,030 uitstekend. 466 00:26:56,030 --> 00:26:58,100 So nou het ons - 467 00:26:58,100 --> 00:27:00,190 okay, kan jy my help. 468 00:27:00,190 --> 00:27:01,890 So nou het ons - wat is jou naam? 469 00:27:01,890 --> 00:27:02,560 Joanne: Joanne. 470 00:27:02,560 --> 00:27:06,240 SPEAKER 1: So Joanne en ek gaan nou hierdie ouens te adviseer oor hoe ons 471 00:27:06,240 --> 00:27:07,850 kan gaan oor die spelling iets uit. 472 00:27:07,850 --> 00:27:10,640 So op die rug van hulle velle papier, het hulle 'n bietjie cheat sheet 473 00:27:10,640 --> 00:27:14,720 wat hulle gaan om te sê of hulle 'n nul of 'n een is verteenwoordig. 474 00:27:14,720 --> 00:27:18,000 En waarom nie, vir eenvoud, sal ons verteenwoordig nul deur net 475 00:27:18,000 --> 00:27:19,580 daar staan ​​ongemaklik. 476 00:27:19,580 --> 00:27:20,360 Baie goed. 477 00:27:20,360 --> 00:27:24,200 Of 'n een deur die verhoging van jou hand, wat 'n een. 478 00:27:24,200 --> 00:27:28,380 En laat ons sien as ons nie kan uitspel 'n vier karakter frase hier. 479 00:27:28,380 --> 00:27:33,870 >> So gaan voort nou, vrywilligers, en uit te voer 'n ronde een deur die verhoging van jou hand 480 00:27:33,870 --> 00:27:38,940 as jy 'n een, of hou dit af as jy 'n nul. 481 00:27:38,940 --> 00:27:45,550 So nou dat ons hierdie drie hande, watter getal, almal anders, 482 00:27:45,550 --> 00:27:47,800 hulle eintlik verteenwoordig? 483 00:27:47,800 --> 00:27:48,760 Okay, 67. 484 00:27:48,760 --> 00:27:49,040 Hoekom? 485 00:27:49,040 --> 00:27:49,970 Wel, vinnige gesonde verstand gaan. 486 00:27:49,970 --> 00:27:51,910 64s plek, want dit is 'n een. 487 00:27:51,910 --> 00:27:58,870 Dit is soos een keer 64, plus 1 maal het twee, so dit is 66, plus 1 keer 1. 488 00:27:58,870 --> 00:28:00,610 Dis plus 1, so 67. 489 00:28:00,610 --> 00:28:03,740 So nou hierdie ouens is gesamentlik verteenwoordig 67, wat blykbaar 490 00:28:03,740 --> 00:28:06,240 verteenwoordig wat hier in ASCII? 491 00:28:06,240 --> 00:28:06,510 Okay, 492 00:28:06,510 --> 00:28:07,650 so 'n C. Alle regte. 493 00:28:07,650 --> 00:28:09,530 So nou, laat ons gaan twee te rond. 494 00:28:09,530 --> 00:28:12,735 Almal begin met hul hande neer, en dan die tweede ronde. 495 00:28:12,735 --> 00:28:15,260 Eintlik is daar nie veel van 'n rol hier, dink ek, maar ons sal voorgee. 496 00:28:15,260 --> 00:28:19,820 So het die tweede ronde, verhoog of verlaag jou hande. 497 00:28:19,820 --> 00:28:20,530 >> Alles reg. 498 00:28:20,530 --> 00:28:23,230 Publiek, wat is ons nou? 499 00:28:23,230 --> 00:28:24,860 Uitdrukking is 83. 500 00:28:24,860 --> 00:28:26,050 Sodat jy kan doen die wiskunde. 501 00:28:26,050 --> 00:28:29,810 Maar vir iemand wie se hand op, voeg jy in die aantal wat hulle verteenwoordig. 502 00:28:29,810 --> 00:28:31,610 So nou het ons 83. 503 00:28:31,610 --> 00:28:36,510 Kom ons brei die cheat sheet 'n bietjie, en ons het nou - 504 00:28:36,510 --> 00:28:38,890 dit kan duidelik wees waar ons hier gaan, maar 505 00:28:38,890 --> 00:28:42,220 tog, die derde ronde. 506 00:28:42,220 --> 00:28:45,870 Goed, die derde ronde is goed om te gaan daar, so die derde ronde, watter getal 507 00:28:45,870 --> 00:28:47,120 hierdie ouens nou verteenwoordig? 508 00:28:50,090 --> 00:28:56,690 Okay, ek hoor 53, wat nou verteenwoordig - interessant. 509 00:28:56,690 --> 00:29:00,770 Nou waarom hierdie soort van teen-intuïtief gevolg, reg? 510 00:29:00,770 --> 00:29:02,910 As ons wil vyf voor te stel - 511 00:29:02,910 --> 00:29:03,900 ons almal waarskynlik weet waar dit gaan - 512 00:29:03,900 --> 00:29:07,360 hoekom ek nie net verhoog die viere plek en die mense plek? 513 00:29:07,360 --> 00:29:10,060 >> Wel, ons besef dat daar 'n verskil in wese tussen hoe 514 00:29:10,060 --> 00:29:11,760 'n rekenaar interpreteer hierdie stukkies. 515 00:29:11,760 --> 00:29:15,470 As jy probeer om die nommer vyf, dan absoluut verteenwoordig, het ons net 516 00:29:15,470 --> 00:29:18,330 verhoog jou hand nommer vier en verhoog hand nommer een. 517 00:29:18,330 --> 00:29:20,010 Maar ons is nie verteenwoordigend van getalle hier. 518 00:29:20,010 --> 00:29:23,690 Die konteks hier op die verhoog is dat ons karakters is verteenwoordig of 519 00:29:23,690 --> 00:29:28,110 karakters en in hierdie konteks, die rekenaar het om te besef dat oh, dit 520 00:29:28,110 --> 00:29:30,720 patroon van die stukkies is nie 'n aantal alleen. 521 00:29:30,720 --> 00:29:33,210 Dit is eintlik wat 'n hoër vlak van begrip. 522 00:29:33,210 --> 00:29:35,010 In hierdie geval, 'n alfabetiese letter. 523 00:29:35,010 --> 00:29:38,820 So die feit dat dit nou wat die nommer vyf met die 524 00:29:38,820 --> 00:29:44,290 waarde 53 is omdat die saak in ASCII, ons esteties sien as die 525 00:29:44,290 --> 00:29:48,200 nommer vyf self het 'n patroon van stukkies - want hoekom? 526 00:29:48,200 --> 00:29:51,310 Wel, die wêreld net besluit om gebruik te maak van die laer nommers, nul, een, twee, 527 00:29:51,310 --> 00:29:54,130 drie vir wat lyk te wees redelik kriptiese dinge. 528 00:29:54,130 --> 00:29:56,830 En inderdaad, dit is die karakters wat nie op 'n sleutelbord. 529 00:29:56,830 --> 00:30:00,330 Spesiale uitdrukkings wat jy nodig het in 'n rekenaar interessante dinge te doen, maar 530 00:30:00,330 --> 00:30:02,010 die mens nooit eintlik tik hulle. 531 00:30:02,010 --> 00:30:04,220 So 53, inderdaad, verteenwoordig vyf. 532 00:30:04,220 --> 00:30:10,460 Nou net as 'n finale gesonde verstand tjek, Watter nommer moet hulle 533 00:30:10,460 --> 00:30:12,880 verteenwoordig in net 'n oomblik? 534 00:30:12,880 --> 00:30:14,060 Okay, so 48. 535 00:30:14,060 --> 00:30:15,720 En inderdaad, voort te gaan, die vierde ronde. 536 00:30:18,650 --> 00:30:22,680 16 plus 32 is inderdaad 48. 537 00:30:22,680 --> 00:30:26,510 En so 'n groot applous, as ons kon, vir ons agt vrywilligers hier. 538 00:30:31,410 --> 00:30:32,660 Baie goed gedoen. 539 00:30:35,290 --> 00:30:36,490 Enige rigting is goed. 540 00:30:36,490 --> 00:30:41,050 >> So het ons nou nie net 'n manier van dink oor hoe om data voor te stel, 541 00:30:41,050 --> 00:30:44,120 en eintlik verteenwoordig dit fisies nie, maar ook doen hoër 542 00:30:44,120 --> 00:30:45,710 vlak dinge op die top van. 543 00:30:45,710 --> 00:30:48,430 En inderdaad, dit gaan om 'n tema in rekenaarwetenskap van 544 00:30:48,430 --> 00:30:52,410 die bou van meer en meer interessante en komplekse dinge op die top van 545 00:30:52,410 --> 00:30:54,030 redelik eenvoudige idees - 546 00:30:54,030 --> 00:30:56,170 in hierdie geval, net nulle en ene. 547 00:30:56,170 --> 00:31:00,120 In terme van die rede waarom dit is nuttig, goed, selfs al in 'n kursus soos hierdie, 548 00:31:00,120 --> 00:31:03,810 ons sal fokus op fundamentele faktore en programmering, en op die oplos van 549 00:31:03,810 --> 00:31:07,050 probleme, kan jy gaan in rekenaarwetenskap in 'n aantal aanwysings. 550 00:31:07,050 --> 00:31:10,950 Hier in hierdie geval, dit is 'n kaart wat jy het op die agterste bladsy van jou 551 00:31:10,950 --> 00:31:14,580 nie-amptelike gids tot CS by Harvard, een van vandag se twee drukstukke. 552 00:31:14,580 --> 00:31:17,450 Dit dui op die baie verskillende rigtings waarin jy kan gaan na 'n 553 00:31:17,450 --> 00:31:18,400 kursus soos hierdie - 554 00:31:18,400 --> 00:31:21,530 leer oor kunsmatige intelligensie, oor die graphics, oor 555 00:31:21,530 --> 00:31:24,370 masjien leer, oor die taal self. 556 00:31:24,370 --> 00:31:26,410 Besef ook dat daar nog ander paaie. 557 00:31:26,410 --> 00:31:28,670 Daar is meer wiskundige paaie in rekenaarwetenskap. 558 00:31:28,670 --> 00:31:31,740 As jy nie eens in staat om iets te neem soos CS50 hierdie val, is daar 559 00:31:31,740 --> 00:31:35,070 inleidende kursusse in die lente, Rekenaarwetenskap 1, byvoorbeeld, is 560 00:31:35,070 --> 00:31:38,050 nog 'n op-afrit na hierdie nuwe wêreld. 561 00:31:38,050 --> 00:31:41,600 >> Nou as 'n eenkant, in die belang van die oplos van probleme met betrekking tot die kursusse, 562 00:31:41,600 --> 00:31:46,050 besef CS50 uiteengesit geruime tyd gelede probeer om een ​​van hierdie probleme op te los, 'n 563 00:31:46,050 --> 00:31:49,640 probleem bekend as my.harvard, wat baie van julle kan gebruik word om werklik 564 00:31:49,640 --> 00:31:54,040 winkel vir kursusse, maar indien nie, check 'n instrument soos hierdie, sowel as ander 565 00:31:54,040 --> 00:31:57,800 afstammelinge dat sommige van ons oudstudente en personeel geskep het. 566 00:31:57,800 --> 00:32:00,770 Maar in Harvard Kursusse, wat is 'n web-gebaseerde instrument, iets wat jy 567 00:32:00,770 --> 00:32:05,510 sal in staat wees om van die ontwerp en implementering van julle, sowel as nog 568 00:32:05,510 --> 00:32:09,210 ander dinge as goed deur die einde van die semester, besef dat dit bou 569 00:32:09,210 --> 00:32:10,590 op 'n oop datastel. 570 00:32:10,590 --> 00:32:13,490 In hierdie geval, natuurlik, katalogus, en stel studente in staat om in hierdie geval 571 00:32:13,490 --> 00:32:16,320 verken 'n taamlik ingewikkelde stel data. 572 00:32:16,320 --> 00:32:19,495 >> Ons opgegrawe gisteraand 'n paar statistieke gebaseer op die paar duisend mense wat 573 00:32:19,495 --> 00:32:21,530 is die gebruik van hierdie oor die afgelope paar dae. 574 00:32:21,530 --> 00:32:25,260 As jy is nuuskierig om te weet hoeveel kursusse jou vriende eintlik 575 00:32:25,260 --> 00:32:29,720 geneig om te shop, goed, vandag hierdie data dui daarop dat 7,6 is die gemiddelde 576 00:32:29,720 --> 00:32:32,610 aantal kursusse op iemand se inkopielys. 577 00:32:32,610 --> 00:32:36,350 En nou sal ek gee jou ook die statistiek van die meeste aantal 578 00:32:36,350 --> 00:32:39,550 kursusse op iemand se inkopielys - en ons almal weet waarskynlik 579 00:32:39,550 --> 00:32:40,800 iemand soos hierdie. 580 00:32:43,820 --> 00:32:46,740 201 is vanjaar se rekord. 581 00:32:46,740 --> 00:32:52,320 Nou sommige van ons oud-studente en personeel werklik saam te stel om 'n clip te 582 00:32:52,320 --> 00:32:55,560 verf 'n prent vir jou van wat hierdie pad van rekenaarwetenskap 583 00:32:55,560 --> 00:32:57,360 en CS50 self is. 584 00:32:57,360 --> 00:33:02,060 Laat my gaan voort en trek, te danke aan mnr. Harvahd hier, 'n video wat deur 585 00:33:02,060 --> 00:33:06,825 sommige van jou voorgangers, as ons die lig kan hou vir hierdie. 586 00:33:10,980 --> 00:35:39,126 [Musiek speel] 587 00:35:39,126 --> 00:35:42,630 >> Spreker 1: Ek het geen idee wat gaan gebeur. 588 00:35:42,630 --> 00:35:46,170 So 'n meer ernstige blik op wat voorlê. 589 00:35:46,170 --> 00:35:49,060 Dus, in terme van die verwagtinge van hierdie kursus, is julle sal na verwagting 590 00:35:49,060 --> 00:35:52,817 bywoon of kyk na die kursus se lesing, agt probleem stelle voorlê, neem twee 591 00:35:52,817 --> 00:35:54,720 vasvrae, 'n finale projek. 592 00:35:54,720 --> 00:35:58,640 In terme van grade, besef dat my kommentaar op die opening oor 593 00:35:58,640 --> 00:36:02,380 slaag misluk, iets wat ons baie ter harte neem in CS50 - daar is nie 594 00:36:02,380 --> 00:36:05,110 naastenby genoeg om te probeer om van 'n kultuur by Harvard 595 00:36:05,110 --> 00:36:07,080 iets en die gevaar van mislukking. 596 00:36:07,080 --> 00:36:09,870 Inderdaad, ons het getalle van studente, en myself in die besonder, wat 597 00:36:09,870 --> 00:36:15,310 bekommerd oor die seer jou GPA, of om 'n B in iets soos CS50, 598 00:36:15,310 --> 00:36:19,222 en die geleentheid om 'n kursus soos hierdie en ander poort kursusse te neem 599 00:36:19,222 --> 00:36:23,950 die inleidende vlak slaag / druip, is 'n baie onderbenutte geleentheid op hierdie 600 00:36:23,950 --> 00:36:24,740 kollege in die algemeen. 601 00:36:24,740 --> 00:36:29,750 En so moet asseblief weet, selfs ek wat ingeskryf is in hierdie kursus aanvanklik vir slaag / druip 602 00:36:29,750 --> 00:36:32,840 krediet alleen, en selfs al het ek skakelaar aan die einde van die dag, was dit 603 00:36:32,840 --> 00:36:36,170 die vyf eerste weke, tot die vyfde Maandag van die semester, wat 604 00:36:36,170 --> 00:36:39,700 die donker, wat my toegelaat het om werklik te voet in hierdie nuwe 605 00:36:39,700 --> 00:36:43,660 waters, en eintlik probeer om iets baie vreemd en baie ongemaklik 606 00:36:43,660 --> 00:36:45,540 vir my op die oomblik. 607 00:36:45,540 --> 00:36:49,440 >> So nou in terme van die rol wat die verskillende hoeke wat jy kan 608 00:36:49,440 --> 00:36:51,530 benader hierdie kursus dien - 609 00:36:51,530 --> 00:36:53,080 sodat lesings. Dit is aan jou. 610 00:36:53,080 --> 00:36:56,550 As jy betrokke raak met ons op hierdie plek, in die persoon inderdaad, ons weet 611 00:36:56,550 --> 00:37:00,920 statisties dat ongeveer 40% van julle sal soort van kom en gaan oor die 612 00:37:00,920 --> 00:37:05,140 loop van die semester, en 10% van julle sal ons nooit weer sien na vandag. 613 00:37:05,140 --> 00:37:07,540 En dit is heeltemal fyn, om eerlik te wees. 614 00:37:07,540 --> 00:37:10,470 Een van die kenmerkende eienskappe van CS50 is dat daar hierdie 615 00:37:10,470 --> 00:37:14,220 ontelbare bronne, waarvan sommige sal ons rammel deur in net 'n oomblik, 616 00:37:14,220 --> 00:37:17,890 met inbegrip van lesings en artikels, en die dinge wat ons genoem ipv, en kantoor 617 00:37:17,890 --> 00:37:20,850 ure, en dies meer, en dit is meer hulpbronne as die tipiese student 618 00:37:20,850 --> 00:37:24,400 moet of fisies kon neem voordeel van, maar dit is omdat 619 00:37:24,400 --> 00:37:27,510 van die uiteenlopende leerstyle dat enige student liggaam manifesteer. 620 00:37:27,510 --> 00:37:31,590 En so in lesings, die primêre rol soos ek dit sien is nie om mondelings druk 621 00:37:31,590 --> 00:37:35,360 redelik komplekse materiaal en noodwendig lewer al die 622 00:37:35,360 --> 00:37:39,040 verwikkeldheid van die grondbeginsels wat ons sal hierdie semester verken, maar 623 00:37:39,040 --> 00:37:42,430 eerder dinge soos ons het al so ver reeds doen, om te doen hierdie voorbeelde 624 00:37:42,430 --> 00:37:46,480 wat die mens op die toneel probeer om 'n prentjie te verf, en ook 625 00:37:46,480 --> 00:37:49,430 skep, durf ek sê, sommige van hierdie onvergeetlike oomblikke, so dat selfs as jy 626 00:37:49,430 --> 00:37:53,280 sukkel met sekere onderwerpe, jy het hierdie herinneringe, soos oh, selfs al 627 00:37:53,280 --> 00:37:56,740 wat was taamlik abstrak, die wiskunde, het ek verloor het met die uitvoering van 'n een, soos, 628 00:37:56,740 --> 00:38:00,260 dit werklik, aan die einde van die dag, is nie alles wat verskillend op iets wat ek 629 00:38:00,260 --> 00:38:01,060 reeds weet. 630 00:38:01,060 --> 00:38:04,560 En so het die rol dat lesings óf sal dien in persoon hier in Sanders 631 00:38:04,560 --> 00:38:09,040 of aanlyn video is regtig die verhoog om geestelik te stel vir jou elke week 632 00:38:09,040 --> 00:38:12,370 vir die verskillende konsepte en probleme wat ons sal duik in. 633 00:38:12,370 --> 00:38:16,800 >> In terme van die hoë vlak konsepte, kan die meeste van hierdie woorde vloei oor 634 00:38:16,800 --> 00:38:17,670 jou kop vir die oomblik. 635 00:38:17,670 --> 00:38:18,680 En dit is goed. 636 00:38:18,680 --> 00:38:21,210 Diegene van julle wat sal kom in die kursus meer gemaklik sal weet 637 00:38:21,210 --> 00:38:24,870 sommige van hierdie onderwerpe nie, maar tipies vir 10% van die klas waarvoor 638 00:38:24,870 --> 00:38:28,600 Hulle het baie meer agtergrond, AP rekenaarwetenskap, programmering sedert 639 00:38:28,600 --> 00:38:31,850 hulle was 12, besef dat daar geleenthede sal wees in afdelings en 640 00:38:31,850 --> 00:38:36,030 probleem stel al hoe meer diepte te gaan in verskeie onderwerpe in te vul 641 00:38:36,030 --> 00:38:39,590 watter gapings jy kan hê van jou hoërskool of vorige agtergrond. 642 00:38:39,590 --> 00:38:43,440 In terme van die tale, besef dat die taal wat ons gebruik in CS50 643 00:38:43,440 --> 00:38:45,360 grootliks irrelevant aan die einde van die dag. 644 00:38:45,360 --> 00:38:49,500 Ons gebeur hoofsaaklik gebruik 'n taal met die naam C. Teen die einde van die 645 00:38:49,500 --> 00:38:53,260 semester, stel ons web-sentriese tale, soos PHP en JavaScript. 646 00:38:53,260 --> 00:38:56,800 Maar ons en ander kan 'n kursus soos hierdie leer in die meeste enige moderne 647 00:38:56,800 --> 00:38:57,740 hoë-vlak taal - 648 00:38:57,740 --> 00:39:01,710 Python, en Ruby, en ander is baie gewild hierdie dae, want besef, 649 00:39:01,710 --> 00:39:04,350 aan die einde van die dag, is jy nie leer in hierdie C. Jy is nie 650 00:39:04,350 --> 00:39:06,310 leer PHP of JavaScript. 651 00:39:06,310 --> 00:39:10,190 Jy leer hoe om probleme op te los, of web-gebaseerde, rekenaar-gebaseerde, of 652 00:39:10,190 --> 00:39:14,810 data-georiënteerde self, die gebruik van hierdie eenvoudig as gereedskap. 653 00:39:14,810 --> 00:39:17,910 >> In terme van die logistieke, sal jy gebruik om iets wat uiteindelik genoem die 654 00:39:17,910 --> 00:39:18,810 CS50 Appliance. 655 00:39:18,810 --> 00:39:22,150 Maak nie saak of jy 'n Mac, 'n rekenaar, 'n Linux-rekenaar, of iets dergeliks, 656 00:39:22,150 --> 00:39:25,740 jy sal moet vrylik beskikbaar sagteware begin van volgende week met wat te gebruik 657 00:39:25,740 --> 00:39:28,890 die CS50 Appliance, 'n virtuele omgewing wat jy gebruik op jou 658 00:39:28,890 --> 00:39:32,720 eie rekenaar, sodat jy en al jou klasmaats 'n eenvormige Linux 659 00:39:32,720 --> 00:39:34,220 lessenaar in hierdie geval. 660 00:39:34,220 --> 00:39:37,010 Dit is die probleem stelle, al is, wat jy regtig kry jou hande 661 00:39:37,010 --> 00:39:37,910 vuil in die kursus. 662 00:39:37,910 --> 00:39:40,820 En aan die einde van die dag, dit is die probleem stelle, dink ek, wat werklik 663 00:39:40,820 --> 00:39:43,510 Definieer 'n student se ervaring in hierdie kursus. 664 00:39:43,510 --> 00:39:46,660 Besef dat baie van die probleem stelle vrygestel sal word in twee uitgawes - 665 00:39:46,660 --> 00:39:50,140 'n standaard uitgawe dat ons verwag en moedig 90% van die 666 00:39:50,140 --> 00:39:51,690 klas om te duik in. 667 00:39:51,690 --> 00:39:55,255 Maar ons het ook 'n probleem stelle in sogenaamde hacker uitgawes vrygestel, en jy 668 00:39:55,255 --> 00:39:58,110 weet dit is die hacker uitgawe, want op elke bladsy met 'n watermerk, is dit 669 00:39:58,110 --> 00:39:59,970 sê hacker uitgawe op dit. 670 00:39:59,970 --> 00:40:03,390 En dit is vir hierdie demografiese van julle wat AP rekenaarwetenskap het met 10 671 00:40:03,390 --> 00:40:06,500 jare van programmering onder jou gordel, en is op soek na daardie gapings in te vul, 672 00:40:06,500 --> 00:40:10,170 en meer formele, eerder as selfopgeleide opleiding miskien besef 673 00:40:10,170 --> 00:40:13,420 dat daar 'n baie aansienlike demografiese in die klas wat 674 00:40:13,420 --> 00:40:15,230 presies daardie selfde doel. 675 00:40:15,230 --> 00:40:16,460 Jy het vyf laat dae. 676 00:40:16,460 --> 00:40:19,380 Probleem stelle is oor die algemeen as gevolg op Donderdae, maar jy kan brei vyf 677 00:40:19,380 --> 00:40:22,900 die sperdatums wat deur gebruik te maak van hierdie dinge genoem laat dae, en ons sal ook daal 678 00:40:22,900 --> 00:40:25,520 jou laagste telling aan die einde van die semester volgens die 679 00:40:25,520 --> 00:40:27,540 besonderhede in die sillabus. 680 00:40:27,540 --> 00:40:31,630 >> Maar 'n ander bepalende eienskap van CS50 oor die jare geword het kantoor 681 00:40:31,630 --> 00:40:36,060 ure, 'n geleentheid wat jy visueel sien in foto's 'n bietjie gelede waarin 682 00:40:36,060 --> 00:40:39,090 versamel ons voorheen in die huis eetsale, voor wat in die 683 00:40:39,090 --> 00:40:42,120 kelder van die wetenskap sentrum, en hierdie jaar in Annenberg Hall, vier 684 00:40:42,120 --> 00:40:45,670 nagte 'n week 20:00-11:00, waar jy sal dit baie 685 00:40:45,670 --> 00:40:49,810 gedeelde ervaring van werk aan, sukkel om deur sekere probleme, 686 00:40:49,810 --> 00:40:52,520 maar met 'n aansienlike ondersteuning struktuur in plek. 687 00:40:52,520 --> 00:40:55,780 Trouens, die manier waarop dit sal werk, kom jy by Annenberg as jy 688 00:40:55,780 --> 00:40:56,950 'n vraag gedurende die week. 689 00:40:56,950 --> 00:41:00,190 Jy bring jou laptop, sal jy sit, gryp n paar kos, en jy teken 690 00:41:00,190 --> 00:41:04,100 in te CS50 Bespreek, 'n web-gebaseerde nut dat die doserende personeel 691 00:41:04,100 --> 00:41:07,860 ontwikkel wat jou sal toelaat om vrae te plaas en Followups sien in 'n 692 00:41:07,860 --> 00:41:12,590 tipiese gesprek forum sin, die gebruik van etikette en die soos, en motor-volledige 693 00:41:12,590 --> 00:41:13,790 om die data te soek. 694 00:41:13,790 --> 00:41:17,950 Maar jy sal ook in staat wees om, gedurende die ure van kantoorure, het jou 695 00:41:17,950 --> 00:41:20,490 vrae toegeneem tot werklike menslike wesens. 696 00:41:20,490 --> 00:41:24,000 Trouens, die doel is om uiteindelik sodat 'n mens, het ons begin om op te bou oor die 697 00:41:24,000 --> 00:41:27,740 loop van die semester 'n korpus van hopelik baie nuttige inligting, 698 00:41:27,740 --> 00:41:31,770 algemene antwoorde op algemene vrae, sodat jy jouself kan probleme op te los 699 00:41:31,770 --> 00:41:35,980 en kry unstuck so vinnig as moontlik, terwyl die onderrig 700 00:41:35,980 --> 00:41:40,320 personeel - gewoonlik 20% tot 30% van die onderrig-genote en natuurlik assistente 701 00:41:40,320 --> 00:41:41,780 op die personeel in 'n keer. 702 00:41:41,780 --> 00:41:45,150 >> Ons sal hê wat die CS50 Groeter in Annenberg genoem, en wanneer ons 703 00:41:45,150 --> 00:41:46,610 bepaal dat, jy weet wat? 704 00:41:46,610 --> 00:41:50,900 Hierdie vraag beantwoord, het ons regtig effektief aanlyn. 705 00:41:50,900 --> 00:41:51,930 Ons moet jou rekenaar om te sien. 706 00:41:51,930 --> 00:41:53,470 Ons wil om te praat met jou een op een. 707 00:41:53,470 --> 00:41:56,060 Jy regtig sukkel, en jy dus wil een om te praat op 'n 708 00:41:56,060 --> 00:41:59,160 sal jy saam met iemand, versend word na die CS50 Groeter, 'n 709 00:41:59,160 --> 00:42:02,700 onderrig mede hou, letterlik, 'n iPod wat studente se name op die een 710 00:42:02,700 --> 00:42:04,880 kant, onderrig personeel se name op die ander. 711 00:42:04,880 --> 00:42:07,900 Ons sal jou naam versamel, gevolg deur die naam van 'n doserende personeel, en jou 712 00:42:07,900 --> 00:42:12,020 rekenaar skerm sal flikkerende begin, sê asseblief gaan kyk Alice of asseblief 713 00:42:12,020 --> 00:42:14,110 gaan kyk Bob by die personeel tafel. 714 00:42:14,110 --> 00:42:17,240 En so op hierdie manier, sal ons in staat wees om dinge so doeltreffend gestuur 715 00:42:17,240 --> 00:42:22,030 moontlik, sowel as jou lei na oplossings al die meer geredelik. 716 00:42:22,030 --> 00:42:25,900 In afdelings, sal hierdie geleenthede vir meer intieme hande- 717 00:42:25,900 --> 00:42:30,080 op geleenthede met een van die onderrig-genote en 12 tot 16 of so 718 00:42:30,080 --> 00:42:34,020 jou klasmaats, wat elke week, sal ons probleme in die probleem stel 719 00:42:34,020 --> 00:42:36,750 wat 'n aantal van konseptuele vrae vra, en 'n aantal van die byt-grootte 720 00:42:36,750 --> 00:42:39,180 die programmering van die vrae wat jy op jou eie kan uitwerk, en jy kan 721 00:42:39,180 --> 00:42:42,140 werk op jou eie, maar in die konteks van artikel, sal ons werk deur 722 00:42:42,140 --> 00:42:45,230 gesamentlik 'n paar van die probleme en gaan waar die 723 00:42:45,230 --> 00:42:46,700 gesprek neem ons. 724 00:42:46,700 --> 00:42:51,340 >> Daarbenewens sal in artikel jy die geleentheid kry om voorleggings te hersien 725 00:42:51,340 --> 00:42:54,470 huiswerk wat jy gemaak het, jou klasmaats, soms anoniem, 726 00:42:54,470 --> 00:42:56,780 altyd deur 'n opt-in, as jy wil om te deel 727 00:42:56,780 --> 00:42:57,930 werk wat u gestuur. 728 00:42:57,930 --> 00:43:00,890 So sal dit werklik 'n twee-directional gesprek, en geleentheid om 729 00:43:00,890 --> 00:43:05,050 jou eie werk hersien in 'n baie meer dinamiese sin, eerder as om net 730 00:43:05,050 --> 00:43:08,620 op soek na 'n PDF of afdruk en dink oor dit vir 'n paar sekondes 731 00:43:08,620 --> 00:43:10,760 en nie noodwendig die opname van die terugvoer wat die 732 00:43:10,760 --> 00:43:12,270 doserende personeel verskaf. 733 00:43:12,270 --> 00:43:14,670 En jy sal gebruik om 'n instrument wat hier genoem CS50 Spaces. 734 00:43:14,670 --> 00:43:18,165 Vir diegene wat nie vertroud is, dit is die taal wat bekend staan ​​as C op links bo, en 735 00:43:18,165 --> 00:43:21,360 kry jy dit oor tyd te weet, maar dit is 'n web-gebaseerde nut dat ons sal 736 00:43:21,360 --> 00:43:25,350 gebruik in die artikel wat jou sal toelaat om jou en jou 15 of so klasmaats aan te teken met 737 00:43:25,350 --> 00:43:27,120 jou onderrig genoot aan die voorkant van die kamer. 738 00:43:27,120 --> 00:43:28,890 Jy sal in staat wees om kode te skryf in hierdie venster. 739 00:43:28,890 --> 00:43:31,800 Jy sal in staat wees om elektronies te gesels as jy nie eintlik by die artikel by 740 00:43:31,800 --> 00:43:35,300 daardie spesifieke oomblik, en jou onderrig mede, wanneer dit tyd is om te 741 00:43:35,300 --> 00:43:41,295 bespreek Alice of Bob se oplossing in die klas, kan die onderrig mede-kliek op 'n 742 00:43:41,295 --> 00:43:45,210 knoppie, en voila, projek op die skerm wat ook al dat die student 743 00:43:45,210 --> 00:43:47,120 werk op daardie spesifieke punt in die tyd. 744 00:43:47,120 --> 00:43:50,400 So vir diegene van julle het vriende wat in die verlede geneem CS50, besef 745 00:43:50,400 --> 00:43:53,790 dat artikels aansienlik herselflaai hierdie jaar al hoe meer 746 00:43:53,790 --> 00:43:57,700 aktief, al die meer dinamiese en regtig, 'n tweerigting-gesprek tussen 747 00:43:57,700 --> 00:44:00,300 die onderrig van personeel en studente. 748 00:44:00,300 --> 00:44:01,160 >> En deurlope. 749 00:44:01,160 --> 00:44:04,520 So vir hierdie probleem stelle, bied ons ook nie net die spesifikasie 750 00:44:04,520 --> 00:44:08,110 self, wat is oor die algemeen 'n redelik gedetailleerde PDF, maar ook die dinge bekend 751 00:44:08,110 --> 00:44:12,070 as ipv, waardeur een lid van die doserende personeel sal lei 'n weeklikse 752 00:44:12,070 --> 00:44:15,460 sessie wat letterlik loop jy deur middel van die probleem stel, gee jou 753 00:44:15,460 --> 00:44:18,700 wenke en advies, en beginpunte, en is bedoel om die baie om te vra 754 00:44:18,700 --> 00:44:21,370 wat dikwels gevra die vraag: waar moet ek begin? 755 00:44:21,370 --> 00:44:25,550 Wel, jy begin deur duik in die spec op sy eie, of deur die bywoning van 756 00:44:25,550 --> 00:44:27,230 of kyk na hierdie ipv. 757 00:44:27,230 --> 00:44:29,550 Die eerste walkthrough, in werklikheid, sal hierdie Vrydag. 758 00:44:29,550 --> 00:44:32,120 Hulle sal op Vrydae, nie soseer omdat ons dink dit sal 'n gewilde 759 00:44:32,120 --> 00:44:34,940 tyd, maar omdat ons kan dan verfilm hulle baie vroeg in die week en kry 760 00:44:34,940 --> 00:44:38,410 hulle aanlyn deur die naweek, sodat jy het baie dae as moontlik te 761 00:44:38,410 --> 00:44:40,530 werklik betrokke te raak in die inhoud as well. 762 00:44:40,530 --> 00:44:43,050 Maar meer oor wat in die lesing hierdie Vrydag. 763 00:44:43,050 --> 00:44:46,930 >> Nou in terme van die ondersteuning struktuur, die belangrikste statistiek is 764 00:44:46,930 --> 00:44:50,600 miskien die 108 onderrig genote en natuurlik assistente wat hierdie kursus 765 00:44:50,600 --> 00:44:51,870 tans het. 766 00:44:51,870 --> 00:44:54,490 Indien sommige van julle wat nie teenstrydige klasse wil aansluit 767 00:44:54,490 --> 00:44:58,900 my hier op die verhoog, dit is hierdie ouens wat werklik sal uiteindelik jou definieer 768 00:44:58,900 --> 00:45:00,150 ervaar in die kursus. 769 00:45:08,890 --> 00:45:11,870 Ek het 'n baie van onderrig genote leer my klasse in die dag, en ek 770 00:45:11,870 --> 00:45:15,650 onthou baie min van diegene, eerlik, maar tot op datum het ek nog onthou onder 771 00:45:15,650 --> 00:45:19,990 daardie paar my CS50 TF, wat werklik het my gehelp om vrae te beantwoord, wat werklik 772 00:45:19,990 --> 00:45:22,830 het my gehelp toe ek sukkel, en was regtig 'n vennoot in hierdie 773 00:45:22,830 --> 00:45:25,770 ervaring van die leer van 'n heel nuwe wêreld. 774 00:45:25,770 --> 00:45:29,100 In 'n bietjie, al hierdie ouens sal by jou aansluit buite vir die koek, wat 775 00:45:29,100 --> 00:45:32,560 is 'n tradisie van CS50, in die transept van die Memorial Hall, maar laat my 776 00:45:32,560 --> 00:45:36,980 voer jy eers weer na Nate Hardison, Rob Bowden, en Tommy 777 00:45:36,980 --> 00:45:39,370 McWilliams, hoof van vanjaar se kursus. 778 00:45:39,370 --> 00:45:41,385 As jy ouens wil saam met my hier in die middel. 779 00:45:47,380 --> 00:45:50,045 Hulle het almal bereid n paar inspirerende kommentaar. 780 00:45:53,212 --> 00:45:55,775 >> Tommy McWilliams: Ek het nie iets inspirerende voor te berei. 781 00:45:55,775 --> 00:45:57,170 Maar my naam is Tommy. 782 00:45:57,170 --> 00:45:58,370 Ek is 'n senior in Mather. 783 00:45:58,370 --> 00:46:01,620 Ek studeer rekenaar wetenskap, regtig opgewonde om te wees op die top-span en 784 00:46:01,620 --> 00:46:03,720 gaan deur die CS50 reis saam met jou. 785 00:46:03,720 --> 00:46:06,750 Wat ek regtig baie lief vir CS50 is hoe dit werklik leer om te dink oor 786 00:46:06,750 --> 00:46:08,180 probleme in 'n nuwe manier. 787 00:46:08,180 --> 00:46:11,170 Dit is regtig 'n vaardigheid wat gaan van onskatbare waarde wees, maak nie saak watter veld 788 00:46:11,170 --> 00:46:12,090 jy gaan in. 789 00:46:12,090 --> 00:46:14,800 En nie alleen dit nie, maar ons bied meer vrye candy as enige 790 00:46:14,800 --> 00:46:16,050 ander kursus op kampus. 791 00:46:22,730 --> 00:46:24,350 So ek is regtig net op soek daarna om te sien wat 792 00:46:24,350 --> 00:46:25,645 almal hierdie semester bou. 793 00:46:25,645 --> 00:46:28,860 En as iemand enige vrae of regdeur die semester, beslis 794 00:46:28,860 --> 00:46:32,976 voel vry om uit te reik na my, en ek wil gelukkig wees om te help. 795 00:46:32,976 --> 00:46:33,920 >> ROB Bowden: Hi. 796 00:46:33,920 --> 00:46:34,670 Ek is Rob Bowden. 797 00:46:34,670 --> 00:46:35,920 Ek is 'n senior in Kirkland. 798 00:46:40,030 --> 00:46:41,890 Ja, dit is reg. 799 00:46:41,890 --> 00:46:44,070 Ons is regtig opgewonde vir die komende semester. 800 00:46:44,070 --> 00:46:45,325 Ons hoop julle almal is opgewonde. 801 00:46:49,850 --> 00:46:51,580 Ek het nie verwag dat. 802 00:46:51,580 --> 00:46:52,530 Ja. 803 00:46:52,530 --> 00:46:56,030 So ons sit soveel moeite in die maak van hierdie semester werklik 'n groot, en as 804 00:46:56,030 --> 00:46:58,830 lank as wat jy bereid is om te sit in die poging, daar is so baie wat jy kan kry 805 00:46:58,830 --> 00:47:00,080 uit van hierdie kursus. 806 00:47:06,810 --> 00:47:10,470 Jy kan 'n baie pret uit van hierdie kursus. 807 00:47:10,470 --> 00:47:13,510 Ons wil nie 'n personeel van 108, as jy nie kan kry 'n baie pret uit, 808 00:47:13,510 --> 00:47:17,450 so probeer om betrokke te wees, en jy sal nie spyt wees nie. 809 00:47:24,815 --> 00:47:26,020 >> Nate HARDISON: Hi, ouens. 810 00:47:26,020 --> 00:47:26,930 Ek is Nate. 811 00:47:26,930 --> 00:47:29,700 Ek is die leermeester vir die kursus. 812 00:47:29,700 --> 00:47:31,200 Ek is regtig opgewonde om hier te wees as goed. 813 00:47:31,200 --> 00:47:33,100 Dit is my eerste jaar hier. 814 00:47:33,100 --> 00:47:36,520 Ek hoop julle almal hierdie kursus neem, en geniet dit soveel as wat ek het 815 00:47:36,520 --> 00:47:37,960 geniet dit so ver. 816 00:47:37,960 --> 00:47:41,520 En as jy ooit wil om te leer hoe om te kom tot nege of tien in binêre, kom 817 00:47:41,520 --> 00:47:43,351 praat met my. 818 00:47:43,351 --> 00:47:46,480 >> Spreker 1: So op die risiko van die verlaat van hierdie ouens hier op die verhoog 'n bietjie 819 00:47:46,480 --> 00:47:50,330 ongemaklik, laat warrel deur net 'n paar van die dinge wat wag voor ons 820 00:47:50,330 --> 00:47:51,500 verdaag vir koek. 821 00:47:51,500 --> 00:47:52,980 Wat is dit wat voorlê? 822 00:47:52,980 --> 00:47:56,410 Wel, as ons 'n vinnige blik op verlede jaar, in probleem stel nul, jou 823 00:47:56,410 --> 00:47:59,960 voorgangers duif in 'n programmeertaal genoem krap, 'n grafiese 824 00:47:59,960 --> 00:48:03,160 programmeringstaal wat jy sal gebruik in die eerste dae van die kursus, beginnende 825 00:48:03,160 --> 00:48:07,080 hierdie Vrydag, sommige begrippe onbekende vir sommige van julle leer, maar besef 826 00:48:07,080 --> 00:48:10,330 daar sal 'n gevorderde aspek van hierdie vir diegene van julle met vooraf 827 00:48:10,330 --> 00:48:11,070 agtergrond. 828 00:48:11,070 --> 00:48:14,082 >> In verlede jaar se probleem sit twee studente wat duik in die wêreld van 829 00:48:14,082 --> 00:48:17,740 kriptografie, die kuns van geheimschrift of skommeling van inligting, 830 00:48:17,740 --> 00:48:21,310 implementering van programme wat encrypted data, en in die hacker uitgawe laaste 831 00:48:21,310 --> 00:48:26,710 jaar het studente voortgaan om te kraak of te dekodeer die wagwoorde in 'n tipiese 832 00:48:26,710 --> 00:48:31,190 rekenaar se xc wagwoord lêer deur te kom met algoritmes en heuristiek vir 833 00:48:31,190 --> 00:48:34,980 brute krag uitzoeken wat iemand se wagwoord op 'n rekenaar 834 00:48:34,980 --> 00:48:35,770 stelsel was. 835 00:48:35,770 --> 00:48:39,820 Laaste jaar of twee, in die probleem stel vier het studente 836 00:48:39,820 --> 00:48:41,420 die uitvoering van die game van Sudoku. 837 00:48:41,420 --> 00:48:45,180 En die hacker uitgawe in daardie jaar het studente nie net implementeer hoe om 838 00:48:45,180 --> 00:48:49,360 speel die spel, maar eintlik 'n oplosser, waardeur die rekenaar kan u voorsien, 839 00:48:49,360 --> 00:48:52,260 die mens, met wenke, vinniger as wat jy die oplossing van 840 00:48:52,260 --> 00:48:53,550 dat die spesifieke probleem. 841 00:48:53,550 --> 00:48:57,420 >> In probleem stel vyf, ons het forensiese, die kuns van die herstel van inligting 842 00:48:57,420 --> 00:49:00,160 dit was per ongeluk of baie doelbewus 843 00:49:00,160 --> 00:49:01,450 van die rekenaar verwyder. 844 00:49:01,450 --> 00:49:04,530 Verlede jaar het die doserende personeel en ek stap om die kampus 845 00:49:04,530 --> 00:49:07,780 foto's van mense, plekke en dinge en dan per ongeluk 846 00:49:07,780 --> 00:49:10,900 geformateer die media kaart op ons kamera wat al die foto's het. 847 00:49:10,900 --> 00:49:15,920 Maar nie 'n probleem nie, ons het 'n forensiese beeld van hierdie media-kaart, oorhandig dit uit 848 00:49:15,920 --> 00:49:19,410 aan alle studente in die klas, en hulle uitgedaag om programme te kan skryf wat 849 00:49:19,410 --> 00:49:22,240 verhaal al van die JPEGS van daardie kaart. 850 00:49:22,240 --> 00:49:24,720 En dit is eintlik een van ons gunsteling probleem stelle, en ek begin het om 'n 851 00:49:24,720 --> 00:49:27,750 ou e-pos van een van jou voorgangers wat was groot pret 852 00:49:27,750 --> 00:49:29,940 Lees tyd gelede. 853 00:49:29,940 --> 00:49:31,270 >> Dit is van Matt. 854 00:49:31,270 --> 00:49:34,970 Geagte David, gister my suster per ongeluk geformateer haar kamera se SD 855 00:49:34,970 --> 00:49:37,770 kaart en 'n jaar se moeite werd om van onvergeetlike foto's verloor. 856 00:49:37,770 --> 00:49:40,830 Sy is ongelukkig nie die beste op die back-up van haar data. 857 00:49:40,830 --> 00:49:43,780 Maar hierdie situasie herinner my van p-set 5, so ek het gedink ek sou probeer om te 858 00:49:43,780 --> 00:49:47,620 hardloop haar SD kaart deur die herstel program wat ek geskryf het al die pad terug 859 00:49:47,620 --> 00:49:48,180 in Oktober. 860 00:49:48,180 --> 00:49:51,660 So na vier uur van die uitzoeken hoe om 'n rou beeld te skep van die 861 00:49:51,660 --> 00:49:53,350 geformateerde SD kaart - 862 00:49:53,350 --> 00:49:56,050 Google blyk te wees redelik nuttig in hierdie verband, totdat ek ironies genoeg 863 00:49:56,050 --> 00:50:00,140 gebeur om te kom oor jou instruksies op die Internet - 864 00:50:00,140 --> 00:50:03,080 na geknutsel rond met 'n paar van die command line argumente, het ek daarin geslaag om 865 00:50:03,080 --> 00:50:06,020 die forensiese beeld te skep, en na die installering en instel van die 866 00:50:06,020 --> 00:50:10,600 CS50 Appliance, het ek daarin geslaag om die forensiese beeld uit te voer deur my program en 867 00:50:10,600 --> 00:50:16,065 alle 1027 van my suster se foto's, skryf Matt. 868 00:50:25,210 --> 00:50:28,600 >> In verlede jaar se probleem Stel ses, ons het die studente 'n woordeboek van 869 00:50:28,600 --> 00:50:33,350 150.000 Engelse woorde en hulle uitgedaag om te skryf van 'n speltoetser wat 870 00:50:33,350 --> 00:50:36,870 beantwoord navrae van die vorm, is hierdie woord korrek gespel of verkeerd 871 00:50:36,870 --> 00:50:38,150 so vinnig as moontlik. 872 00:50:38,150 --> 00:50:41,900 En op opt-in die basis was studente wat toegelaat word om dan daag klasmaats 873 00:50:41,900 --> 00:50:45,220 deur die plekke van hulle resultate, die hoeveelheid geheue wat hulle gebruik, die aantal 874 00:50:45,220 --> 00:50:49,190 CPU siklusse of sekondes wat hulle gebruik het, sodat studente is dan posisie op 875 00:50:49,190 --> 00:50:53,010 die kursus se webblad - weer suiwer opsioneel aspek van dit, maar groot pret 876 00:50:53,010 --> 00:50:56,970 dat baie dikwels 'n student sou kry om posisie nommer 10 of so op die groot 877 00:50:56,970 --> 00:51:00,370 raad, op die webwerf, gaan af na ete en dan terug te kom, en besef 878 00:51:00,370 --> 00:51:04,340 sy kamermaat het net 'n rand in die voorkant van hom of haar op die groot raad, 879 00:51:04,340 --> 00:51:07,620 daardeur giet nog twee of drie uur net op een 880 00:51:07,620 --> 00:51:09,300 sy of haar kamermaat. 881 00:51:09,300 --> 00:51:11,730 >> So ons sien uit na iets soortgelyks hierdie jaar so goed. 882 00:51:11,730 --> 00:51:15,400 In probleem stel 7 het ons stuur in die rigting van die web programmering, eintlik 883 00:51:15,400 --> 00:51:19,320 die oplossing van probleme in die steeds meer algemeen omgewing 884 00:51:19,320 --> 00:51:20,300 van 'n webblaaier. 885 00:51:20,300 --> 00:51:23,670 Weet dan decreasingly laai ons sagteware op die Mac en PC, maar 886 00:51:23,670 --> 00:51:25,790 steeds, ons doen dit alles in die web. 887 00:51:25,790 --> 00:51:30,140 >> En inderdaad, verlede jaar, ongeveer 88% van die studente se finale projekte in die kursus 888 00:51:30,140 --> 00:51:31,790 web-gebaseerde. 889 00:51:31,790 --> 00:51:34,670 En daardie is ook die vaardighede wat jy kan aflei uit hierdie klas deur 890 00:51:34,670 --> 00:51:38,410 kursus se einde, want wat wag op die kursus se einde, is die CS50 Fair, 891 00:51:38,410 --> 00:51:42,100 uitstalling wat is gebaseer op die idee van 'n wetenskap-beurs, maar in hierdie weergawe van die 892 00:51:42,100 --> 00:51:45,370 'n regverdige doen alle studente in die klas bring hul skootrekenaars, en hul 893 00:51:45,370 --> 00:51:49,720 vriende en familie, en om ander te Northwest Wetenskap, 'n groot gebou op 894 00:51:49,720 --> 00:51:53,420 kampus, die opstel van hul laptop, kry 'n paar kos, kry 'n paar springmielies en drink, en 895 00:51:53,420 --> 00:51:57,180 toon dan hul finale projekte vir almal in die bywoning, wat verlede jaar 896 00:51:57,180 --> 00:52:01,510 2500 deelnemers van regoor die kampus, en uitdrukkings soos gemonster 897 00:52:01,510 --> 00:52:05,510 hierdie, en soos dit nie ongewoon was nie op die beurs. 898 00:52:05,510 --> 00:52:09,660 >> Wat gelei het tot die skou is die CS50 Hackathon, 'n geleentheid om te hop op 'n 899 00:52:09,660 --> 00:52:13,610 Harvard shuttle, kop af in die straat te Microsoft op 20:00, en nie huis toe gaan 900 00:52:13,610 --> 00:52:14,810 tot 07:00. 901 00:52:14,810 --> 00:52:19,040 Ons dien die eerste dinee op 20:00, tweede ete by 01:00, en vir diegene wat nog 902 00:52:19,040 --> 00:52:22,540 staan ​​om 5:00 am behandel ons pannekoek by IHOP. 903 00:52:22,540 --> 00:52:26,580 En die Hackathon 'n geleentheid, soos hier, om te duik in jou 904 00:52:26,580 --> 00:52:30,470 finale projekte, of op jou eie of saam met vriende in 'n 905 00:52:30,470 --> 00:52:33,770 samewerkende omgewing, waar die hele doserende personeel is goed werk 906 00:52:33,770 --> 00:52:37,560 in die nag met 'n ruim aanbod van Hong Kong Chinese kos. 907 00:52:37,560 --> 00:52:43,070 Op 05:00 sal sodanige beelde as dit redelik algemeen is hierdie jaar so goed. 908 00:52:43,070 --> 00:52:48,170 >> Dus as ons in 'n oomblik verdaag vir die koek, hou in gedagte dat 76% van die 909 00:52:48,170 --> 00:52:51,720 mense in hierdie kamer het geen vorige ervaring, en soos per die sillabus, 910 00:52:51,720 --> 00:52:55,300 wat uiteindelik sake in hierdie kursus is nie soseer waar jy opeindig nie 911 00:52:55,300 --> 00:52:59,540 relatief tot jou klasmaats, maar waar jy eindig, in week 11, relatief tot 912 00:52:59,540 --> 00:53:01,540 jouself in week 0. 913 00:53:01,540 --> 00:53:03,690 Dit is CS50.