1 00:00:00,000 --> 00:00:12,640 2 00:00:12,640 --> 00:00:15,410 >> SPEAKER 1: Hej verden, dette er CS50 Live. 3 00:00:15,410 --> 00:00:18,450 Vi vil gerne starte denne gang med en råbe ud til vores venner i St. Louis, 4 00:00:18,450 --> 00:00:21,450 Missouri, hvor en gruppe af frivillige kendt som LaunchCode har været 5 00:00:21,450 --> 00:00:25,920 samle CS50x studerende i For at tage klassen kollektivt. 6 00:00:25,920 --> 00:00:29,250 Og målet i sidste ende er, at efter semestrets afslutning, er at parre dem 7 00:00:29,250 --> 00:00:31,120 studerende med en lokal højteknologiske arbejdspladser. 8 00:00:31,120 --> 00:00:34,030 >> Nu oprindeligt LaunchCode folk, og de involverede studerende skulle 9 00:00:34,030 --> 00:00:37,550 at indkalde til i et lokalt bibliotek, hvor et par hundrede mennesker havde RSVPed. 10 00:00:37,550 --> 00:00:40,950 Men så mange mennesker endte RSVPing i enden for dette initiativ, at de 11 00:00:40,950 --> 00:00:43,930 endte med at flytte til en lokal opera hus, afbildet her. 12 00:00:43,930 --> 00:00:44,770 >> Nu er det lidt lille. 13 00:00:44,770 --> 00:00:48,320 Men hvis man ser nogensinde så tæt du kan se op på scenen som første dias 14 00:00:48,320 --> 00:00:53,240 fra uge 0, der taler til det faktum, at 73% af dine klassekammerater, måske 15 00:00:53,240 --> 00:00:55,650 inklusive dig, har ingen forudgående erfaring. 16 00:00:55,650 --> 00:00:58,420 Og faktisk det var meget meget tilfældet i denne opera hus her. 17 00:00:58,420 --> 00:01:01,170 Så vores hej'er til folket på LaunchCode og 18 00:01:01,170 --> 00:01:02,180 borgere i St. Louis. 19 00:01:02,180 --> 00:01:05,150 Hvis du selv bor lokale til Saint Louis, behøver du velkommen til at tjekke dem ud 20 00:01:05,150 --> 00:01:07,520 på launchcodestl.com. 21 00:01:07,520 --> 00:01:12,450 Eller måske tænde din lokale nyheder kanal, som vi vil gøre her for dig. 22 00:01:12,450 --> 00:01:15,790 >> SPEAKER 2: En fantastisk mulighed for enhver Saint Louisan søger at lande en 23 00:01:15,790 --> 00:01:18,030 af de højteknologiske, højt betalt job. 24 00:01:18,030 --> 00:01:21,440 For første gang nogensinde, den samme computer programmering klasse, der er 25 00:01:21,440 --> 00:01:26,910 undervist online ved Harvard og MIT er der tilbydes i person på St. 26 00:01:26,910 --> 00:01:28,070 Louis Public Library. 27 00:01:28,070 --> 00:01:32,670 >> Det er alt sammen takket være organisationen LaunchCode, der forsøger at løse 28 00:01:32,670 --> 00:01:34,900 tech talent hul her i St. Louis. 29 00:01:34,900 --> 00:01:39,420 Nu kan alle, der passerer denne fire måneder Kurset er tilbøjelige til at få en betalt 30 00:01:39,420 --> 00:01:43,260 læreplads, der kunne blive til et edb-programmering job. 31 00:01:43,260 --> 00:01:47,010 LaunchCode medstifter siger, hvis du lære denne færdighed sæt, i dagens 32 00:01:47,010 --> 00:01:52,100 marked, er du næsten garanteret at jord et seks tal job i et par 33 00:01:52,100 --> 00:01:55,500 år, med en startløn omkring $ 50.000. 34 00:01:55,500 --> 00:01:56,580 Det lyder ret godt. 35 00:01:56,580 --> 00:02:00,930 Så hvad slags person bør overveje at tage denne klasse? 36 00:02:00,930 --> 00:02:03,890 >> JIM McKelvey: Du er nødt til være temmelig smart, OK? 37 00:02:03,890 --> 00:02:06,690 Du er nødt til at være ekstremt hårdt arbejde. 38 00:02:06,690 --> 00:02:08,660 Men du behøver ikke at have gået til de bedste skoler. 39 00:02:08,660 --> 00:02:09,930 Du behøver ikke at være stor på matematik. 40 00:02:09,930 --> 00:02:13,380 Du behøver ikke at have nogle af de ting, som du måske tror, ​​du har brug for. 41 00:02:13,380 --> 00:02:16,360 Og dette kursus vil fortælle dig, hvis du har fået det. 42 00:02:16,360 --> 00:02:18,490 >> SPEAKER 2: Wow, nu, hvis du er gad vide om der er nok 43 00:02:18,490 --> 00:02:23,270 programmering ledige job i St. Louis, er svaret et stort ja. 44 00:02:23,270 --> 00:02:26,990 McKelvey siger, at der er mere end 1.000 åbne positioner og bare ikke 45 00:02:26,990 --> 00:02:29,250 nok lokale folk, der forsøger at fylde dem. 46 00:02:29,250 --> 00:02:33,250 Nu er denne klasse starter Mandag kl 5:30 på Central Branch ved St. Louis 47 00:02:33,250 --> 00:02:34,530 Public Library. 48 00:02:34,530 --> 00:02:37,770 Hvis du er interesseret, og jeg er sikker på nogle af jer vil være de oplysninger, 49 00:02:37,770 --> 00:02:39,020 at ksdk.com. 50 00:02:39,020 --> 00:02:41,582 51 00:02:41,582 --> 00:02:43,960 >> SPEAKER 1: Nogle af dine klassekammerater vil nu gerne sige hej. 52 00:02:43,960 --> 00:02:48,270 Op først er Suzanne, fra Winthrop, Massachusetts, en nærliggende by lige ned 53 00:02:48,270 --> 00:02:50,022 vejen herfra. 54 00:02:50,022 --> 00:02:52,290 >> SUZANNE: Hej verden, jeg er Suzanne. 55 00:02:52,290 --> 00:02:56,790 Jeg bor i Winthrop, Massachusetts, USA på vandet. 56 00:02:56,790 --> 00:02:59,630 Og jeg er 63 år. 57 00:02:59,630 --> 00:03:01,480 Jeg er en pensioneret sygeplejerske. 58 00:03:01,480 --> 00:03:05,860 Jeg har fire børn og to børnebørn. 59 00:03:05,860 --> 00:03:09,220 >> Jeg er også en teaterdirektør og skuespiller. 60 00:03:09,220 --> 00:03:13,550 Og engang i år vil jeg blive opført i Discovery Channels "The 61 00:03:13,550 --> 00:03:17,840 Boston Strangler. "Jeg spille Zenovia Clegg. 62 00:03:17,840 --> 00:03:22,445 >> Jeg tager CS50 fordi jeg elsker EDX. 63 00:03:22,445 --> 00:03:24,595 Jeg har taget to tidligere kurser. 64 00:03:24,595 --> 00:03:32,850 Jeg har taget retfærdighed og folkesundhed og Environmental Change. 65 00:03:32,850 --> 00:03:34,030 Og jeg elskede dem. 66 00:03:34,030 --> 00:03:37,360 >> Også fordi datalogi skræmmer mig lidt. 67 00:03:37,360 --> 00:03:43,940 Og i min aldersgruppe vi opmuntret til at gøre ting, der skræmmer os. 68 00:03:43,940 --> 00:03:48,720 Så jeg tager CS50 og ser fremsende til den. 69 00:03:48,720 --> 00:03:52,405 Så mit navn er Suzanne, og dette er CS50. 70 00:03:52,405 --> 00:03:55,020 71 00:03:55,020 --> 00:03:58,460 >> SPEAKER 1: Op næste er flere hej'er fra nogle af dine klassekammerater i Brewer 72 00:03:58,460 --> 00:04:00,160 High School i Maine. 73 00:04:00,160 --> 00:04:02,010 Lad os tage et lyt. 74 00:04:02,010 --> 00:04:04,640 >> BREWER High School studerende: Hej verden, vi er Brewer High. 75 00:04:04,640 --> 00:04:05,945 >> PATRICK: Hej, jeg er Patrick. 76 00:04:05,945 --> 00:04:07,490 >> ADAM: Jeg er Adam. 77 00:04:07,490 --> 00:04:09,020 >> NIKOLAI: Jeg er Nikolai. 78 00:04:09,020 --> 00:04:11,286 >> BEN: Jeg er Ben. 79 00:04:11,286 --> 00:04:12,660 >> DYLAN: Jeg er Dylan. 80 00:04:12,660 --> 00:04:13,930 >> NICK: Jeg er Nick. 81 00:04:13,930 --> 00:04:15,085 >> CHRISTINA: Jeg er Christina. 82 00:04:15,085 --> 00:04:16,069 >> JONATHAN: Jeg er Jonathan. 83 00:04:16,069 --> 00:04:17,000 >> CHARLES: Jeg er Charles. 84 00:04:17,000 --> 00:04:20,890 >> BREWER High School studerende: Og det er CS50. 85 00:04:20,890 --> 00:04:24,360 >> SPEAKER 1: Hej Brewer High School - og nu Stuart og en af ​​hans venner, 86 00:04:24,360 --> 00:04:26,320 fra den nærliggende stat Virginia. 87 00:04:26,320 --> 00:04:30,300 88 00:04:30,300 --> 00:04:33,170 >> STUART: Hej verden, mit navn er Stuart. 89 00:04:33,170 --> 00:04:35,285 Og jeg er fra Virginia. 90 00:04:35,285 --> 00:04:38,230 Og dette er min første gang gør en Harvard kursus eller nogen 91 00:04:38,230 --> 00:04:41,670 online kursus som dette. 92 00:04:41,670 --> 00:04:44,980 Jeg kan virkelig godt lide computere og ønsker at lære mere om dem. 93 00:04:44,980 --> 00:04:47,900 Jeg Stuart, og dette er CS50. 94 00:04:47,900 --> 00:04:49,060 >> SPEAKER 1: Hej Stuart. 95 00:04:49,060 --> 00:04:51,900 Så vi har også været at holde øje med Twitter, hvor en af ​​dine klassekammerater, 96 00:04:51,900 --> 00:04:55,020 Umberto fra Mexico, havde dette at kvidre nylig. 97 00:04:55,020 --> 00:04:57,270 Hey, @ davidjmalan, lad mig stille dig et spørgsmål - 98 00:04:57,270 --> 00:04:59,210 Mark Zuckerberg tog CS50? 99 00:04:59,210 --> 00:05:03,450 >> Så desværre, Mark faktisk ikke tage CS50 ved tilmelding som en freshman her 100 00:05:03,450 --> 00:05:04,050 på Harvard. 101 00:05:04,050 --> 00:05:07,570 Snarere han sprang videre til en mere fremskredne klasse kaldet CS51, som 102 00:05:07,570 --> 00:05:10,910 dækker datalogiske emner som indvinding, og programmering begreber 103 00:05:10,910 --> 00:05:13,900 ligesom funktionel programmering en objektorienteret programmering. 104 00:05:13,900 --> 00:05:17,400 >> Nu på det tidspunkt, den blev undervist af en professor ved navn Henry Leitner, der 105 00:05:17,400 --> 00:05:19,890 faktisk underviste kurset da jeg tog det så godt. 106 00:05:19,890 --> 00:05:23,150 Vores egen gurus Rob Bowden, for nylig satte sig ned med professor 107 00:05:23,150 --> 00:05:28,060 Latiner at tale om et par af hans tidligere studerende udover mig. 108 00:05:28,060 --> 00:05:31,620 >> ROB BOWDEN: Hej, jeg er Rob Bowden, og jeg er her med Dr. Henry Leitner, der er 109 00:05:31,620 --> 00:05:35,270 Prodekan for Information Teknologi på DCE, og lektor 110 00:05:35,270 --> 00:05:36,660 i datalogi. 111 00:05:36,660 --> 00:05:41,560 >> Okay, så jeg har hørt, at du har haft nogle berømtheder passerer 112 00:05:41,560 --> 00:05:43,360 gennem nogle af dine kurser. 113 00:05:43,360 --> 00:05:45,540 >> HENRY LEITNER: Okay, så jeg gerne fortælle mine elever, jeg har været på Harvard 114 00:05:45,540 --> 00:05:46,240 lang tid. 115 00:05:46,240 --> 00:05:48,480 Og når de siger - godt, hvordan lang tid har du været her? - 116 00:05:48,480 --> 00:05:53,930 mit svar er jeg gammel nok til at have arbejdet på hjemmeopgaver med 117 00:05:53,930 --> 00:05:56,740 at milliardæren frafald Bill Gates. 118 00:05:56,740 --> 00:05:59,650 Men jeg er også ung nok til at have faktisk lært, at milliardæren 119 00:05:59,650 --> 00:06:02,960 frafald Mark Zuckerberg, af Facebook berømmelse. 120 00:06:02,960 --> 00:06:08,600 >> Så mit møde med Bill Gates går langt tilbage til begyndelsen i 1974 121 00:06:08,600 --> 00:06:11,980 1975 skoleår. 122 00:06:11,980 --> 00:06:15,810 Historien er sandt, at Bill Gates ' ven Paul Allen gik til Kiosk 123 00:06:15,810 --> 00:06:18,340 i Harvard Square og kom over i Populære Electronics Magazine, som 124 00:06:18,340 --> 00:06:21,170 blev featuring en historie om verdens første personlige computer, som 125 00:06:21,170 --> 00:06:24,070 du havde faktisk bygge - samle fra dele - Altair. 126 00:06:24,070 --> 00:06:26,060 Han kom løbende tilbage til Bill Gates 'sovesal. 127 00:06:26,060 --> 00:06:28,640 Og de fik alle glade for, at den personlig computer revolution var omkring 128 00:06:28,640 --> 00:06:29,760 at starte uden dem. 129 00:06:29,760 --> 00:06:31,340 >> Så på det tidspunkt, Gates og jeg - 130 00:06:31,340 --> 00:06:32,270 vi arbejdede på problemer. 131 00:06:32,270 --> 00:06:35,635 Det er fordi vi var begge tilmeldt en teori om beregning naturligvis en 132 00:06:35,635 --> 00:06:37,690 meget Mathy graduate niveau kursus. 133 00:06:37,690 --> 00:06:40,690 Og på den første dag i klassen professor fortalte alle i lokalet til 134 00:06:40,690 --> 00:06:43,910 henvende sig til deres nabo og introducere selv, og samarbejder med 135 00:06:43,910 --> 00:06:45,590 at personen på problemet sæt. 136 00:06:45,590 --> 00:06:46,440 Så Gates og jeg - 137 00:06:46,440 --> 00:06:47,810 Jeg vidste ikke, hvem han var på det tidspunkt. 138 00:06:47,810 --> 00:06:50,390 Han var måske seksten eller sytten, men han lignede han var 139 00:06:50,390 --> 00:06:51,840 tolv, for at være ærlig. 140 00:06:51,840 --> 00:06:54,010 >> Og vi begyndte at arbejde på HomeWorks sammen. 141 00:06:54,010 --> 00:06:57,710 Men så da Altair kom ud i Populære Electronics Magazine, fanget 142 00:06:57,710 --> 00:06:58,760 hans opmærksomhed. 143 00:06:58,760 --> 00:06:59,890 Han forsvandt bare. 144 00:06:59,890 --> 00:07:01,070 Han stoppede med lektier. 145 00:07:01,070 --> 00:07:02,300 Jeg fik vred på ham. 146 00:07:02,300 --> 00:07:06,750 >> Og jeg vil bare se ham i det ene computing lab vi havde på Harvard for 147 00:07:06,750 --> 00:07:09,340 forskning på det tidspunkt, som blev kaldt Aiken Computation Lab. 148 00:07:09,340 --> 00:07:10,980 En PDP-10 blev anvendt. 149 00:07:10,980 --> 00:07:14,530 Og han var hacking væk dag og nat, dybest set bare bor der. 150 00:07:14,530 --> 00:07:19,040 >> Da jeg fandt ud af senere, var han faktisk designe software til den oprindelige 151 00:07:19,040 --> 00:07:22,180 Altair, et operativsystem, sammen med programmeringssproget BASIC 152 00:07:22,180 --> 00:07:23,630 der skulle til at køre. 153 00:07:23,630 --> 00:07:28,330 Tanken er, at til en personlig computer industrien til at tage fra dig 154 00:07:28,330 --> 00:07:29,630 skulle være i stand til at skrive software. 155 00:07:29,630 --> 00:07:32,540 Og skrive programmer og maskine sprog ved at vende vippekontakter 156 00:07:32,540 --> 00:07:35,580 var ikke til at gøre det, undtagen ud hobbyentusiaster. 157 00:07:35,580 --> 00:07:39,965 >> Hvad var interessant på det tidspunkt var den Altair var så populær du ikke kunne 158 00:07:39,965 --> 00:07:41,690 selv købe en, i hvert fald efter det blev annonceret. 159 00:07:41,690 --> 00:07:46,840 Så Bill Gates, forbavsende, med sin ven Paul Allen, skrev et program på 160 00:07:46,840 --> 00:07:51,010 PDP-10, som simulerede adfærd af denne Altair, fordi de specs var 161 00:07:51,010 --> 00:07:53,750 fuldt skrevet op i det populære Elektronik Magazine. 162 00:07:53,750 --> 00:07:56,870 >> Så, som jeg sagde, jeg fik vred på ham, jeg ikke er opmærksomme. 163 00:07:56,870 --> 00:07:59,840 Han forsvandt, gik til Albuquerque, New Mexico, for at vise 164 00:07:59,840 --> 00:08:02,220 hvad han havde gjort til folk der havde bygget Altair. 165 00:08:02,220 --> 00:08:07,580 Og på de tidspunkter, der forlader universitetet - forlader Harvard - at starte en virksomhed 166 00:08:07,580 --> 00:08:08,720 var uhørt. 167 00:08:08,720 --> 00:08:11,320 Og så når jeg fandt ud af, det er hvad der var sket, jeg blev gjort. 168 00:08:11,320 --> 00:08:13,770 Fordi jeg holdt tænker - min forældre ville have dræbt mig, hvis jeg havde 169 00:08:13,770 --> 00:08:17,020 droppede ud af skolen bare for at gå ud og starte en virksomhed. 170 00:08:17,020 --> 00:08:18,390 >> Og så selvfølgelig er der Mark Zuckerberg. 171 00:08:18,390 --> 00:08:23,530 Jeg lærte ham at kende, dels fordi han kom efter endt CS51. 172 00:08:23,530 --> 00:08:25,690 Jeg gætter det var efter [uhørligt] havde gennemført kurset. 173 00:08:25,690 --> 00:08:30,000 Han ønskede at arbejde som et pædagogisk stipendiat i det efterfølgende år for CS51. 174 00:08:30,000 --> 00:08:31,370 Og han kom til interviewet. 175 00:08:31,370 --> 00:08:35,690 >> Og sandheden af ​​sagen er hans præstation var lidt svag sammenlignet 176 00:08:35,690 --> 00:08:36,919 til de andre folk, der havde interviewet. 177 00:08:36,919 --> 00:08:38,450 Det var faktisk den svageste af flok. 178 00:08:38,450 --> 00:08:42,230 Så jeg ikke føler som om jeg kunne med god samvittighed ansætte ham. 179 00:08:42,230 --> 00:08:45,746 >> Plus, han var i en smule problemer med bestyrelsen. 180 00:08:45,746 --> 00:08:48,100 Hvis du har set filmen, The Social Network. 181 00:08:48,100 --> 00:08:50,430 OK, så meget af det er faktuelt sande. 182 00:08:50,430 --> 00:08:55,040 På det tidspunkt havde han netop færdig med at gøre Den Facemash, ikke Facebook, men den 183 00:08:55,040 --> 00:08:56,020 Facemash app. 184 00:08:56,020 --> 00:09:01,080 Og han havde bragt ned Harvard netværk uforvarende. 185 00:09:01,080 --> 00:09:05,280 Og plus han havde stjålet ansigter Harvard College bachelor kvinder til 186 00:09:05,280 --> 00:09:05,890 gøre dette projekt. 187 00:09:05,890 --> 00:09:07,290 >> Så han blev bragt til bestyrelse. 188 00:09:07,290 --> 00:09:08,570 Han blev slået på hænderne. 189 00:09:08,570 --> 00:09:09,760 Så han var i nogle problemer. 190 00:09:09,760 --> 00:09:12,290 Og jeg tror, ​​at han var en slags desorienteret af denne. 191 00:09:12,290 --> 00:09:15,890 >> Så jeg vil gerne fortælle folk, at jeg tager en lille, lille smule kredit for 192 00:09:15,890 --> 00:09:17,710 succes Facebook, fordi - 193 00:09:17,710 --> 00:09:21,970 A, mindst en halv eller 1% af Zuckerberg programmering dygtighed kom 194 00:09:21,970 --> 00:09:23,125 fra mit kursus - 195 00:09:23,125 --> 00:09:24,140 hvad han lærte der. 196 00:09:24,140 --> 00:09:26,880 Og for det andet havde jeg hyrede ham som en undervisning fyr, ville han ikke have haft 197 00:09:26,880 --> 00:09:30,090 tid til at udfylde Facebook på det punkt, at han gjorde. 198 00:09:30,090 --> 00:09:32,670 >> Så det har været en masse sjov undervisning datalogi på Harvard. 199 00:09:32,670 --> 00:09:36,480 Jeg mener der er bare fantastiske mennesker der går på at gøre store ting. 200 00:09:36,480 --> 00:09:40,480 Jeg kunne gå på og fortælle dig om andre folk, men jeg tror, ​​at vores tid er op. 201 00:09:40,480 --> 00:09:43,310 >> ROB BOWDEN: Så det lyder som Bill Gates skylder dig nogle penge for at forårsage 202 00:09:43,310 --> 00:09:45,260 alle, at stress i teori beregning. 203 00:09:45,260 --> 00:09:48,120 Og Mark Zuckerberg skylder dig nogle penge for at lade ham starte Facebook. 204 00:09:48,120 --> 00:09:50,370 >> HENRY LEITNER: Det er en dejlig måde at tænke på, helt sikkert. 205 00:09:50,370 --> 00:09:52,180 >> ROB BOWDEN: Okay, godt tak. 206 00:09:52,180 --> 00:09:53,575 Det har været fantastisk. 207 00:09:53,575 --> 00:09:54,825 Tak for at have mig. 208 00:09:54,825 --> 00:09:57,150 209 00:09:57,150 --> 00:09:58,400 Ryst hånden måske. 210 00:09:58,400 --> 00:10:01,606 211 00:10:01,606 --> 00:10:02,880 Skal jeg give ham hånden? 212 00:10:02,880 --> 00:10:04,560 Skal vi gentage den slutning? 213 00:10:04,560 --> 00:10:05,810 Hvordan skal vi gøre det slutning? 214 00:10:05,810 --> 00:10:11,430 215 00:10:11,430 --> 00:10:13,290 >> SPEAKER 1: Next, et spørgsmål fra [? Synd,?] 216 00:10:13,290 --> 00:10:16,110 en af ​​dine klassekammerater i Vietnam der havde dette at sige. 217 00:10:16,110 --> 00:10:18,430 Hvordan kontakter jeg en anden mennesker i mit land? 218 00:10:18,430 --> 00:10:19,565 Nå det er også et godt spørgsmål. 219 00:10:19,565 --> 00:10:24,703 Og hvis du logger ind i EDX interface, for CS50x vigtigste info side, vil du se 220 00:10:24,703 --> 00:10:29,520 et link til CS50 Meetups, hvilket vil medføre dig at meetup.com/meet50, som 221 00:10:29,520 --> 00:10:32,650 er et værktøj, som vi har sat op til at tillade dig til at finde folk, der gælder for 222 00:10:32,650 --> 00:10:35,820 dig, så du kan faktisk mødes, ikke kun næsten med klassekammerater 223 00:10:35,820 --> 00:10:38,020 dette år, men i person, som godt. 224 00:10:38,020 --> 00:10:41,160 >> I virkeligheden, når du besøger denne webadresse, vil du se et kort, der ligner dette, 225 00:10:41,160 --> 00:10:44,530 hvor hver markør betegner en eller flere af dine klassekammerater i den del 226 00:10:44,530 --> 00:10:45,350 af verden. 227 00:10:45,350 --> 00:10:49,150 Faktisk lige nu, nogle af de mest populære samfund af CS50x studerende 228 00:10:49,150 --> 00:10:55,030 er i New York, London, Delhi, Kairo, og San Francisco, og over 199 andre 229 00:10:55,030 --> 00:10:56,000 byer. 230 00:10:56,000 --> 00:10:59,150 Så hvis de er interesseret i at møde op med nogle klassekammerater lokalt, behøver hovedet til 231 00:10:59,150 --> 00:11:02,050 mødes meetup.com/meet50. 232 00:11:02,050 --> 00:11:06,150 >> Et spørgsmål nu fra Scott i New York, der havde dette spørgsmål til at skrive - 233 00:11:06,150 --> 00:11:09,350 mest hver program bruger strygere, så hvorfor var printf medtaget i 234 00:11:09,350 --> 00:11:11,910 standard I / O-bibliotek, og GetString var ikke? 235 00:11:11,910 --> 00:11:14,520 Er getString en funktion defineret i CS50 biblioteket? 236 00:11:14,520 --> 00:11:18,090 >> Så ja ja, getString er faktisk defineret i CS50 bibliotek. 237 00:11:18,090 --> 00:11:20,760 Og printf, i mellemtiden, er i standard I / O-bibliotek. 238 00:11:20,760 --> 00:11:24,630 Nu tilbage i dag, hvor C var opfundet, helt sikkert, det var vigtigt, en 239 00:11:24,630 --> 00:11:28,750 grundlæggende funktionalitet til kode ligesom printf til rent faktisk at udskrive 240 00:11:28,750 --> 00:11:29,545 noget til skærmen. 241 00:11:29,545 --> 00:11:33,280 Dette var så kerne til at skrive software, især programmer, der kører inde 242 00:11:33,280 --> 00:11:36,630 af det sorte og hvide terminal vindue, at det gav mening for printf 243 00:11:36,630 --> 00:11:39,820 skal integreres i sprogets biblioteker selv. 244 00:11:39,820 --> 00:11:43,160 >> Nu behøver du ikke getString for at få strengene fra brugerne. 245 00:11:43,160 --> 00:11:45,350 Snarere kan du bruge funktioner ligesom scanf. 246 00:11:45,350 --> 00:11:48,680 I virkeligheden, hvis uvant, tage et kig på nogle af uge 5 er walkthroughs, hvor vi 247 00:11:48,680 --> 00:11:51,660 gå gennem processen med at bruge denne funktion scanf at få 248 00:11:51,660 --> 00:11:52,890 input fra brugeren. 249 00:11:52,890 --> 00:11:56,310 Problemet er, at funktioner som scanf, som er indbygget i C 250 00:11:56,310 --> 00:11:59,140 standard biblioteker, er, at de ikke gør nogen fejlkontrol. 251 00:11:59,140 --> 00:12:01,540 Og de faktisk ikke tildele nogen hukommelse for strygere. 252 00:12:01,540 --> 00:12:03,340 >> Så et par dårlige ting kan ske - 253 00:12:03,340 --> 00:12:06,970 1, kan du overskrider grænserne for dit array, i hvilket tilfælde i bedste fald, 254 00:12:06,970 --> 00:12:07,960 Deres program kan gå ned. 255 00:12:07,960 --> 00:12:11,400 Men i værste fald kan en modstander være i stand til at overtage dit program. 256 00:12:11,400 --> 00:12:14,020 Og du har brug for at styre alle af denne hukommelse selv. 257 00:12:14,020 --> 00:12:16,300 >> Så getString tager væk et masse af denne kompleksitet. 258 00:12:16,300 --> 00:12:18,090 Så vi tildele hukommelse til dig. 259 00:12:18,090 --> 00:12:20,800 Vi sørger for at du ikke går ud over grænserne for et array. 260 00:12:20,800 --> 00:12:23,940 Og vi vender tilbage null hvis noget faktisk går galt. 261 00:12:23,940 --> 00:12:27,490 Så getString tilføjer blot i slutningen af dagen, en hel masse nyttige 262 00:12:27,490 --> 00:12:28,990 fejlkontrol. 263 00:12:28,990 --> 00:12:32,700 >> Nu er en kommentar fra David i Ohio, der hævder dette - 264 00:12:32,700 --> 00:12:35,670 nej, behøver du ikke apparatet for alle projekterne. 265 00:12:35,670 --> 00:12:37,120 Nu hvad mente han med det? 266 00:12:37,120 --> 00:12:39,930 Tja, det viser sig, at David indkøbt, fra en online hjemmeside, en 267 00:12:39,930 --> 00:12:44,030 Nokia LCD, som denne her, det er virkelig størrelsen af ​​noget du måske 268 00:12:44,030 --> 00:12:45,330 se på en ældre mobiltelefon. 269 00:12:45,330 --> 00:12:48,160 Og han også skaffet et Tiva lancering bord, et stykke hardware, der 270 00:12:48,160 --> 00:12:49,540 forbindelse til denne LCD. 271 00:12:49,540 --> 00:12:50,280 >> Nu er det ganske lille. 272 00:12:50,280 --> 00:12:52,720 Som du kan se her er en US kvartal for skalaen. 273 00:12:52,720 --> 00:12:56,160 Og hvad han gjorde med dette er faktisk gennemføre et program i C. 274 00:12:56,160 --> 00:12:59,630 >> Faktisk behøver du ikke det CS50 apparat til at skrive programmer i C. Du 275 00:12:59,630 --> 00:13:01,140 behøver ikke engang en Mac eller en PC. 276 00:13:01,140 --> 00:13:05,090 Du kan også skrive og køre C-kode på en indlejret enhed som denne. 277 00:13:05,090 --> 00:13:07,380 Jamen hvad gjorde David faktisk skrive og køre? 278 00:13:07,380 --> 00:13:08,490 Nå tjekke det ud. 279 00:13:08,490 --> 00:13:12,390 Han implementeret Mario på denne lillebitte mobiltelefon-lignende skærm fra 280 00:13:12,390 --> 00:13:13,660 Problem Set 1. 281 00:13:13,660 --> 00:13:16,840 >> Så jeg tror, ​​jeg ville enig med en af Davids klassekammerater, der i samme 282 00:13:16,840 --> 00:13:19,360 Facebook gevind hvor David indført denne lille program til 283 00:13:19,360 --> 00:13:20,970 verden, svarede med - 284 00:13:20,970 --> 00:13:22,670 du er et bæst mate. 285 00:13:22,670 --> 00:13:23,560 Faktisk er du. 286 00:13:23,560 --> 00:13:25,550 >> Nu næste op er et stykke af spam. 287 00:13:25,550 --> 00:13:28,520 Hvis du er i CS50 s Facebook-gruppe, du måske har bemærket nogle indlæg som 288 00:13:28,520 --> 00:13:30,410 dette, som lejlighedsvis glide derinde. 289 00:13:30,410 --> 00:13:32,030 Hvis du støder på nogle spam, nogen big deal. 290 00:13:32,030 --> 00:13:34,430 Du skal blot rapportere det til os og vi vil gå videre og slette den. 291 00:13:34,430 --> 00:13:37,870 Men før vi slettet det ene vi kunne ikke hjælpe med at tage et par screenshots 292 00:13:37,870 --> 00:13:39,460 og klukke lidt. 293 00:13:39,460 --> 00:13:43,850 >> Denne særlige elev her - vi vil kalder ham Alan MobilePhone - 294 00:13:43,850 --> 00:13:48,760 indsendt sin celle telefonnummer, hans BlackBerry chat-adresse, hans Skype-ID, 295 00:13:48,760 --> 00:13:51,600 hans e-mail-adresse - hvoraf ingen bør du faktisk kontakte. 296 00:13:51,600 --> 00:13:55,970 Men som pr fotos her, ser det ud som Alan MobilePhone har en hel 297 00:13:55,970 --> 00:13:59,630 iPhones til salg i hvad der synes at være en temmelig ubestemmelig lager. 298 00:13:59,630 --> 00:14:04,160 Nu samme David svarede til Alan Mobiltelefon med følgende - 299 00:14:04,160 --> 00:14:06,220 kommer de med gedit installeret? 300 00:14:06,220 --> 00:14:09,220 >> Nu du normalt tror, ​​at nogle Spambot ville bare ignorere et svar til 301 00:14:09,220 --> 00:14:10,120 deres oprindelige tråd. 302 00:14:10,120 --> 00:14:14,970 Men nej, Alan MobilePhone havde dette at sige - alle vores telefoner er helt nye, 303 00:14:14,970 --> 00:14:17,960 komme med original kasse og tilbehør, alle vores telefoner er SIM 304 00:14:17,960 --> 00:14:19,490 fri, og så videre. 305 00:14:19,490 --> 00:14:23,170 >> OK, så måske en automatisk genereret besvare David mennesker 306 00:14:23,170 --> 00:14:26,290 svar, men David skubbet lidt længere - 307 00:14:26,290 --> 00:14:30,010 vil du installere og teste CS50 apparat til os inden levering? 308 00:14:30,010 --> 00:14:33,450 Okay, godt så lad os se, hvad Alan MobilePhone har at sige nu. 309 00:14:33,450 --> 00:14:37,330 >> Ja, og alle vores produkt er at arbejde med SIM-kort og netværk over hele verden. 310 00:14:37,330 --> 00:14:42,830 Fantastisk, nu en anden klassekammerat vores, dansk, svarede med dette. 311 00:14:42,830 --> 00:14:43,730 Det ville være awesome. 312 00:14:43,730 --> 00:14:47,810 Tag min orden samt for to, plus en gratis, iPhone 5s med CS50 313 00:14:47,810 --> 00:14:49,470 apparat forudinstalleret. 314 00:14:49,470 --> 00:14:53,390 >> Og endelig, Alan MobilePhone sagde - ja, vil alle arbejde. 315 00:14:53,390 --> 00:14:54,080 Tro mig. 316 00:14:54,080 --> 00:14:57,540 Så hvilken af ​​produkterne vil du kan lide at købe fra os. 317 00:14:57,540 --> 00:15:01,890 Sorry Alan MobilePhone, du er nu forbudt. 318 00:15:01,890 --> 00:15:04,730 >> Chris, nu fra Toronto, spurgte dette spørgsmål af os. 319 00:15:04,730 --> 00:15:06,580 Jeg har en idé til CS50 Live. 320 00:15:06,580 --> 00:15:09,750 Jeg tror, ​​det ville være dejligt, hvis David, eller nogle af de andre CS50 personale, spillede 321 00:15:09,750 --> 00:15:13,180 én eller flere indsendte ridse spil til Problem Set 0. 322 00:15:13,180 --> 00:15:14,730 Så dette er en stor forslag. 323 00:15:14,730 --> 00:15:18,670 >> Og de ting er, da Problem Set 1 blev frigivet den 1. januar, vi har 324 00:15:18,670 --> 00:15:20,890 faktisk har modtaget tusinder af scratch projekter. 325 00:15:20,890 --> 00:15:23,970 Så kunne vi ikke eventuelt gøre dem alle retfærdighed her og CS50 Live. 326 00:15:23,970 --> 00:15:26,860 Så vi troede, vi ville plukke ud en, der fanget vores øje for nylig kendt som 327 00:15:26,860 --> 00:15:27,920 Wizards 'Duel. 328 00:15:27,920 --> 00:15:31,420 >> Wizards 'Duel blev skrevet af en klassekammerat opkaldt Patrick i Ohio. 329 00:15:31,420 --> 00:15:35,290 Og jeg må advare om, at dette projekt virkelig gik ud over, hvad der var 330 00:15:35,290 --> 00:15:36,730 forventes i Problem Set 0. 331 00:15:36,730 --> 00:15:39,580 Må slet ikke ærgre sig, hvis dette ikke er noget, du kan nødvendigvis 332 00:15:39,580 --> 00:15:43,090 udrette i dit allerførste gang programmering, også med Scratch eller 333 00:15:43,090 --> 00:15:44,130 noget andet sprog. 334 00:15:44,130 --> 00:15:48,420 Men vi troede, det ville være sjovt at spille en lille smule af Wizards 'Duel her. 335 00:15:48,420 --> 00:15:50,276 >> [Musikgengivelse] 336 00:15:50,276 --> 00:16:39,370 337 00:16:39,370 --> 00:16:43,860 >> Amazing, så hvis du selv gerne vil at spille eller remix Wizards 'Duel Tag en 338 00:16:43,860 --> 00:16:45,350 se på denne webadresse her. 339 00:16:45,350 --> 00:16:48,130 Gå videre og bare pause videoen, hvis du gerne vil skrive, at i. 340 00:16:48,130 --> 00:16:51,800 >> Nå næste op er en anden Scratch projekt, denne ene af en studerende ved navn 341 00:16:51,800 --> 00:16:54,600 David fra Cambridge, Massachusetts. 342 00:16:54,600 --> 00:16:58,820 Så det var faktisk den allerførste program, jeg selv skrev tilbage i 2007. 343 00:16:58,820 --> 00:17:01,410 Jeg var en ph.d.-studerende på det tidspunkt og jeg havde kors registreret i en 344 00:17:01,410 --> 00:17:05,099 uddannelse kursus på MIT, underviste af professor Mitchel Resnick. 345 00:17:05,099 --> 00:17:07,270 På det tidspunkt, Scratch ikke virkelig eksisterer. 346 00:17:07,270 --> 00:17:10,510 Det var kun i beta-format, og vi - elever i denne klasse - havde 347 00:17:10,510 --> 00:17:14,050 unik mulighed for rent faktisk at spille med, og eksperimentere med Scratch 348 00:17:14,050 --> 00:17:15,160 før nogen andre. 349 00:17:15,160 --> 00:17:18,400 >> Faktisk en af ​​vores første opgaver i denne klasse var faktisk gøre vores 350 00:17:18,400 --> 00:17:19,420 egen Scratch projekt. 351 00:17:19,420 --> 00:17:23,069 Og den dag i dag husker jeg at bruge nogle otte timer på en fredag ​​aften på 352 00:17:23,069 --> 00:17:25,589 alle ting arbejder på Oscartime her. 353 00:17:25,589 --> 00:17:28,550 Og nu dem af jer bekendt med Oscar den Grouch fra Sesame Street 354 00:17:28,550 --> 00:17:31,700 måske i et øjeblik huske sangen der er ved at blive spillet. 355 00:17:31,700 --> 00:17:34,760 >> Og jeg plejede at have meget, meget glade minder af sangen. 356 00:17:34,760 --> 00:17:38,340 Men tro mig, efter otte timers lytte til noget på løkken, 357 00:17:38,340 --> 00:17:43,730 med en evigt loop, det meget hurtigt sours lidt af denne hukommelse. 358 00:17:43,730 --> 00:17:45,870 Men for dig, får du bare et glimt på dette. 359 00:17:45,870 --> 00:17:49,252 Og jeg giver dig dette eksempel af Oscartime. 360 00:17:49,252 --> 00:17:53,190 >> [Musikgengivelse] 361 00:17:53,190 --> 00:17:56,940 >> SPEAKER 4: (sang) Åh jeg elsker papirkurven - 362 00:17:56,940 --> 00:18:05,200 noget snavset eller nusset eller støvet, noget laset eller rådne eller rusten. 363 00:18:05,200 --> 00:18:08,668 Ja, jeg elsker papirkurven. 364 00:18:08,668 --> 00:18:10,980 Her er nogle mere rådden ting. 365 00:18:10,980 --> 00:18:20,012 Ja, jeg elsker, jeg elsker, jeg elsker papirkurven. 366 00:18:20,012 --> 00:18:23,790 367 00:18:23,790 --> 00:18:26,940 >> SPEAKER 1: Nu, hvis du gerne vil spille eller remix Oscartime, og forbedre 368 00:18:26,940 --> 00:18:29,500 det, gå til denne URL her. 369 00:18:29,500 --> 00:18:31,290 Nå, den næste er et spørgsmål fra [? Bosco?] 370 00:18:31,290 --> 00:18:34,750 i Hongkong, som skrev dette - hvad er det programmeringssprog 371 00:18:34,750 --> 00:18:36,340 bag MIT Scratch? 372 00:18:36,340 --> 00:18:37,330 Så det er et godt spørgsmål. 373 00:18:37,330 --> 00:18:40,640 >> Men snarere end svar, os selv, besluttede vi at tage vores kameraer ned 374 00:18:40,640 --> 00:18:44,790 vejen til MIT Media Lab, hvor Livslang Kindergarten gruppe er, ledet af 375 00:18:44,790 --> 00:18:47,610 Professor Mitchel Resnick, fra hvem Jeg tog denne klasse år siden. 376 00:18:47,610 --> 00:18:50,250 Vi mødte ikke kun med professor Resnick, men også John Maloney, 377 00:18:50,250 --> 00:18:52,730 den oprindelige forfatter af Scratch-programmet. 378 00:18:52,730 --> 00:18:56,050 Så meget software du har brugt at skabe anden software var 379 00:18:56,050 --> 00:18:58,090 skrevet primært af John. 380 00:18:58,090 --> 00:19:02,020 På billedet her i virkeligheden er John, jeg selv, og Mitchell står bag en reel 381 00:19:02,020 --> 00:19:05,750 verden inkarnation af Scratch kort efter vores samtale. 382 00:19:05,750 --> 00:19:10,278 Men før vi tager et lyt, tres sekunder her hvalpe. 383 00:19:10,278 --> 00:20:11,860 >> [MUSIC - John Mayer, "WILDFIRE"] 384 00:20:11,860 --> 00:20:16,190 >> Scratch faktisk i al oprigtighed besidder en særlig plads i vores hjerte 385 00:20:16,190 --> 00:20:16,990 her på CS50. 386 00:20:16,990 --> 00:20:20,020 Faktisk indførte vi Scratch i løbet i 2007. 387 00:20:20,020 --> 00:20:22,090 Og hvad var slående, at år var følgende. 388 00:20:22,090 --> 00:20:26,130 Betragtninger i årene inden, siger 2006 har vi ville have nogle 200 elever shop 389 00:20:26,130 --> 00:20:29,250 kursus, som i Harvard taler midler at falde med kurset i første 390 00:20:29,250 --> 00:20:33,120 uger af semestret, men ikke nødvendigvis tage klassen. 391 00:20:33,120 --> 00:20:36,350 67% af de studerende ville typisk forblive og komme tilbage i 392 00:20:36,350 --> 00:20:37,440 ugerne, der følger. 393 00:20:37,440 --> 00:20:40,320 >> I mellemtiden i 2007, da vi indførte Scratch samt nogle andre 394 00:20:40,320 --> 00:20:44,680 læseplanerne tweaks, vi sprang op til 97% retentionsforhold af de studerende 395 00:20:44,680 --> 00:20:46,200 der var shopping CS50. 396 00:20:46,200 --> 00:20:49,960 Og så lige siden da Scratch har været en central del af CS50, omend blot 397 00:20:49,960 --> 00:20:50,890 i den første uge. 398 00:20:50,890 --> 00:20:54,420 Men jeg tør sige det sætter tonen for Selvfølgelig, og virkelig taler til vores mål 399 00:20:54,420 --> 00:20:58,840 i CS50 gøre datalogi desto mere tilgængelige. 400 00:20:58,840 --> 00:21:02,530 Med det sagt, vores tak til Mitchell og John og hele Scratch teamet. 401 00:21:02,530 --> 00:21:05,710 Lad os nu tage dette område tur ned ad vejen. 402 00:21:05,710 --> 00:21:06,930 >> MITCHEL Resnick: Hej, Jeg er Mitch Resnick. 403 00:21:06,930 --> 00:21:09,970 Jeg er professor i Learning Research her på MIT Media Lab. 404 00:21:09,970 --> 00:21:12,590 Og jeg også direkte MIT Scratch team. 405 00:21:12,590 --> 00:21:15,810 >> JOHN MALONEY: Jeg er John Maloney, og jeg var en forsker for omkring elleve 406 00:21:15,810 --> 00:21:19,240 år, der arbejder på et Scratch projekt som den ledende udvikler. 407 00:21:19,240 --> 00:21:22,460 >> MITCHEL Resnick: Vi kalder vores forskning gruppe Livslang Kindergarten gruppe 408 00:21:22,460 --> 00:21:24,785 fordi vi inspireret af den måde børn lærer i børnehaven. 409 00:21:24,785 --> 00:21:28,820 I de klassiske børnehave, børn er legende designe og skabe 410 00:21:28,820 --> 00:21:30,920 ting i samarbejde med hinanden - 411 00:21:30,920 --> 00:21:33,300 bygge tårne ​​med træklodser, lave billeder med 412 00:21:33,300 --> 00:21:34,720 fingermaling og farveblyanter. 413 00:21:34,720 --> 00:21:38,430 Da vi udviklede Scratch, vi ønskede at fange den børnehave ånd for 414 00:21:38,430 --> 00:21:39,700 elever i alle aldre. 415 00:21:39,700 --> 00:21:42,880 >> JOHN MALONEY: En af de store motivationer for Scratch dette var 416 00:21:42,880 --> 00:21:47,930 projekt, Mitchel og Natalie havde startede kaldet Computer Clubhouse. 417 00:21:47,930 --> 00:21:54,570 Og de så en masse børn at gøre ting med medier værktøjer som Photoshop og 418 00:21:54,570 --> 00:21:58,700 forskellige lyd produktionsværktøjer, men de ikke gør nogen programmering. 419 00:21:58,700 --> 00:22:00,020 Børnene blev ikke gør programmering. 420 00:22:00,020 --> 00:22:02,440 Og vi kiggede rundt og sagde - ja, hvorfor er de ikke gør det? 421 00:22:02,440 --> 00:22:06,380 Og svaret syntes at være, at der var ikke et værktøj, der var passende for 422 00:22:06,380 --> 00:22:07,220 denne indstilling. 423 00:22:07,220 --> 00:22:10,960 >> MITCHEL Resnick: Da vi udvikler Scratch, blev jeg inspireret af nogle af de 424 00:22:10,960 --> 00:22:13,660 ideer min mentor Seymour Papert, der har udviklet 425 00:22:13,660 --> 00:22:15,640 logo programmeringssprog. 426 00:22:15,640 --> 00:22:19,535 Seymour plejede altid at sige, at det var vigtigt for en ny teknologi til at have 427 00:22:19,535 --> 00:22:24,140 et lavt gulv, hvilket betyder at det er nemt at få startede med, højt til loftet, mener du 428 00:22:24,140 --> 00:22:25,980 kan gøre mere og mere komplekse ting med det. 429 00:22:25,980 --> 00:22:30,480 >> Vi ønskede også at have det, vi kalder brede vægge, hvilket betyder, at der er mange 430 00:22:30,480 --> 00:22:31,100 forskellige veje. 431 00:22:31,100 --> 00:22:34,800 At du kan gøre mange forskellige ting med softwaren. 432 00:22:34,800 --> 00:22:38,320 Det er ikke nok bare at komme i gang nemt og gøre komplekse ting, hvis 433 00:22:38,320 --> 00:22:39,900 alle laver det samme. 434 00:22:39,900 --> 00:22:42,690 Vi ønskede at have mange forskellige veje, fordi vi ved forskellige 435 00:22:42,690 --> 00:22:45,760 mennesker har forskellige interesser, og vi ønskede alle at være i stand til at arbejde 436 00:22:45,760 --> 00:22:48,090 på projekter, der voksede ud af deres egne interesser. 437 00:22:48,090 --> 00:22:52,020 >> JOHN MALONEY: Jeg vil gerne sige, at vi anses cirka ti gange mere 438 00:22:52,020 --> 00:22:55,730 kommandoer og funktioner end have nogensinde endte i Scratch. 439 00:22:55,730 --> 00:23:01,160 Vi ville have endeløse debatter om præcis, hvad formuleringen at sætte på blokke, 440 00:23:01,160 --> 00:23:05,650 og ting som hvorvidt standard retning af sprite bør være op 441 00:23:05,650 --> 00:23:06,570 eller til højre. 442 00:23:06,570 --> 00:23:10,450 Så vi tænkte om alle disse ting, især de meget tidlige 443 00:23:10,450 --> 00:23:13,790 oplevelser, som folk ville have med Scratch, og forsøger at gøre det så 444 00:23:13,790 --> 00:23:16,800 at tingene kunne blive opdaget blot ved eksperimentering. 445 00:23:16,800 --> 00:23:20,370 >> MITCHEL Resnick: Da vi var først designe Scratch vores målgruppe 446 00:23:20,370 --> 00:23:22,670 var aldre 8-16. 447 00:23:22,670 --> 00:23:26,400 >> JOHN MALONEY: På den lave ende af spektrum, fandt vi, at meget yngre 448 00:23:26,400 --> 00:23:28,940 Børnene var ved hjælp af Scratch end vi nogensinde forventet. 449 00:23:28,940 --> 00:23:33,410 Jeg husker stadig den første Scratch dag, tror jeg, at vi havde. 450 00:23:33,410 --> 00:23:36,340 Denne lille seks-årige fyr kom i. 451 00:23:36,340 --> 00:23:41,540 På den øverste ende, jeg har været overrasket ved for eksempel anvendelse af Scratch i 452 00:23:41,540 --> 00:23:43,660 kollegium klasser som CS50. 453 00:23:43,660 --> 00:23:47,750 Fordi vi ikke rigtig tænke på Scratch som et sprog for undervisning 454 00:23:47,750 --> 00:23:50,070 datalogi til computer videnskabsmænd. 455 00:23:50,070 --> 00:23:52,970 >> En anden overraskelse er, hvor mange voksne bruger det. 456 00:23:52,970 --> 00:23:58,830 Vi fandt, at folk, der er ligesom fuld tid programmører nyde programmering i 457 00:23:58,830 --> 00:24:00,530 Scratch som en slags hobby. 458 00:24:00,530 --> 00:24:03,860 Og så har vi set folk på Scratch website oprette projekter, 459 00:24:03,860 --> 00:24:05,470 gøre, for eksempel - 460 00:24:05,470 --> 00:24:08,380 ray tracing 3D rendering-systemer. 461 00:24:08,380 --> 00:24:10,120 Jeg kunne ikke tro det, da jeg så det. 462 00:24:10,120 --> 00:24:13,170 >> MITCHEL Resnick: Da vi begyndte at arbejde på Scratch, vi ønskede at gøre det 463 00:24:13,170 --> 00:24:16,360 forskellig fra tidligere programmering sprog for at gøre det 464 00:24:16,360 --> 00:24:19,010 tilgængelige for en meget bredere vifte af mennesker. 465 00:24:19,010 --> 00:24:21,770 Så vi havde tre kerne vejledende principper. 466 00:24:21,770 --> 00:24:24,880 Først skal vi ønskede at gøre det mere tinkerable, så man kunne opbygge 467 00:24:24,880 --> 00:24:27,810 programmer meget som at sætte LEGO klodser sammen. 468 00:24:27,810 --> 00:24:30,760 Så vi havde den visuelle programmering blokere det er ikke sammen. 469 00:24:30,760 --> 00:24:34,670 >> Anden af ​​alle, vi ønskede at lade folk arbejde på mere meningsfulde projekter, 470 00:24:34,670 --> 00:24:37,060 ting, der var personligt relevante for dem. 471 00:24:37,060 --> 00:24:38,890 Det er derfor vi gør Scratch så medier rige. 472 00:24:38,890 --> 00:24:41,230 >> Tredjedel af alt, vi ønskede at gøre det mere sociale. 473 00:24:41,230 --> 00:24:43,580 Fordi en masse af de bedste læring erfaringer kommer når vi 474 00:24:43,580 --> 00:24:45,220 interagere med andre. 475 00:24:45,220 --> 00:24:48,590 Så vi tilføjet Scratch online community fra begyndelsen, 476 00:24:48,590 --> 00:24:51,790 ret, da vi lancerede softwaren, så at folk ville have et publikum 477 00:24:51,790 --> 00:24:55,460 for deres kreationer, og også få inspireret af, hvad andre mennesker skabt. 478 00:24:55,460 --> 00:24:59,720 Da vi lancerede scratch der har været omkring på 4,5 mio projekter, 479 00:24:59,720 --> 00:25:01,760 er blevet delt på Scratch hjemmeside. 480 00:25:01,760 --> 00:25:05,610 >> JOHN MALONEY: Så jeg faktisk sluttede projektet ved sortering 481 00:25:05,610 --> 00:25:07,770 af processkrift Mitchel. 482 00:25:07,770 --> 00:25:10,510 Jeg bad om at sluttede, da jeg hørte om det, fordi jeg troede det ville 483 00:25:10,510 --> 00:25:12,790 være sådan en cool ting, og Jeg ønskede at hjælpe. 484 00:25:12,790 --> 00:25:17,010 Men min favorit sprog var Smalltalk, og jeg havde hjulpet med at udvikle 485 00:25:17,010 --> 00:25:19,430 denne version af Smalltalk kaldet Squeak. 486 00:25:19,430 --> 00:25:23,240 >> Så jeg sagde, ja, jeg kommer og gøre dette arbejde, så længe jeg 487 00:25:23,240 --> 00:25:24,960 kan bygge det i Squeak. 488 00:25:24,960 --> 00:25:27,920 Og Mitchel sagde - oh sikker, det gør jeg ikke ligeglad med, hvad det er lavet i. 489 00:25:27,920 --> 00:25:28,920 Bare gøre det arbejde. 490 00:25:28,920 --> 00:25:31,950 Og så det er hvordan det kom til skrives på Squeak. 491 00:25:31,950 --> 00:25:36,730 >> Så med Scratch 2,0 troede vi, at vi vil forsøge at gøre Scratch nå ud til 492 00:25:36,730 --> 00:25:39,750 flere mennesker ved at gøre det en Cloud-baseret app. 493 00:25:39,750 --> 00:25:43,290 Og selv om der var en version af Knirke, der kørte i browseren, det 494 00:25:43,290 --> 00:25:45,960 kræves downloading og installere et plug-in. 495 00:25:45,960 --> 00:25:49,450 Og vi vidste, at en masse mennesker ville har problemer med at gøre det, enten 496 00:25:49,450 --> 00:25:54,310 fordi det var en kompliceret proces eller fordi deres administration på 497 00:25:54,310 --> 00:25:56,470 deres skole, eller hvad, ville ikke tillade det. 498 00:25:56,470 --> 00:26:00,310 Så vi ønskede noget, der var så venlig af indbygget i browsere, eller var 499 00:26:00,310 --> 00:26:03,050 slags som standard der på de fleste browsere. 500 00:26:03,050 --> 00:26:07,100 Vi overvejede Java, vi betragtede Silverlight, vi overvejet JavaScript, 501 00:26:07,100 --> 00:26:08,590 og vi overvejet Flash. 502 00:26:08,590 --> 00:26:11,020 >> På det tidspunkt var Flash virkelig på overtag. 503 00:26:11,020 --> 00:26:12,350 Adobe var virkelig skubbe det. 504 00:26:12,350 --> 00:26:17,420 Og vi endnu ikke vidste, at det ville at være sådan et problem på iOS, og 505 00:26:17,420 --> 00:26:19,200 mobile enheder og så videre. 506 00:26:19,200 --> 00:26:20,480 Så gik vi med Flash. 507 00:26:20,480 --> 00:26:25,690 >> Og set i bakspejlet ville det har måske været pænere, hvis vi var gået med 508 00:26:25,690 --> 00:26:27,900 JavaScript fordi, der er blevet det dominerende sprog. 509 00:26:27,900 --> 00:26:31,690 Men jeg tror ikke der er nogen måde, vi kunne muligvis have set alle de 510 00:26:31,690 --> 00:26:33,690 ting, der var på vej til at ændre mellem dengang og nu. 511 00:26:33,690 --> 00:26:37,620 Og det tager tre år eller deromkring til at sætte sammen noget som dette. 512 00:26:37,620 --> 00:26:40,860 Så du gøre dit bedste gæt og håbe på det bedste. 513 00:26:40,860 --> 00:26:44,720 >> MITCHEL Resnick: En nye projekter kaldet Scratch Junior, forsøger at få 514 00:26:44,720 --> 00:26:47,130 Scratch gå ned til endnu yngre børn. 515 00:26:47,130 --> 00:26:49,810 Det bliver rettet i en alder af fem til syv-årige, som 516 00:26:49,810 --> 00:26:51,780 børnehave til anden klasse. 517 00:26:51,780 --> 00:26:53,610 Den første version af det vil være på iPad. 518 00:26:53,610 --> 00:26:57,130 Og vi planlægger at have det komme ud i midten af ​​2014. 519 00:26:57,130 --> 00:26:59,660 Så Scratch Junior vil være en noget skaleret ned version. 520 00:26:59,660 --> 00:27:02,540 Det vil have lidt færre funktioner, og også gøre tingene mere 521 00:27:02,540 --> 00:27:05,450 udviklingsmæssigt passende til yngre børn. 522 00:27:05,450 --> 00:27:09,580 >> JOHN MALONEY: Jeg nyder, at Skrab 2.0, især er en slags 523 00:27:09,580 --> 00:27:14,070 hemmeligt højere ydelse end du måske forestiller dig. 524 00:27:14,070 --> 00:27:16,410 Som standard, når du laver animationer og så videre, er du 525 00:27:16,410 --> 00:27:20,730 begrænset til opdateringen på skærmen. 526 00:27:20,730 --> 00:27:24,610 Og vi har designet det bevidst, så det kun gør en lille smule pr 527 00:27:24,610 --> 00:27:30,330 ramme, så hvis du siger gentage 10, flytte 10, du faktisk se den bevæge sig i 528 00:27:30,330 --> 00:27:32,450 ti små intervaller. 529 00:27:32,450 --> 00:27:36,590 >> Men der er en slags skjult tilstand kaldet turbo-mode, hvor du kan få 530 00:27:36,590 --> 00:27:38,920 ved skift at klikke på det grønne flag. 531 00:27:38,920 --> 00:27:42,670 Og der dybest set lader det køre slags så hurtigt som det kan. 532 00:27:42,670 --> 00:27:46,210 Så dette er hvad kan du gøre ting som ray sporstof, og du ikke 533 00:27:46,210 --> 00:27:49,480 nødt til - den oprindelige stråle sporstof, du måtte vente ligesom omkring en halv time til 534 00:27:49,480 --> 00:27:52,020 se resultaterne, fordi det var slags chugging gennem 535 00:27:52,020 --> 00:27:53,060 ét billede ad gangen. 536 00:27:53,060 --> 00:27:57,240 Men med skiftet klik ting, kan du få resultaterne i noget lignende 537 00:27:57,240 --> 00:27:58,980 20 sekunder. 538 00:27:58,980 --> 00:28:03,610 Så pludselig kan du bare slags højt niveau ting i bunden, men 539 00:28:03,610 --> 00:28:05,990 det er en skjult funktion. 540 00:28:05,990 --> 00:28:08,470 >> SPEAKER 1: Tak så meget til Mitchel og John for alt 541 00:28:08,470 --> 00:28:09,890 de har gjort for CS50. 542 00:28:09,890 --> 00:28:13,190 Tak til Andrew, Al, og Shelley, der står bag kameraerne i denne uge. 543 00:28:13,190 --> 00:28:15,460 Og Tak så meget til alle de studerende, dem af jer derude, der 544 00:28:15,460 --> 00:28:16,290 indsendte indhold. 545 00:28:16,290 --> 00:28:22,340 >> Og ja, hvis du gerne vil bidrage med indhold til en kommende uge, 546 00:28:22,340 --> 00:28:26,420 behøver at nå ud til os via Facebook, Reddit, Twitter, eller nogen af ​​de andre 547 00:28:26,420 --> 00:28:27,570 kursets midler. 548 00:28:27,570 --> 00:28:29,750 Det er det for CS50 Live. 549 00:28:29,750 --> 00:28:32,480 Dette var CS50. 550 00:28:32,480 --> 00:28:33,730 Damn det. 551 00:28:33,730 --> 00:29:04,598