1 00:00:00,000 --> 00:00:17,044 2 00:00:17,044 --> 00:00:18,210 DAVID J. MALAN: Hej världen. 3 00:00:18,210 --> 00:00:22,679 Detta är CS50 Live och det är mars 14, vilket innebär, lycklig pi dag. 4 00:00:22,679 --> 00:00:24,470 Nu har det gått ett tag eftersom vi har sett dig, 5 00:00:24,470 --> 00:00:26,682 eftersom fredags, Rob Bowden och jag var faktiskt 6 00:00:26,682 --> 00:00:28,390 bort på en konferens i Atlanta, Georgia. 7 00:00:28,390 --> 00:00:30,525 En konferens kallad SIGCSE, Särskilda Intresse 8 00:00:30,525 --> 00:00:33,400 Group på Computer Science Education, som varje år samlar 9 00:00:33,400 --> 00:00:35,900 cirka 1.000 lärare till prata om och arbeta 10 00:00:35,900 --> 00:00:38,692 på förbättringar på datavetenskaplig utbildning. 11 00:00:38,692 --> 00:00:40,650 En av huvudtalarna detta år, i själva verket, 12 00:00:40,650 --> 00:00:42,800 var grundaren av code.org, som du kanske 13 00:00:42,800 --> 00:00:44,550 sett i pressen under det senaste året. 14 00:00:44,550 --> 00:00:47,050 De har gjort en extraordinär jobb under det senaste året att få 15 00:00:47,050 --> 00:00:50,310 folk glada om datavetenskap, och om programmering i synnerhet. 16 00:00:50,310 --> 00:00:52,351 Faktum är att en av deras mest välkända initiativ 17 00:00:52,351 --> 00:00:56,560 är känd som The Hour of Code som är en möjlighet och en läroplan via vilken 18 00:00:56,560 --> 00:00:58,769 dig, eller en vän, eller en familjemedlem eller kollega, 19 00:00:58,769 --> 00:01:01,810 kunde få händerna smutsiga med lite för datavetenskap och programmering 20 00:01:01,810 --> 00:01:04,610 för bara en timme för att se om du tar på den. 21 00:01:04,610 --> 00:01:06,964 >> Faktum är att om du själv har en vän, familjemedlem, 22 00:01:06,964 --> 00:01:10,130 eller kollega som vill prova sin eller hennes hand vid något datavetenskap, 23 00:01:10,130 --> 00:01:13,390 men du tror att kasta dem i CS50 s läroplanen kan vara lite för mycket för 24 00:01:13,390 --> 00:01:17,910 snart, väl för all del, se dem att code.org / lära där de kan prova 25 00:01:17,910 --> 00:01:21,110 sin hand för bara en timme på lite av datavetenskap. 26 00:01:21,110 --> 00:01:23,180 Eller ännu bättre, visa dem detta klipp. 27 00:01:23,180 --> 00:01:27,570 >> [VIDEO SPELA] 28 00:01:27,570 --> 00:01:28,570 >> -Hej, jag heter Leah. 29 00:01:28,570 --> 00:01:29,320 >> -Och jag är Tonya. 30 00:01:29,320 --> 00:01:31,820 >> -Och vi har tur att att studera datavetenskap. 31 00:01:31,820 --> 00:01:34,895 Vi tycker att det är fruktansvärt att 90% av skolan inte lära ut det. 32 00:01:34,895 --> 00:01:37,020 -De gjorde definitivt inte erbjuda det på min skola. 33 00:01:37,020 --> 00:01:40,047 -Så vi försöker göra den här videon för att visa att vem som helst kan lära sig. 34 00:01:40,047 --> 00:01:42,463 Vi vill få 10 miljoner studenter att göra Timmen koden. 35 00:01:42,463 --> 00:01:43,810 >> -Timme för kod. 36 00:01:43,810 --> 00:01:44,410 >> -Timme för kod. 37 00:01:44,410 --> 00:01:45,405 >> -Timmen koden. 38 00:01:45,405 --> 00:01:46,317 >> -Timme för kod. 39 00:01:46,317 --> 00:01:46,900 -Timme för kod. 40 00:01:46,900 --> 00:01:47,460 -Timme för kod. 41 00:01:47,460 --> 00:01:48,043 -Timme för kod. 42 00:01:48,043 --> 00:01:49,947 -Timmen koden. 43 00:01:49,947 --> 00:01:51,780 -Hur kan du få honom att komma till solros. 44 00:01:51,780 --> 00:01:53,920 Han måste göra en del åtgärder. 45 00:01:53,920 --> 00:01:54,560 >> -Jag fick det. 46 00:01:54,560 --> 00:01:56,440 Yay. 47 00:01:56,440 --> 00:01:59,610 >> -Och sedan kommer vi köra det och se vad som händer. 48 00:01:59,610 --> 00:02:00,415 >> -Fantastiskt. 49 00:02:00,415 --> 00:02:02,598 >> -Där vi går. 50 00:02:02,598 --> 00:02:04,483 >> -Du skrev just ditt första program. 51 00:02:04,483 --> 00:02:04,983 -Jag skrev den? 52 00:02:04,983 --> 00:02:05,937 -Ja. 53 00:02:05,937 --> 00:02:07,368 -Det här är den kod du just skrev. 54 00:02:07,368 --> 00:02:08,800 -Väldigt häftigt. 55 00:02:08,800 --> 00:02:12,317 -Jag tänkte som, kod var som FBI hacker, symboler och grejer. 56 00:02:12,317 --> 00:02:14,650 -Lite problem lösa, lite logik. 57 00:02:14,650 --> 00:02:15,650 -Det är som instruktioner. 58 00:02:15,650 --> 00:02:18,040 -Programmering är mycket enklare i dag. 59 00:02:18,040 --> 00:02:20,060 -Inte bara spela på telefonen. 60 00:02:20,060 --> 00:02:20,600 Programmera den. 61 00:02:20,600 --> 00:02:21,099 >> -Okej. 62 00:02:21,099 --> 00:02:21,926 -Fantastiskt. 63 00:02:21,926 --> 00:02:24,050 >> -Hur någon gå om att få ett jobb? 64 00:02:24,050 --> 00:02:26,960 >> -Kanske ta en online-klass, hitta en klass på ett community college. 65 00:02:26,960 --> 00:02:29,219 >> -Du kan få en av de bästa betala jobb i världen. 66 00:02:29,219 --> 00:02:31,510 -Jag tror att medicinen är rörliga i hela dataåldern. 67 00:02:31,510 --> 00:02:33,450 -technology handen varje del av våra liv. 68 00:02:33,450 --> 00:02:36,340 Om du kan skapa teknik, du kan förändra världen. 69 00:02:36,340 --> 00:02:39,539 >> -Så vi är glada att du är deltar i dagens Hour of Code. 70 00:02:39,539 --> 00:02:40,830 -Vi gjorde bara två rader kod. 71 00:02:40,830 --> 00:02:42,471 -Tre rader kod. 72 00:02:42,471 --> 00:02:42,970 -Fyra rader. 73 00:02:42,970 --> 00:02:43,760 -Sju rader. 74 00:02:43,760 --> 00:02:44,585 -Fem rader. 75 00:02:44,585 --> 00:02:49,435 76 00:02:49,435 --> 00:02:50,971 -16 Rader av koder. 77 00:02:50,971 --> 00:02:51,720 -99 Rader kod. 78 00:02:51,720 --> 00:02:52,670 -60 Linjer. 79 00:02:52,670 --> 00:02:54,380 -18 Rader kod. 80 00:02:54,380 --> 00:02:56,330 -75 Rader kod. 81 00:02:56,330 --> 00:02:58,700 -Det spelar ingen roll hur gammal du är. 82 00:02:58,700 --> 00:02:59,426 -Timme för kod. 83 00:02:59,426 --> 00:03:01,890 -Timme för kod. 84 00:03:01,890 --> 00:03:02,880 -Timmen koden. 85 00:03:02,880 --> 00:03:03,750 -Timmen koden. 86 00:03:03,750 --> 00:03:06,410 -Timmen koden. 87 00:03:06,410 --> 00:03:08,555 -Oavsett om du är ung man eller en ung kvinna. 88 00:03:08,555 --> 00:03:11,127 Oavsett om du bor i en stad eller landsbygd. 89 00:03:11,127 --> 00:03:13,876 -Alla i detta land bör lära sig att programmera en dator. 90 00:03:13,876 --> 00:03:15,001 -Och jag just avslutat - 91 00:03:15,001 --> 00:03:16,050 -Timme för kod. 92 00:03:16,050 --> 00:03:17,790 -Det är faktiskt riktigt enkelt att lära sig. 93 00:03:17,790 --> 00:03:19,330 -Tjejer ska lära sig detta också. 94 00:03:19,330 --> 00:03:22,940 -Förstå att språket det kommer att bli i framtiden. 95 00:03:22,940 --> 00:03:24,420 -Vem som helst kan lära sig datavetenskap. 96 00:03:24,420 --> 00:03:25,378 -Och du kan lära dig också. 97 00:03:25,378 --> 00:03:29,374 -Jack Dorsey, Mark Zuckerberg, Bill Gates, alla ni, jag lära. 98 00:03:29,374 --> 00:03:30,040 -Ge det en chans. 99 00:03:30,040 --> 00:03:43,330 100 00:03:43,330 --> 00:03:44,300 >> [END VIDEOAVSPELNING] 101 00:03:44,300 --> 00:03:47,610 >> Nu något säger mig att om du är i CS50 eller är i CS50x, 102 00:03:47,610 --> 00:03:50,850 du har spenderat väl mer än bara en timme på kodning. 103 00:03:50,850 --> 00:03:53,080 Men för alla familjemedlemmar, vänner eller kollegor 104 00:03:53,080 --> 00:03:56,450 som du skulle vilja presentera för detta värld, här är en annan incitament. 105 00:03:56,450 --> 00:03:57,440 Kom ihåg den här killen? 106 00:03:57,440 --> 00:03:59,860 Mycket populär på senare tid, har varit en s.k. flappy 107 00:03:59,860 --> 00:04:01,540 fågel på olika plattformar. 108 00:04:01,540 --> 00:04:05,310 Och här har vi en webbadress, at code.org / flappy, 109 00:04:05,310 --> 00:04:08,400 där vänliga fjärrkontrollfunktion vid code.org kan sätta ihop ett verktyg genom vilket du 110 00:04:08,400 --> 00:04:12,570 eller en vän kan göra din egen genomförandet av det populära spelet. 111 00:04:12,570 --> 00:04:13,910 Så gör kolla upp det. 112 00:04:13,910 --> 00:04:15,811 >> Nu när konferensen, och i fredags. 113 00:04:15,811 --> 00:04:18,060 Rob Bowden och jag där igen, bort vid denna konferens, 114 00:04:18,060 --> 00:04:19,768 och vi tänkte som har en gäst-värd. 115 00:04:19,768 --> 00:04:22,174 Och vi försökte ut ganska få folk för auditions. 116 00:04:22,174 --> 00:04:24,090 Ingen av dem verkade träna, så vi tänkte 117 00:04:24,090 --> 00:04:27,110 vi skulle visa några klipp av vad gjorde sippra. 118 00:04:27,110 --> 00:04:27,810 >> [VIDEO SPELA] 119 00:04:27,810 --> 00:04:31,670 >> RAMON GALVAN: Jag är Ramon Galvan fyllning in för din normala värd, David Malan. 120 00:04:31,670 --> 00:04:40,340 Den amerikanska militärens lösenord var 000000, inte riktigt säker om du frågar mig. 121 00:04:40,340 --> 00:04:43,430 Ändå, jag älskar dig. 122 00:04:43,430 --> 00:04:45,650 Till skillnad från David, som cirklar runt dig. 123 00:04:45,650 --> 00:04:48,880 124 00:04:48,880 --> 00:04:51,040 Låt oss inte gå över detta misstag. 125 00:04:51,040 --> 00:04:53,067 Vad är detta om? 126 00:04:53,067 --> 00:04:54,733 Låt oss bara se en video med Harry Lewis. 127 00:04:54,733 --> 00:04:55,116 >> [END VIDEOAVSPELNING] 128 00:04:55,116 --> 00:04:57,721 >> DAVID J. MALAN: Nu, vad som är mest roligt om det klippet är inte 129 00:04:57,721 --> 00:05:00,720 hur Ramon utfört framför kamera, men hur Ramon inte vet, 130 00:05:00,720 --> 00:05:02,870 till och med ett fåtal stund sedan, att vi var 131 00:05:02,870 --> 00:05:05,860 kommer att spela dessa klipp upp här för dig på Internet. 132 00:05:05,860 --> 00:05:07,680 Så CS50 egna, Ramon Galvan. 133 00:05:07,680 --> 00:05:10,070 Kommer tillbaka kanske i en framtida episod. 134 00:05:10,070 --> 00:05:12,460 >> Nu under tiden, kanske du minns Vi lämnade sista tider episod 135 00:05:12,460 --> 00:05:14,670 på en bit av en cliffhanger, där vi nämnt 136 00:05:14,670 --> 00:05:17,250 att Rob Bowden har en tvillingbror, Paul. 137 00:05:17,250 --> 00:05:19,450 Vem, återigen, inbillar sig lite av en komiker. 138 00:05:19,450 --> 00:05:22,200 Men han råkade visas i en populär amerikansk tävling, 139 00:05:22,200 --> 00:05:23,696 och vi frågade dig vilken. 140 00:05:23,696 --> 00:05:25,570 Väl flera av er skrev in med svaret. 141 00:05:25,570 --> 00:05:27,580 Och här är ett sådant exempel. 142 00:05:27,580 --> 00:05:31,140 >> I CS50 levande, David nämnde om Robert tvillingbror, Paul Bowden, 143 00:05:31,140 --> 00:05:32,590 och frågade om att Google det. 144 00:05:32,590 --> 00:05:34,420 Jo ser ut som han är i Harvard, också. 145 00:05:34,420 --> 00:05:37,990 Och, vem vill bli miljonär, och ja, om jag är den första 146 00:05:37,990 --> 00:05:41,810 att rapportera detta, David, sir, skulle jag vara glad att vara känd på nästa CS50 147 00:05:41,810 --> 00:05:42,310 leva. 148 00:05:42,310 --> 00:05:45,400 Så anser dig berömd eftersom svaret var ja, 149 00:05:45,400 --> 00:05:46,650 Vem vill bli miljonär. 150 00:05:46,650 --> 00:05:50,390 Och faktiskt, här är Paul Bowden vid sidan TV-show värd. 151 00:05:50,390 --> 00:05:53,344 Och vi gjorde också en bit av gräva, och hittade det här klippet för dig. 152 00:05:53,344 --> 00:05:54,010 [VIDEO SPELA] 153 00:05:54,010 --> 00:05:56,410 -Paul Bowden från Franklin, New Jersey. 154 00:05:56,410 --> 00:05:59,290 155 00:05:59,290 --> 00:05:59,897 Hej Paul. 156 00:05:59,897 --> 00:06:00,730 Välkommen till showen. 157 00:06:00,730 --> 00:06:02,650 >> -Tack. 158 00:06:02,650 --> 00:06:06,140 >> -Paulus det står här att du är en sophomore vid Harvard University, uppenbarligen 159 00:06:06,140 --> 00:06:07,840 en smart kille. 160 00:06:07,840 --> 00:06:09,400 >> -Jag antar det. 161 00:06:09,400 --> 00:06:11,384 >> -Jo i min bok som verkligen föreslår så. 162 00:06:11,384 --> 00:06:13,800 Och jag vet att när du var står i kö för Millionaire, 163 00:06:13,800 --> 00:06:17,420 ett tecken från himlen sa att du är förmodligen kommer att göra bra, eller hur? 164 00:06:17,420 --> 00:06:19,260 >> -Det kan man säga. 165 00:06:19,260 --> 00:06:22,920 När jag stod i linje hade jag en polotröja som var undangömt i 166 00:06:22,920 --> 00:06:26,300 och en fågel hände med bajs rätt ner på baksidan av min tröja. 167 00:06:26,300 --> 00:06:28,510 Och det var fortfarande instoppad i. 168 00:06:28,510 --> 00:06:30,390 Men det slutade lycka. 169 00:06:30,390 --> 00:06:32,070 >> -Det är tur, se? 170 00:06:32,070 --> 00:06:33,440 Där du går, du är här. 171 00:06:33,440 --> 00:06:35,086 Okej, Paul. 172 00:06:35,086 --> 00:06:36,440 Är du redo? 173 00:06:36,440 --> 00:06:36,941 >> -Jag är redo. 174 00:06:36,941 --> 00:06:37,440 -Okej. 175 00:06:37,440 --> 00:06:38,685 Sedan ska vi spela miljonär. 176 00:06:38,685 --> 00:06:41,360 177 00:06:41,360 --> 00:06:44,120 Och din bror har suttit bakom dig, din bror Rob. 178 00:06:44,120 --> 00:06:45,220 Hur är du, Rob? 179 00:06:45,220 --> 00:06:46,150 >> -Jag är bra hur mår du? 180 00:06:46,150 --> 00:06:47,421 >> -Twin bror. 181 00:06:47,421 --> 00:06:47,920 -Ja. 182 00:06:47,920 --> 00:06:50,290 -Nu är du, den yngre men, du kom ut sex minuter senare, eller hur? 183 00:06:50,290 --> 00:06:51,130 Är det korrekt? 184 00:06:51,130 --> 00:06:51,650 >> -Jag är, ja. 185 00:06:51,650 --> 00:06:53,970 >> -Men är du smartare bror? 186 00:06:53,970 --> 00:06:55,480 >> -Jo, jag vill inte skryta. 187 00:06:55,480 --> 00:06:56,765 Så jag kan inte svara på det. 188 00:06:56,765 --> 00:06:58,600 >> [END VIDEOAVSPELNING] 189 00:06:58,600 --> 00:07:02,610 >> -Så Rob har en tvilling, skriver en annan av dina klasskamrater, hmm intressant. 190 00:07:02,610 --> 00:07:04,410 Hur djupt går kaninhålet vägen? 191 00:07:04,410 --> 00:07:08,290 Jag har en fråga, varför problem set tar så lång tid att autograded? 192 00:07:08,290 --> 00:07:09,860 Vad händer bakom kulisserna? 193 00:07:09,860 --> 00:07:11,590 Så vi trodde att detta skulle faktiskt vara en bra fråga 194 00:07:11,590 --> 00:07:14,930 att besvara eftersom det antyder lite hos en underliggande intressant teknisk 195 00:07:14,930 --> 00:07:15,620 detaljer. 196 00:07:15,620 --> 00:07:18,880 Tvärtemot vad många tror, ​​de är inte faktiskt betygsätts av Mupparna, utan snarare 197 00:07:18,880 --> 00:07:21,950 av en infrastruktur som vi känner som Check 50 på klienten. 198 00:07:21,950 --> 00:07:25,350 Och en infrastruktur som vi känner det sandlåda 50 på serversidan. 199 00:07:25,350 --> 00:07:27,250 >> Nu för dem obekanta, för att testa 200 00:07:27,250 --> 00:07:30,009 riktigheten av några av CS50 problem ställa problem, 201 00:07:30,009 --> 00:07:32,050 du kan köra ett kommando i den CS50 apparat känd 202 00:07:32,050 --> 00:07:35,355 som kontroll 50, där du anger en unik identifierare för testet 203 00:07:35,355 --> 00:07:36,230 som du vill köra. 204 00:07:36,230 --> 00:07:38,050 Och då du anger sökvägarna till filen 205 00:07:38,050 --> 00:07:40,697 eller filer som du vill ladda upp till servrar för testning. 206 00:07:40,697 --> 00:07:42,780 Nu, när svaret kommer tillbaka från servern, 207 00:07:42,780 --> 00:07:45,820 förhoppningsvis ser du alla gröna smiley ansikten, som de här, 208 00:07:45,820 --> 00:07:49,000 vilket tyder på att jag skrev "Hej, världen" mycket korrekt. 209 00:07:49,000 --> 00:07:51,630 Däremot, om jag gjorde något fel, som faktiskt inte 210 00:07:51,630 --> 00:07:55,045 namnge filen på rätt sätt, kanske jag få denna skrämmande röda olyckligt ansikte 211 00:07:55,045 --> 00:07:58,230 säger hej.c existerar, vilket betyder att det inte 212 00:07:58,230 --> 00:07:59,669 i själva verket, som indikeras av den röda. 213 00:07:59,669 --> 00:08:01,460 Och om något är i gult, under tiden, det 214 00:08:01,460 --> 00:08:04,400 innebär att dessa kontroller inte ens köras på grund av något beroende, 215 00:08:04,400 --> 00:08:07,030 några tidigare testet gjorde i själva verket inte lyckas. 216 00:08:07,030 --> 00:08:09,164 >> Så vad som verkligen händer under huven? 217 00:08:09,164 --> 00:08:11,080 Bra när du kör det här kontrollera 50-kommandot, vi är 218 00:08:11,080 --> 00:08:12,830 väsentligen zipping upp alla dina filer, 219 00:08:12,830 --> 00:08:16,510 komprimera dem, skicka dem till se CS50 s kluster av servrar, där 220 00:08:16,510 --> 00:08:19,090 vi sedan skapa vad som kallas en sandlåda runt dem. 221 00:08:19,090 --> 00:08:21,100 I huvudsak kan du tänka av detta som en mapp, 222 00:08:21,100 --> 00:08:25,250 och som en speciell användare som existerar enbart i syfte att sammanställa 223 00:08:25,250 --> 00:08:28,790 och kör den specifika koden isolerat från någon annans, 224 00:08:28,790 --> 00:08:32,480 så att i fall en elev har en oavsiktlig oändlig loop eller sämre, 225 00:08:32,480 --> 00:08:35,200 det kommer inte att nödvändigtvis påverkar någon annan på systemet. 226 00:08:35,200 --> 00:08:39,200 Inte heller kan några filer manipuleras eller bort som inte bör tillåtas. 227 00:08:39,200 --> 00:08:41,159 >> Nu, hur koden få testas? 228 00:08:41,159 --> 00:08:45,950 Tja, skrev vi en hel infrastruktur heter igen, sandlåda - CS 50 sandlåda. 229 00:08:45,950 --> 00:08:48,470 Och denna infrastruktur är skrivet, överraskning, 230 00:08:48,470 --> 00:08:49,980 på ett språk som kallas Javascript. 231 00:08:49,980 --> 00:08:53,000 Som du kanske vet, från klientsida erfarenheter, men det visar sig 232 00:08:53,000 --> 00:08:55,490 Du kan även använda JavaScript på serversidan. 233 00:08:55,490 --> 00:08:57,450 Vad göra en del av de tester egentligen ser ut? 234 00:08:57,450 --> 00:09:01,260 Väl här är några serversidan JavaScript kod, och det är bara ett utdrag därav. 235 00:09:01,260 --> 00:09:04,710 Men detta utgör två kontroller att vi kan köra på din kod. 236 00:09:04,710 --> 00:09:08,360 >> Den första av dessa upp topp där, kontrollerar huruvida filen hej.c förekommer, 237 00:09:08,360 --> 00:09:11,880 och den andra en faktiskt kontrollerar om filen samman OK. 238 00:09:11,880 --> 00:09:15,080 Och det är det som i slutändan genererar dessa olyckliga ansikten 239 00:09:15,080 --> 00:09:18,479 eller de glada ansikten som du ser i form av check 50 resultat. 240 00:09:18,479 --> 00:09:20,270 Nu, för mycket mer tekniska detaljer, du 241 00:09:20,270 --> 00:09:23,436 Välkommen att ta en titt på detta papper Här, som en tillfällighet var faktiskt 242 00:09:23,436 --> 00:09:25,680 presenterades vid förra årets SIGCSE konferens, 243 00:09:25,680 --> 00:09:28,660 och det dyker in mycket mer detalj om hur det systemet fungerar 244 00:09:28,660 --> 00:09:31,010 och varför vi byggde det förra året. 245 00:09:31,010 --> 00:09:33,180 >> Nu, i media för sent, har detta uttryck 246 00:09:33,180 --> 00:09:35,640 här - goto misslyckas, det s.k. goto misslyckas 247 00:09:35,640 --> 00:09:38,410 bugg som plågat Apple Dator nyligen. 248 00:09:38,410 --> 00:09:42,021 Nu behöver vi inte införa detta i CS 50, eftersom goto uttalande i C 249 00:09:42,021 --> 00:09:44,770 allmänt ogillande, även även om det definitivt har sina användningsområden. 250 00:09:44,770 --> 00:09:47,490 Och vad detta betyder här, goto misslyckas, är att oavsett 251 00:09:47,490 --> 00:09:50,550 Programmet har denna linje av kod, ska gå till, är att 252 00:09:50,550 --> 00:09:54,290 hoppa till, en annan kodrad oberoende av några rader 253 00:09:54,290 --> 00:09:58,300 i mellan det och att kodrad kommer att märkas med sökordet misslyckas. 254 00:09:58,300 --> 00:10:01,005 >> Och misslyckas kan vara vad som helst, en FUBAR [? BES?] Men i det här fallet, 255 00:10:01,005 --> 00:10:03,630 Apple valde att kalla det misslyckas eftersom det är den bit av kod som 256 00:10:03,630 --> 00:10:06,850 ska köras om och när något har misslyckats. 257 00:10:06,850 --> 00:10:10,717 Nu, tyvärr, gjorde Apple ett misstag med detta uttalande, som vi snart kommer att se. 258 00:10:10,717 --> 00:10:12,550 Och de nyligen släppte detta meddelande 259 00:10:12,550 --> 00:10:14,710 i en av sina bug fix rapporter. 260 00:10:14,710 --> 00:10:16,950 En angripare med en privilegierat nätverk ställning 261 00:10:16,950 --> 00:10:21,880 kan fånga eller ändra data i sessioner som skyddas av SSL / TLS. 262 00:10:21,880 --> 00:10:24,250 SSL, minns, var säker Sockets Layer, och det är 263 00:10:24,250 --> 00:10:28,070 den teknik som används för normalt kryptera trafiken mellan en webbläsare, 264 00:10:28,070 --> 00:10:31,730 säga på en Mac eller en iPhone, eller någon annan enhet, och en webbserver. 265 00:10:31,730 --> 00:10:33,400 Och TLS är relaterad till det. 266 00:10:33,400 --> 00:10:36,670 >> Denna fråga togs upp av återställa saknade valideringssteg. 267 00:10:36,670 --> 00:10:40,350 Så detta var Apples beskrivning av problemet och lösningen därtill. 268 00:10:40,350 --> 00:10:41,630 Men vad gjorde det egentligen? 269 00:10:41,630 --> 00:10:44,171 Så vi gjorde en del grävande, och vi faktiskt hittat källkoden 270 00:10:44,171 --> 00:10:49,170 för Apples eget genomförande av SSL, vilket även det påverkar Mac eller iPhone, 271 00:10:49,170 --> 00:10:51,970 särskilt om du använder Safari på dessa datorer. 272 00:10:51,970 --> 00:10:53,890 Här är ett utdrag från det numret. 273 00:10:53,890 --> 00:10:56,140 >> Nu, du kanske inte känner igen några av funktionerna. 274 00:10:56,140 --> 00:10:59,560 Och du kanske inte känner igen användningen en går till uttalande hittills. 275 00:10:59,560 --> 00:11:01,480 Men det är något bekant syntax. 276 00:11:01,480 --> 00:11:04,900 Vi har en del om förhållanden, vissa indrag, en funktion, klammerparenteser. 277 00:11:04,900 --> 00:11:06,340 Så inte så främmande. 278 00:11:06,340 --> 00:11:07,780 Men låt oss zooma in en liten bit. 279 00:11:07,780 --> 00:11:11,590 Här, anpassa sig till dessa villkor, och här är omnämnande av goto misslyckas. 280 00:11:11,590 --> 00:11:12,579 Nu, vad är inte? 281 00:11:12,579 --> 00:11:14,870 Nåväl låt oss faktiskt rulla ned ytterligare i programmet. 282 00:11:14,870 --> 00:11:17,360 Dessa är de linjer av kod, de tre rader som 283 00:11:17,360 --> 00:11:20,970 exekveras om du behöver verkligen gå att misslyckas. 284 00:11:20,970 --> 00:11:22,430 >> Nu, vad är problemet då? 285 00:11:22,430 --> 00:11:24,430 Nåväl, låt oss gå tillbaka upp till sådana förhållanden där 286 00:11:24,430 --> 00:11:28,630 Jag har markerat i gult alla omnämnanden av goto misslyckas. 287 00:11:28,630 --> 00:11:30,860 Se något nyfiken? 288 00:11:30,860 --> 00:11:32,210 Fokus på botten där. 289 00:11:32,210 --> 00:11:32,710 Rätt? 290 00:11:32,710 --> 00:11:34,830 Koden kan vara ny, men idéerna är det inte. 291 00:11:34,830 --> 00:11:37,130 Om vi ​​zoomar in här, kommer du märka att programmeraren 292 00:11:37,130 --> 00:11:40,200 har skrivit goto misslyckas två gånger, men indragen dem båda. 293 00:11:40,200 --> 00:11:44,445 Men du kan ha gjort samma misstag själv i vissa problem för CS 50. 294 00:11:44,445 --> 00:11:47,070 Bara för att du indrag två rader för kod inuti ett villkor 295 00:11:47,070 --> 00:11:49,111 betyder inte att de är båda går att köra. 296 00:11:49,111 --> 00:11:52,240 De är bara båda kommer att köra om du faktiskt omger dem båda 297 00:11:52,240 --> 00:11:53,100 med vad? 298 00:11:53,100 --> 00:11:54,320 Curly hängslen. 299 00:11:54,320 --> 00:11:57,130 >> Så vad som verkligen händer om Jag sorts fixa indraget 300 00:11:57,130 --> 00:12:01,330 och inte lägga några klamrar, vad är verkligen händer under huven, 301 00:12:01,330 --> 00:12:03,920 är att goto inte har huvudsak lämnat alliansen här, 302 00:12:03,920 --> 00:12:07,100 vilket innebär att det kommer att köra oavsett vad. 303 00:12:07,100 --> 00:12:09,640 Och du kommer att gå till, eller hoppa till, de tre 304 00:12:09,640 --> 00:12:12,500 kodrader vi tittade på för en stund sedan. 305 00:12:12,500 --> 00:12:14,330 Så vad är innebörden? 306 00:12:14,330 --> 00:12:17,760 Tja, ta en titt på dem nedersta två raderna här. 307 00:12:17,760 --> 00:12:20,450 Dessa linjer kommer aldrig, någonsin få nått. 308 00:12:20,450 --> 00:12:22,780 Därför att oavsett vad, att andra goto misslyckas 309 00:12:22,780 --> 00:12:25,790 kommer att tvinga programmet att hoppa rätt över dessa linjer. 310 00:12:25,790 --> 00:12:28,030 Och lång historia kort, dessa två sista raderna 311 00:12:28,030 --> 00:12:31,100 är faktiskt viktig för riktigheten av SSL. 312 00:12:31,100 --> 00:12:35,610 >> Faktum är att om de inte utför, är det möjligt eller en motståndare, en skurk, 313 00:12:35,610 --> 00:12:38,210 att föra det som är allmänt känt som en man i mitten attack, 314 00:12:38,210 --> 00:12:41,860 låtsas vara en säker webbplats gillar Facebook, eller Amazon eller Google. 315 00:12:41,860 --> 00:12:45,680 Men egentligen bara se - med en krypterad anslutning till dig, 316 00:12:45,680 --> 00:12:48,792 och de sedan vidarebefordra din trafik tillsammans, på gott och ont. 317 00:12:48,792 --> 00:12:50,750 Möjligen ditt användarnamn, möjligen ditt lösenord, 318 00:12:50,750 --> 00:12:54,080 möjligen dina kreditkortsuppgifter, till den aktuella platsen i fråga. 319 00:12:54,080 --> 00:12:55,410 Eller inte ens alls. 320 00:12:55,410 --> 00:12:57,656 Med andra ord, bryter detta SSL. 321 00:12:57,656 --> 00:12:59,280 Nu tack och lov, Apple gjorde itu med detta. 322 00:12:59,280 --> 00:13:01,930 Både för Mac OS och iOS nyligen. 323 00:13:01,930 --> 00:13:04,790 Men om du vill dubbelkolla datorn är nu aktuell, 324 00:13:04,790 --> 00:13:08,630 förutsatt att du har automatiska uppdateringar på, huvud till gotofail.com 325 00:13:08,630 --> 00:13:11,440 och du kommer att se en fin liten test som kommer att berätta så mycket. 326 00:13:11,440 --> 00:13:14,190 Under tiden, om du vill ta en titta på själva källkoden, 327 00:13:14,190 --> 00:13:16,990 Detta är en lång URL, men här är det Hela källkoden för den filen 328 00:13:16,990 --> 00:13:19,740 Om du vill få en känsla av vad den verkliga världen programmering är 329 00:13:19,740 --> 00:13:22,310 liknande, och ärligt talat verkliga buggar. 330 00:13:22,310 --> 00:13:25,390 >> På tal om buggar, var detta meme cirkulerat ganska lite sent. 331 00:13:25,390 --> 00:13:28,670 99 små buggar i koden, 99 små buggar i koden, 332 00:13:28,670 --> 00:13:32,650 ta en ner, patch runt, 127 små buggar i koden. 333 00:13:32,650 --> 00:13:34,010 Så vad är det här om? 334 00:13:34,010 --> 00:13:36,410 Möjligen är detta en upplevelse du själv har haft, 335 00:13:36,410 --> 00:13:39,400 där du försöker jaga lite bugg, och sedan en annan, eller kanske 336 00:13:39,400 --> 00:13:42,290 ännu fler buggar våren upp som ett resultat av din ha försökt 337 00:13:42,290 --> 00:13:43,829 att ta itu med ett problem. 338 00:13:43,829 --> 00:13:45,620 I själva verket, för att detta skall hit hem ännu längre, 339 00:13:45,620 --> 00:13:48,080 låt oss dra upp ett ansikte som kanske är bekant. 340 00:13:48,080 --> 00:13:49,730 Hal från Malcolm i en mitt. 341 00:13:49,730 --> 00:13:50,850 >> [VIDEO SPELA] 342 00:13:50,850 --> 00:13:52,818 >> [MUSIK SPELA] 343 00:13:52,818 --> 00:14:17,587 344 00:14:17,587 --> 00:14:18,420 [END VIDEOAVSPELNING] 345 00:14:18,420 --> 00:14:21,128 DAVID J. MALAN: Och nu några hellos från några av dina klasskamrater. 346 00:14:21,128 --> 00:14:24,405 Upp först är Khalid, och en vän till hans som kommer från norra Virginia 347 00:14:24,405 --> 00:14:26,030 i USA. 348 00:14:26,030 --> 00:14:30,590 >> KHALID: Ahoy CS50 kompisar, min namn är Khalid [OHÖRBAR]. 349 00:14:30,590 --> 00:14:35,580 Möt min papegoja, [OHÖRBAR] Jag bor i norra Virginia. 350 00:14:35,580 --> 00:14:41,070 Jag är en åttonde grader och jag är glada över att vara en del av CS50 klass. 351 00:14:41,070 --> 00:14:46,340 Detta är bra att uppleva en högskola men stanna hemma. 352 00:14:46,340 --> 00:14:49,980 Som du kan gissa, jag inskriven i online-lärande. 353 00:14:49,980 --> 00:14:54,380 Känn dig fri att uppleva mitt första projekt här. 354 00:14:54,380 --> 00:14:56,579 Se dig omkring. 355 00:14:56,579 --> 00:14:58,620 DAVID J. MALAN: Och nu låt oss gå till Kansas City, 356 00:14:58,620 --> 00:15:00,464 Missouri där Derek väntar. 357 00:15:00,464 --> 00:15:03,380 Derek var på jobbet när han filmade detta så att du kan höra lite av buller 358 00:15:03,380 --> 00:15:07,170 i bakgrunden sedan han arbetar i ett datacenter. 359 00:15:07,170 --> 00:15:10,520 >> DEREK MITCHELL: Hej världen, mitt namn är Derek Mitchell. 360 00:15:10,520 --> 00:15:12,930 Jag är i Kansas City, Missouri. 361 00:15:12,930 --> 00:15:16,790 Och jag tar det CS50 klass för att jag verkligen 362 00:15:16,790 --> 00:15:19,830 behöver lära sig en del programmering för mitt jobb. 363 00:15:19,830 --> 00:15:20,770 Det är där jag jobbar. 364 00:15:20,770 --> 00:15:27,030 Jag är ett regionalt stöd tekniker för Cabelas, världens främsta outfitter. 365 00:15:27,030 --> 00:15:31,160 Och jag försöker bara lära sig lite mer programmering så jag kan utmärka sig på min karriär 366 00:15:31,160 --> 00:15:33,690 och bara vara en bättre tekniker. 367 00:15:33,690 --> 00:15:40,600 Så återigen, jag heter Derek Mitchell och detta är CS50. 368 00:15:40,600 --> 00:15:45,950 >> [Talar italienska] 369 00:15:45,950 --> 00:15:47,110 >> FEDERICO: Hej världen. 370 00:15:47,110 --> 00:15:48,318 Mitt namn är Federico Grivelli. 371 00:15:48,318 --> 00:15:49,210 Jag kommer från Italien. 372 00:15:49,210 --> 00:15:52,670 Jag är född i en av de största städer i landet, Milano. 373 00:15:52,670 --> 00:15:56,720 Och jag var faktiskt upp i en mindre stad intill Milano. 374 00:15:56,720 --> 00:16:00,740 Så här börjar min längtan på att utvidga mina vyer. 375 00:16:00,740 --> 00:16:04,910 Och detta därför i dag är jag en utländsk utbytesstudent i staten Washington. 376 00:16:04,910 --> 00:16:07,260 Naturligtvis, Förenta staterna. 377 00:16:07,260 --> 00:16:10,545 Så amerikansk utbildning är verkligen skiljer sig från italienska. 378 00:16:10,545 --> 00:16:14,150 Här får jag mycket mer praktisk erfarenhet, 379 00:16:14,150 --> 00:16:17,870 snarare än studier och memorering. 380 00:16:17,870 --> 00:16:24,430 Så det här var jag, återigen är mitt namn Federico Grivelli, och detta är en CS50. 381 00:16:24,430 --> 00:16:27,240 >> DAVID J. MALAN: Och nu ett hej från någon som vi inte väntade. 382 00:16:27,240 --> 00:16:28,380 >> SARAH COFFEY: Hej världen. 383 00:16:28,380 --> 00:16:32,030 Mitt namn är Sarah Coffey, jag är från Maltham, Massachusetts, 384 00:16:32,030 --> 00:16:35,810 och jag är gift med CS50: s egen Dan Coffey. 385 00:16:35,810 --> 00:16:39,592 Dan, jag ville bara önska dig en mycket trevlig födelsedag. 386 00:16:39,592 --> 00:16:42,550 DAVID J. MALAN: Han vet inte det här är på väg att hända, men CS50 egen, 387 00:16:42,550 --> 00:16:44,770 Danny Coffey, är rätt nu i kontrollrummet. 388 00:16:44,770 --> 00:16:49,125 Men är på väg att vara på internet, för i dag är 29: e födelsedag. 389 00:16:49,125 --> 00:16:51,865 390 00:16:51,865 --> 00:16:53,308 Kom ut Dan. 391 00:16:53,308 --> 00:16:57,160 392 00:16:57,160 --> 00:17:01,306 Kom ut, Dan, annars detta håller på att bli mycket besvärliga. 393 00:17:01,306 --> 00:17:04,010 Dan? 394 00:17:04,010 --> 00:17:08,040 I år är Dan Coffey, visste inte detta kommer att hända - vi 395 00:17:08,040 --> 00:17:10,780 Naturligtvis har förberett detta. 396 00:17:10,780 --> 00:17:20,980 Så glad 29: e födelsedag, och vi hoppas du är verkligen förvånad. 397 00:17:20,980 --> 00:17:23,741 Nej, det, på annat sätt, på annat sätt. 398 00:17:23,741 --> 00:17:24,240 Nej det var. 399 00:17:24,240 --> 00:17:24,889 >> DAN COFFEY: Så där. 400 00:17:24,889 --> 00:17:26,430 >> DAVID J. MALAN: Dan Coffey, alla. 401 00:17:26,430 --> 00:17:28,460 Tack så mycket Dan, för att komma ut. 402 00:17:28,460 --> 00:17:32,400 Och nu, 60 sekunder av pandor. 403 00:17:32,400 --> 00:17:33,676 >> [VIDEO SPELA] 404 00:17:33,676 --> 00:17:36,156 >> [MUSIK SPELA] 405 00:17:36,156 --> 00:18:32,077 406 00:18:32,077 --> 00:18:32,910 [END VIDEOAVSPELNING] 407 00:18:32,910 --> 00:18:34,670 DAVID J. MALAN: Nu kan du minns från en ny episod, 408 00:18:34,670 --> 00:18:37,830 att vi introducerade LaunchCode, en initiativ i Saint Louis, Missouri, 409 00:18:37,830 --> 00:18:40,200 drivs av frivilliga som har följt tillsammans 410 00:18:40,200 --> 00:18:43,304 med CS50 läroplan och vägledande medborgare i Saint Louis 411 00:18:43,304 --> 00:18:46,470 via detta material mot en ände av hjälpa till att koppla ihop dem med programmering 412 00:18:46,470 --> 00:18:48,530 jobb i slutet av terminen. 413 00:18:48,530 --> 00:18:51,360 Ni kanske minns faktiskt, att detta initiativ var så populär 414 00:18:51,360 --> 00:18:55,749 i Saint Louis, att de nästan svämmade den lokala operahuset. 415 00:18:55,749 --> 00:18:57,540 Well, LaunchCode ter Grundarna mycket nådigt 416 00:18:57,540 --> 00:18:59,610 kom till campus nyligen och enades om att sitta ner 417 00:18:59,610 --> 00:19:02,830 med oss ​​i Sanders Theatre för en pratstund om vad LaunchCode är 418 00:19:02,830 --> 00:19:04,589 och hur den har pågått. 419 00:19:04,589 --> 00:19:07,880 DAVID J. MALAN: Vi är här i dag med vår vänner från LaunchCode som har flugit 420 00:19:07,880 --> 00:19:10,410 i hela vägen från Louis för att säga hej. 421 00:19:10,410 --> 00:19:11,279 Hej alla. 422 00:19:11,279 --> 00:19:12,070 JIM McKelvey: Hej. 423 00:19:12,070 --> 00:19:14,819 DAVID J. MALAN: Vem har vi här med oss ​​i dag från LaunchCode. 424 00:19:14,819 --> 00:19:16,304 JIM McKelvey: Så, jag är Jim McKelvey. 425 00:19:16,304 --> 00:19:17,720 BRENDAN LIND: Och jag är Brendan Lind. 426 00:19:17,720 --> 00:19:19,050 ZACH LOU: Och jag är Zach Lou. 427 00:19:19,050 --> 00:19:20,020 DAVID J. MALAN: Och för dem obekanta, 428 00:19:20,020 --> 00:19:22,005 kan du berätta lite om vad LaunchCode är? 429 00:19:22,005 --> 00:19:24,380 >> JIM McKelvey: Så LaunchCode är en arbetsförmedling-system 430 00:19:24,380 --> 00:19:26,880 att vi är banbrytande med början i St Louis, 431 00:19:26,880 --> 00:19:28,600 men vi kommer att ta med den rikstäckande. 432 00:19:28,600 --> 00:19:31,460 Idén i grunden är att få företag att ändra sin anställning 433 00:19:31,460 --> 00:19:34,640 metoder för att ta emot personer som har icke traditionella meriter. 434 00:19:34,640 --> 00:19:39,350 Så vi vet, som programmerare, att många av de bästa programmerarna 435 00:19:39,350 --> 00:19:41,720 är självlärd i viss utsträckning. 436 00:19:41,720 --> 00:19:44,869 Och företagen inte nödvändigtvis känner igen 437 00:19:44,869 --> 00:19:46,160 detta i sina anställningsförfaranden. 438 00:19:46,160 --> 00:19:49,240 Så om du är en bra kodare, du ändå inte nödvändigtvis 439 00:19:49,240 --> 00:19:51,080 ha en väg till ett bra jobb. 440 00:19:51,080 --> 00:19:53,400 >> Och så började vi arbeta med ett hundratal företag 441 00:19:53,400 --> 00:19:55,790 från miljarder dollar företag som Enterprise, 442 00:19:55,790 --> 00:19:59,670 och Mastercard, ned till två-man nystartade företag. 443 00:19:59,670 --> 00:20:03,720 Och vi har fått dem alla att komma överens att ta LaunchCode kandidater in, 444 00:20:03,720 --> 00:20:05,230 i grund och botten ett lärlingssystem. 445 00:20:05,230 --> 00:20:07,920 >> DAVID J. MALAN: Och hur hittade du CS50: s material i första hand. 446 00:20:07,920 --> 00:20:09,461 >> JIM McKelvey: Så det var verkligen roligt. 447 00:20:09,461 --> 00:20:14,310 Min fru tog din klass på nätet genom Harvard Extension. 448 00:20:14,310 --> 00:20:17,560 Och hon tog Fall 2012 CS50. 449 00:20:17,560 --> 00:20:22,010 Och medan vi var, jag är en datavetare genom utbildning. 450 00:20:22,010 --> 00:20:25,180 Och så jag hjälpte henne genom klassen, tittade jag på den. 451 00:20:25,180 --> 00:20:30,980 Och hon sa, du vet, det här är som erbjuds online via EDX, 452 00:20:30,980 --> 00:20:36,960 och vi placerar dessa människor, som har mycket lite traditionella meriter, 453 00:20:36,960 --> 00:20:38,870 och vi är som, skulle det vara fantastiskt. 454 00:20:38,870 --> 00:20:40,540 Så det är hur vi fick reda på det. 455 00:20:40,540 --> 00:20:41,535 Genom m fru, Anna. 456 00:20:41,535 --> 00:20:42,994 Och din Harvard Extension Program. 457 00:20:42,994 --> 00:20:44,201 DAVID J. MALAN: Det är roligt. 458 00:20:44,201 --> 00:20:47,620 Det är ett sådant litet beslut, hennes tagande klasserna hade en sådan inverkan då. 459 00:20:47,620 --> 00:20:49,940 >> JIM McKelvey: Det var super lycklig. 460 00:20:49,940 --> 00:20:53,931 Och vi var verkligen glada att se att ni arbetade med EDX 461 00:20:53,931 --> 00:20:56,430 och göra den tillgänglig, och alla kompletterande material. 462 00:20:56,430 --> 00:20:58,840 Och det är fantastiskt resurs för utbildning. 463 00:20:58,840 --> 00:20:59,590 David J. MALAN: OK. 464 00:20:59,590 --> 00:21:02,596 Tja, i nyheterna, vi faktiskt kom över en titt 465 00:21:02,596 --> 00:21:05,720 på vad den första natten av LaunchCode var när du var i operahuset. 466 00:21:05,720 --> 00:21:07,520 Kan du ge oss en firsthand redogörelse för vad 467 00:21:07,520 --> 00:21:09,840 din upplevelse var den kvällen? 468 00:21:09,840 --> 00:21:11,880 >> JIM McKelvey: Ja, så jag var i Rom. 469 00:21:11,880 --> 00:21:14,950 Och Brendan ringde mig klockan 3:00 på morgonen, och sade, 470 00:21:14,950 --> 00:21:17,140 Vi har svämmade alla tre arenor. 471 00:21:17,140 --> 00:21:21,360 Så vi hade Christ Church Domkyrkan, Downtown Library, 472 00:21:21,360 --> 00:21:24,520 och Soldiers Memorial, som är tre ganska stora arenor. 473 00:21:24,520 --> 00:21:26,390 Och vi väntade några hundra personer. 474 00:21:26,390 --> 00:21:28,550 Vi hade över 1.000 personer registrera dig. 475 00:21:28,550 --> 00:21:30,890 Så vi svämmade allt och Brendan kallar mig, 476 00:21:30,890 --> 00:21:33,840 liknande, behöver vi en större byggnad. 477 00:21:33,840 --> 00:21:36,370 Och de fick oss här jätte, denna gigantiska opera 478 00:21:36,370 --> 00:21:38,717 hus, där vi höll den första klassen. 479 00:21:38,717 --> 00:21:40,050 DAVID J. MALAN: Åh det är bra. 480 00:21:40,050 --> 00:21:42,590 JIM McKelvey: Och folk var så tacksam. 481 00:21:42,590 --> 00:21:45,930 Jag menar, de människor som vi når är 482 00:21:45,930 --> 00:21:48,089 människor som du bara vill för att hjälpa dessa människor. 483 00:21:48,089 --> 00:21:50,630 DAVID J. MALAN: Och från vad du har sett, hur realistiskt 484 00:21:50,630 --> 00:21:53,460 är det någon som kommer in i kurs utan tidigare bakgrund. 485 00:21:53,460 --> 00:21:56,150 Och några månader senare, de har 13 veckors CS50 486 00:21:56,150 --> 00:21:58,310 under sitt bälte för att faktiskt känner sig säkra nog 487 00:21:58,310 --> 00:22:01,000 och vara kvalificerad nog för en verklig programmeringsjobb. 488 00:22:01,000 --> 00:22:03,590 >> JIM McKelvey: David, Vi vet faktiskt inte, OK? 489 00:22:03,590 --> 00:22:06,770 Därför att vi inte har gjort det på någon sorts skala ännu. 490 00:22:06,770 --> 00:22:10,910 Du vet, våra datapunkter just nu är vad jag har lärt mig var möjligt. 491 00:22:10,910 --> 00:22:13,533 Och sedan 50 några människor som vi har placerats, 492 00:22:13,533 --> 00:22:15,200 Vi vet i allmänhet var de är. 493 00:22:15,200 --> 00:22:18,270 Och vår gissning är att någon som kommer genom CS50 494 00:22:18,270 --> 00:22:21,397 kommer att vara i allmänhet så skicklig som någon 495 00:22:21,397 --> 00:22:23,480 av de människor som vi har redan placerats. 496 00:22:23,480 --> 00:22:25,620 >> Så vi inte har bevisat dess omfattning ännu. 497 00:22:25,620 --> 00:22:29,140 Och jag säger inte att det är en fylla i utbildning på något sätt. 498 00:22:29,140 --> 00:22:31,990 Men det är en så bra start. 499 00:22:31,990 --> 00:22:33,640 Och det ger människor ett sammanhang. 500 00:22:33,640 --> 00:22:36,310 Och det också, du vet, det är en rigorös klass. 501 00:22:36,310 --> 00:22:40,020 Så alla som avslutar denna klass har visat något. 502 00:22:40,020 --> 00:22:43,175 Att de har visat vissa tecken eller en kombination av er 503 00:22:43,175 --> 00:22:48,170 vet, antingen uthållighet eller intelligens, eller vad den magiska formeln är 504 00:22:48,170 --> 00:22:51,660 att få dem igenom det ganska tufft klassen, 505 00:22:51,660 --> 00:22:54,420 Vi tror att det kommer att bådar mycket bra för deras framgång. 506 00:22:54,420 --> 00:22:57,340 Och vi har företag som är villig att backa upp det. 507 00:22:57,340 --> 00:22:59,700 Så, så vi vet inte riktigt. 508 00:22:59,700 --> 00:23:03,630 Men vi är mycket optimistiska om att alla som kommer genom CS50, 509 00:23:03,630 --> 00:23:06,080 Vi kan få ett jobb. 510 00:23:06,080 --> 00:23:09,320 >> BRENDAN LIND: Och saken är att LaunchCode är inte 511 00:23:09,320 --> 00:23:11,120 som din typiska hyra ingångsnivå. 512 00:23:11,120 --> 00:23:13,870 Rätt, det är inte där du kommer in och säger 513 00:23:13,870 --> 00:23:16,410 normalt du kan behöva en C.S. examen och två års arbete 514 00:23:16,410 --> 00:23:18,800 erfarenhet för att få en hel del jobb, eller hur? 515 00:23:18,800 --> 00:23:22,680 Men sedan, kommer LaunchCode in, du behöver inte någon av dessa saker. 516 00:23:22,680 --> 00:23:24,620 Du behöver inte vara kvalificerat sig till den punkten. 517 00:23:24,620 --> 00:23:26,370 Där måste man vara är har att aptitude 518 00:23:26,370 --> 00:23:27,780 och köra för att komma till den nivån. 519 00:23:27,780 --> 00:23:28,960 Så det är en lärlingsutbildning. 520 00:23:28,960 --> 00:23:31,920 Och det varar tills du är på den nivån, där 521 00:23:31,920 --> 00:23:34,040 du skulle föras in för det normala läget. 522 00:23:34,040 --> 00:23:35,910 Och företaget kan låta du går på någon punkt. 523 00:23:35,910 --> 00:23:38,000 >> DAVID J. MALAN: Så företagen är de som gör slutligen 524 00:23:38,000 --> 00:23:39,177 det ursprungliga partnerskapet. 525 00:23:39,177 --> 00:23:40,010 BRENDAN LIND: Höger. 526 00:23:40,010 --> 00:23:43,045 Så vad CS50 - vad vi är gör försöker göra med CS50 527 00:23:43,045 --> 00:23:46,320 är att få dem till den punkt där då, hej, om du kan ta CS50, 528 00:23:46,320 --> 00:23:48,620 som om du har som enhet, du har den viljan att lära sig, 529 00:23:48,620 --> 00:23:53,460 och du har som fallenhet för själv lära sig och arbeta i ett företag, 530 00:23:53,460 --> 00:23:56,160 att hantera vad det är som behövs. 531 00:23:56,160 --> 00:23:58,530 Och då kan vi få dem, Vi får dem i dörren. 532 00:23:58,530 --> 00:24:02,640 Och de får betalt, de får betalt $ 15 en timme under den tid lärlingstid. 533 00:24:02,640 --> 00:24:05,880 Och när de är redo, företaget gör dem till en anställning. 534 00:24:05,880 --> 00:24:08,570 Om de inte gör det, om företaget inte tror att de är på väg, 535 00:24:08,570 --> 00:24:09,445 De kan låta dem gå. 536 00:24:09,445 --> 00:24:14,750 Och än så länge, är att framgång som ganska mycket alla är fortfarande 537 00:24:14,750 --> 00:24:15,630 med sitt företag. 538 00:24:15,630 --> 00:24:16,540 >> David J. MALAN: OK. 539 00:24:16,540 --> 00:24:18,350 Så just nu är du fokuserade på Saint Louis, 540 00:24:18,350 --> 00:24:20,880 men jag förstår att du vill ta initiativ nationellt. 541 00:24:20,880 --> 00:24:22,790 Så vad är verkligen nästa för dig? 542 00:24:22,790 --> 00:24:25,630 >> JIM McKelvey: Så nästa är en serie av städer runt om i landet. 543 00:24:25,630 --> 00:24:28,710 Så vill vi inte att gå nationella tills vi förfina modellen, 544 00:24:28,710 --> 00:24:32,470 och kanske som ett par av dem trottoarer genom smutsen. 545 00:24:32,470 --> 00:24:34,830 Slutförandet av detta första CS50 klass är 546 00:24:34,830 --> 00:24:38,080 kommer att bli riktigt viktigt, eftersom vi får bra data från det. 547 00:24:38,080 --> 00:24:43,079 Men när vi vet vad som fungerar och vad som Vi borde verkligen göra och skalning, 548 00:24:43,079 --> 00:24:45,120 då ska vi skala så fort som möjligt, 549 00:24:45,120 --> 00:24:46,710 eftersom behovet finns överallt. 550 00:24:46,710 --> 00:24:50,260 Och vi försöker inte göra detta några sorts lokal, Saint Louis fenomen. 551 00:24:50,260 --> 00:24:52,740 Vi ska bara använda det som en testbädd. 552 00:24:52,740 --> 00:24:55,900 Och sedan kommer vi att utöka ni vet, så fort vi kan 553 00:24:55,900 --> 00:24:58,160 till platser som har liknande behov. 554 00:24:58,160 --> 00:25:00,070 >> DAVID J. MALAN: Tja, tack så mycket för allt du har gjort. 555 00:25:00,070 --> 00:25:01,610 Vi smickrad till och med vara en del av den. 556 00:25:01,610 --> 00:25:02,660 Det har varit ganska inspirerande. 557 00:25:02,660 --> 00:25:03,660 >> JIM McKelvey: Tack. 558 00:25:03,660 --> 00:25:08,610 Det har varit så generöst av bara en utbildning i världsklass att 559 00:25:08,610 --> 00:25:12,660 är tillgänglig för personer som verkligen uppskatta det. 560 00:25:12,660 --> 00:25:14,410 Jag önskar att du kunde träffa några av eleverna 561 00:25:14,410 --> 00:25:18,470 och se de människor som du vet, det förändrar liv. 562 00:25:18,470 --> 00:25:22,610 Och jag önskar bara att vi kunde nå genom kamerorna och ta med dem här. 563 00:25:22,610 --> 00:25:25,090 Men det är så meningsfullt. 564 00:25:25,090 --> 00:25:28,189 Och det rör sig nålen och det är riktigt bra. 565 00:25:28,189 --> 00:25:28,730 Så tack. 566 00:25:28,730 --> 00:25:29,980 >> DAVID J. MALAN: Tack dig från oss också. 567 00:25:29,980 --> 00:25:30,900 Uppskattar det. 568 00:25:30,900 --> 00:25:33,660 569 00:25:33,660 --> 00:25:35,660 Tack så mycket för att gå med oss. 570 00:25:35,660 --> 00:25:39,550 launchcodestl.com mer. 571 00:25:39,550 --> 00:25:43,109 >> Så vi fick chatta strax efter att prata om vad mer vi kan göra. 572 00:25:43,109 --> 00:25:44,400 Och vi kom över följande. 573 00:25:44,400 --> 00:25:48,010 Vi är så glada att tillkännage första någonsin CS50 Hackathon att 574 00:25:48,010 --> 00:25:50,500 kommer att gå på vägen till Saint Louis. 575 00:25:50,500 --> 00:25:51,780 Den LaunchCode upplagan. 576 00:25:51,780 --> 00:25:54,230 I själva verket kommer vi att ta med oss, Om du skulle vilja träffa dessa människor. 577 00:25:54,230 --> 00:25:56,563 Om du själv kommer från St Louis, eller skulle i slutändan 578 00:25:56,563 --> 00:25:59,850 gillar att lyssna på nätet, CS50 s egen Andrew kommer att vara där. 579 00:25:59,850 --> 00:26:04,720 CS50 s Chang, Colton, Dan, som du just träffat, 580 00:26:04,720 --> 00:26:11,040 Devin, Gabriel, Jason, Ramon, som ni också träffat tidigare. 581 00:26:11,040 --> 00:26:15,920 Rob Bowden, Shelly, som du kan minns från filmer som - 582 00:26:15,920 --> 00:26:17,370 och [? Zemaila?]. 583 00:26:17,370 --> 00:26:20,600 >> Så ja, om du vill med oss ​​i St Louis eller online 584 00:26:20,600 --> 00:26:24,800 at live.cs50.net, lyssna till nästa live show på fredag 585 00:26:24,800 --> 00:26:27,332 28 mars kl 6:00 Eastern Time. 586 00:26:27,332 --> 00:26:29,790 Vi kommer att vara vaken för ett par timmar på kvällen. 587 00:26:29,790 --> 00:26:32,170 Och vi hoppas att du stannar upp med oss ​​också. 588 00:26:32,170 --> 00:26:33,896 Det var allt för denna veckas CS50 Live. 589 00:26:33,896 --> 00:26:35,770 Tack så mycket till alla bakom kameran. 590 00:26:35,770 --> 00:26:37,320 Tack så mycket till våra bidragsgivare. 591 00:26:37,320 --> 00:26:39,880 Vi ses i S Louis, var detta CS50. 592 00:26:39,880 --> 00:27:07,810 593 00:27:07,810 --> 00:27:10,350 >> RAMON: Vad räven säga? 594 00:27:10,350 --> 00:27:31,146