SPEAKER 1: Hei verden, dette er CS50 Live. Vi vil gjerne begynne denne gangen med en rope ut til våre venner i St. Louis, Missouri, hvor en gruppe frivillige kjent som LaunchCode har vært samle sammen CS50x studenter i For å ta klassen kollektivt. Og den venstre slutt er at etter semesterets slutt, er å koble dem studenter med en lokal tech jobber. Nå opprinnelig LaunchCode folk, og elevene som er involvert, skulle å innkalle i et lokalt bibliotek hvor et par hundre mennesker hadde RSVPed. Men så mange mennesker endte opp RSVPing i slutten for dette initiativet, som de endte opp med å flytte til en lokal opera Huset, avbildet her. Nå er det litt lite. Men hvis du ser aldri så nøye du kan se opp på scenen som første lysbilde fra uke 0 som taler til det faktum at 73% av dine klassekamerater, kanskje inkludert deg, har ingen tidligere erfaring. Og ja det var veldig mye tilfelle i denne operaen her. Så våre hellos til folk på LaunchCode og borgere av St. Louis. Hvis du selv bor lokale til Saint Louis, gjør gjerne sjekke dem ut på launchcodestl.com. Eller, kanskje, slå på din lokale nyheter kanal som vi vil gjøre her for deg. SPEAKER 2: En fantastisk mulighet for noen Saint Louisan ønsker å lande en av disse high tech, høy betalte jobber. For første gang noensinne, det samme programmering klasse som er undervist på nettet ved Harvard og MIT er blir tilbudt i person på St. Louis Public Library. Det er alt takket være organisasjonen LaunchCode, som prøver å løse tech talent gap her i St. Louis. Nå kan alle som passerer dette fire måneder Kurset er sannsynlig å få en betalt læretid som kunne bli til et programmeringsjobb. LaunchCode medgrunnlegger sier, hvis du lære denne ferdigheten sett, i dagens markedet er du nesten garantert å land en seks figuren jobb i et par år, med en begynnerlønn rundt $ 50.000. Det høres ganske bra. Så hva slags person bør vurdere å ta denne klassen? JIM McKelvey: Du må være ganske smart, OK? Du må være ekstremt hardt arbeide. Men du trenger ikke å ha gått til de beste skolene. Du trenger ikke å være stor i matte. Du trenger ikke å ha noen av de ting som du kanskje tror du trenger. Og dette kurset vil fortelle deg hvis du har det. SPEAKER 2: Wow, nå, hvis du er lurer på om det er nok programmering ledige jobber i St. Louis, er svaret et stort ja. McKelvey sier det er mer enn 1000 ledige stillinger og bare ikke nok lokale folk prøver å fylle dem. Nå er denne klassen starter mandag klokken 05:30 på Central Branch i St. Louis Public Library. Hvis du er interessert, og jeg er sikker på at noen av dere vil være, den informasjonen at ksdk.com. SPEAKER 1: Noen av dine klassekamerater ønsker nå å si hei. Opp først er Suzanne, fra Winthrop, Massachusetts, en by i nærheten bare ned veien herfra. SUZANNE: Hei verden, er jeg Suzanne. Jeg bor i Winthrop, Massachusetts, USA, på vannet. Og jeg er 63 år gammel. Jeg er en pensjonert sykepleier. Jeg har fire barn og to barnebarn. Jeg er også en teaterregissør og en skuespiller. Og en gang i år jeg vil bli vist i Discovery Channels "The Boston Strangler. "Jeg spille Zenovia Clegg. Jeg tar CS50 fordi jeg elsker EDX. Jeg har tatt to tidligere kurs. Jeg har tatt Justice, og folkehelse and Environmental Change. Og jeg elsket dem. Også fordi informatikk skremmer meg litt. Og i min aldersgruppe er vi oppmuntret å gjøre ting som skremmer oss. Så jeg tar CS50 og ser frem til det. Så mitt navn er Suzanne, og dette er CS50. SPEAKER 1: Opp neste er flere hellos fra noen av dine klassekamerater i Brewer High School i Maine. La oss ta en lytt. BREWER High School studenter: Hei verden, er vi Brewer Høy. PATRICK: Hei, jeg er Patrick. ADAM: Jeg er Adam. NIKOLAI: Jeg er Nikolai. BEN: Jeg er Ben. DYLAN: Jeg er Dylan. NICK: Jeg er Nick. CHRISTINA: Jeg er Christina. JONATHAN: Jeg er Jonathan. CHARLES: Jeg er Charles. BREWER High School studenter: Og dette er CS50. SPEAKER 1: Hei Brewer High School - og nå Stuart og en venn av ham, fra den nærliggende delstaten Virginia. STUART: Hei verden, mitt navn er Stuart. Og jeg er fra Virginia. Og dette er min første gang gjør en Harvard kurs eller noe nettbasert kurs sånn. Jeg liker datamaskiner og ønsker for å lære mer om dem. Jeg er Stuart, og dette er CS50. SPEAKER 1: Hei Stuart. Så vi har også vært å holde et øye med Twitter, hvor en av dine klassekamerater, Umberto fra Mexico, hadde dette å tweet nylig. Hei, @ davidjmalan, la meg stille deg et spørsmål - Mark Zuckerberg tok CS50? Så, dessverre, Mark faktisk ikke ta CS50 ved å melde deg som en førsteårsstudent her ved Harvard. Snarere han hoppet fremover til en mer avansert klasse som kalles CS51, som dekker informatikk emner som abstraksjon, og programmering konsepter som funksjonell programmering en objektorientert programmering. Nå på den tiden ble det undervist av en professor ved navn Henry Leitner, som faktisk undervist kurset når jeg tok den så godt. Vår egen veileder, Rob Bowden, nylig satte seg ned med professor Latiner å snakke om noen av hans tidligere studenter foruten meg. ROB BOWDEN: Hei, jeg er Rob Bowden, og jeg er her med Dr. Henry Leitner, er hvem Associate Dean of Information Teknologi på DCE, og førstelektor i informatikk. Greit, så jeg har hørt at du har hatt noen kjendiser passere gjennom noen av dine kurs. HENRY LEITNER: Ok, så jeg liker å fortelle elevene mine jeg har vært på Harvard lang tid. Og når de sier - godt hvordan lenge har du vært her? - mitt svar er at jeg er gammel nok til å ha jobbet på hjemmeoppgaver med at milliardæren dropout Bill Gates. Men jeg er også ung nok til å ha faktisk lært at milliardæren dropout Mark Zuckerberg, av Facebook berømmelse. Så mitt møte med Bill Gates går veien tilbake til begynnelsen på 1974, 1975 studieåret. Historien er sant at Bill Gates ' venn Paul Allen gikk til aviskiosk i Harvard Square og kom over i Popular Electronics Magazine som var med en historie om verdens første personlige datamaskin, som du måtte faktisk bygge - montere fra deler - Altair. Han kom løpende tilbake til Bill Gates 'sovesal. Og de fikk alle glade for at personlige datarevolusjonen var om å starte uten dem. Så på den tiden, Gates og jeg - vi arbeidet med problemer. Det er fordi vi var begge registrert i en teori om beregning selvfølgelig en svært mathy høgare nivå kurs. Og på den første dagen av klasse professor fortalte alle i rommet til slå til sin nabo og introdusere seg selv, og da samarbeide med at personen på oppgavesett. Så Gates og jeg - Jeg visste ikke hvem han var på den tiden. Han var kanskje seksten eller sytten, men han så ut som han var tolv, for å være ærlig. Og vi begynte å jobbe med home sammen. Men så når Altair kom ut i Popular Electronics Magazine, fanget hans oppmerksomhet. Han bare forsvant. Han sluttet å gjøre lekser. Jeg ble sint på ham. Og jeg ville bare se ham i ett databehandling lab vi hadde på Harvard for forskning på den tiden, som ble kalt Aiken Computation Lab. En PDP-10 ble brukt. Og han var hacking bort dag og natt, utgangspunktet bare bor der. Da jeg fant ut senere, var han faktisk designe programvare for den opprinnelige Altair, et operativsystem, sammen med programmeringsspråket BASIC som skulle kjøre. Tanken er at for en personlig databransjen til å ta av deg ville trenge for å kunne å skrive programvare. Og å skrive programmer og maskin språk ved å vippe vippebrytere hadde ikke tenkt å gjøre det, bortsett fra utover amatører. Hva var interessant på den tiden var det Altair var så populær at du ikke kunne selv kjøpe en, sikkert etter det ble annonsert. Så Bill Gates, utrolig nok, med sin venn Paul Allen, skrev et program på PDP-10 som simulerte oppførselen av denne Altair, fordi de specs var fullt skrevet opp i den populære Electronics Magazine. Så, som jeg sa, fikk jeg sint på ham, jeg gjorde ikke betale oppmerksomhet. Han forsvant, gikk til Albuquerque, New Mexico, for å vise frem hva han hadde gjort mot folk som hadde bygget Altair. Og til tider, forlate college - forlate Harvard - for å starte et selskap var uhørt. Og så når jeg fant ut at det hva som hadde skjedd jeg var ferdig. Fordi jeg holdt tenker på - min foreldre ville ha drept meg hvis jeg hadde droppet ut av skolen bare for å gå av og starte et selskap. Og så er det selvfølgelig Mark Zuckerberg. Jeg ble kjent med ham blant annet fordi Han kom etter endt CS51. Jeg antar det var etter [uhørbart] hadde fullført kurset. Han ønsket å jobbe som lærer fellow i påfølgende år for CS51. Og han kom til intervju. Og sannheten i saken er hans resultatene var noe svak i forhold til de andre folkene som hadde intervjuet. Det var faktisk den svakeste av gjengen. Så jeg ikke føler meg som om jeg kunne i god samvittighet ansette ham. Plus, var han i litt trøbbel med den administrative styret. Hvis du så filmen, The Social Network. OK, er så mye av det saklig sant. På den tiden hadde han nettopp ferdig med å gjøre den Facemash, ikke Facebook, men den Facemash app. Og han hadde brakt ned Harvard nettverk utilsiktet. Og pluss han hadde stjålet ansiktene til Harvard College graduate kvinner til gjøre dette prosjektet. Så han ble brakt til administrativ bord. Han ble slått i hendene. Så han var i noen problemer. Og jeg tror han var liksom forvirret av det. Så jeg liker å fortelle folk at jeg tar en bitteliten bit av æren for Suksessen til Facebook fordi - A, er minst halvparten eller 1% av Zuckerberg programmering dyktighet kom fra min kurs - hva han har lært det. Og for det andre, hadde jeg hyret ham som en undervisning fyr, ville han ikke hatt tid til å full Facebook på det punktet at han gjorde. Så det har vært mye moro undervisning informatikk ved Harvard. Jeg mener det er bare fantastiske mennesker som går på å gjøre store ting. Jeg kunne gå på og fortelle deg om andre folkens, men jeg tror vår tid er ute. ROB BOWDEN: Så det høres ut som Bill Gates skylder deg noen penger for å forårsake alt som stress i Theory beregningsmetode. Og Mark Zuckerberg skylder deg noen penger for å la ham starte Facebook. HENRY LEITNER: Det er en fin måte å tenke på, sikkert. ROB BOWDEN: Ok, vel takk. Dette har vært stor. Takk for å ha meg. Riste hånden kanskje. Bør jeg ta ham i hånden? Skal vi gjøre om avslutningen? Hvordan skal vi gjøre det slutt? SPEAKER 1: Neste, et spørsmål fra [? Sin,?] en av dine klassekamerater i Vietnam som hadde dette å si. Hvordan kontakter jeg andre folk i mitt land? Vel dette også er et stort spørsmål. Og hvis du logger inn i EDX-grensesnittet, for CS50x hoved info siden, vil du se en link til CS50 meetups, noe som vil føre du meetup.com/meet50, som er et verktøy som vi har satt opp for å tillate du å finne folk som er lokale for deg slik at du kan faktisk møte opp, ikke bare nesten med klassekamerater dette året, men i person også. Faktisk, når du besøker denne URL, vil du se et kart som ser ut som dette, hvor hvert merke representerer ett eller flere av dine klassekamerater i den delen av verden. Faktisk akkurat nå, noen av de mest populære samfunn av CS50x studenter er i New York, London, Delhi, Kairo, og San Francisco, og over 199 andre byer også. Så hvis interessert i å møte opp med noen klassekameratene lokalt, ikke hodet til møte meetup.com/meet50. Et spørsmål nå fra Scott i New York, som hadde dette spørsmålet å skrive - mest hvert program bruker strenger, så hvorfor ble printf inkludert i standard I / O-bibliotek, og GetString var ikke? Er GetString en funksjon definert i CS50 biblioteket? Så ja ja, er GetString faktisk definert i CS50 bibliotek. Og printf, i mellomtiden, er i standard I / O-bibliotek. Nå tilbake i dag, var da C oppfunnet, sikkert var det viktig, en fundamental funksjonalitet for kode som printf å faktisk print noe til skjermen. Dette var så kjernen til å skrive programvare, særlig programmer som kjører inne av at svart og hvit terminalvindu, at det var fornuftig for printf å være innebygd i språkets bibliotekene selv. Nå trenger du ikke GetString i orden å få strenger fra brukerne. Snarere kan du bruke funksjoner som scanf. Faktisk, hvis ukjente, ta en titt på noen av Uke 5 er walkthroughs hvor vi går gjennom prosessen med å bruke denne funksjonen, scanf, for å få input fra brukeren. Problemet er at de fungerer som scanf, som er innebygd i C standard biblioteker, er at de ikke gjør noe feilsjekking. Og de ikke faktisk tildele noe minne for strenger. Så et par dårlige ting kan skje - En, kan du overskrider grensene for klyngen, i så fall i beste fall, ditt program kan krasje. Men i verste fall kan en motstander være stand til å ta over programmet. Og du trenger for å administrere alle av at minne deg selv. Så GetString tar bort en mye av denne kompleksiteten. Slik at vi tildele minne for deg. Vi sørger for at du ikke går utover grensene til en matrise. Og vi returnere null hvis noe faktisk går galt. Så GetString legger rett og slett, på slutten av dagen, en hel haug med nyttige feilkontroll. Nå er en kommentar fra David i Ohio som hevder dette - nei, du trenger ikke apparatet for alle prosjektene. Nå hva mente han med dette? Vel, det viser seg at David anskaffet, fra en nettside, en Nokia LCD, som dette her, er at egentlig på størrelse med noe du kanskje se på en eldre mobiltelefon. Og han har også anskaffet en Tiva lansering bord, et stykke maskinvare som kobles til denne LCD. Nå er det ganske lite. Som du kan se her er en US kvartal for skala. Og hva han gjorde med dette er faktisk implementere et program i C. Faktisk trenger du ikke den CS50 apparatet for å skrive programmer i C. Du trenger ikke engang en Mac eller en PC. Du kan også skrive og kjøre C-kode på en innebygd enhet som dette. Vel, hva gjorde David faktisk skrive og kjøre? Vel sjekke det ut. Han implementert Mario på denne lille mobiltelefon-lignende skjerm fra Problem Sett en. Så jeg tror jeg ville stemme med en av Davids klassekamerater som, på samme Facebook tråden der David introdusert dette lille programmet til verden, svarte med - du er et beist kompis. Faktisk du er. Nå next up er en del av spam. Hvis du er i CS50 Facebook-gruppe, du kanskje har lagt merke til noen innlegg som dette som til tider skli inn der. Hvis du støter på noen spam, ingen big deal. Bare rapportere det til oss og vi vil gå foran og slette den. Men før vi slettet denne vi kunne ikke hjelpe ta noen skjermbilder og humre litt. Denne spesielle student her - vi vil kaller ham Alan Mobile - postet hans mobiltelefonnummer, hans Blackberry chat adresse, hans Skype ID, sin e-postadresse - og ingen av disse du bør faktisk ta kontakt. Men i henhold til bilder her, virker det som Alan Mobile har ganske mange iPhones for salg i det som synes å være en ganske ubestemmelig lageret. Nå som samme David svarte på Alan Mobiltelefon med følgende - kommer de med gedit installert? Normalt nå tror du at noen Spambot ville bare ignorere et svar til sin opprinnelige tråden. Men nei, hadde Alan Mobile dette til si - alle våre telefoner er helt ny, kommer med original eske og tilbehør, alle våre telefoner er SIM fri, og så videre. OK, så kanskje en automatisk generert svare på David menneskene respons, men David presset litt lenger - vil du installere og teste CS50 apparatet for oss før du sender? Greit, vel la oss se hva Alan Mobile har å si nå. Ja, og alle våre produkter er å jobbe med SIM-kort og nettverk over hele verden. Fantastisk, nå en annen klassekamerat vår, dansk, svarte med dette. Det ville være fantastisk. Ta bestillingen min så godt for to pluss en gratis, iPhone 5s med CS50 Apparatet er forhåndsinstallert. Og til slutt, Alan Mobile sa - ja, alt vil fungere. Stol på meg. Så hvilke av produktene ville du liker å kjøpe fra oss. Sorry Alan Mobile, du er nå forbudt. Chris, nå, fra Toronto, spurte dette spørsmålet av oss. Jeg har en idé til CS50 Live. Jeg tror det ville være flott om David, eller noen av de andre CS50 personale, spilles ett eller flere sendt scratch spill for Problem Set 0. Så dette er et flott forslag. Og ting er, siden Problem Set 1 ble lansert 1. januar, vi har faktisk fått tusenvis av klø prosjekter. Så vi ikke kunne gjøre dem alle rettferdighet her og CS50 Live. Så vi tenkte at vi skulle rykke opp en som fanget vår øyet nylig kjent som Wizards 'Duel. Wizards 'Duel ble skrevet av en klassekamerat heter Patrick i Ohio. Og jeg bør advare at dette prosjektet virkelig gikk utover det som var forventet i oppgavesettet 0. Ikke i det hele tatt slite hvis dette ikke er noe du kan nødvendigvis oppnå i din aller første gang programmering, enten med Scratch eller noe annet språk. Men vi trodde det ville være morsomt å spille en liten bit av Wizards 'Duel her. [Musikk spilles] Utrolig, så hvis du selv ønsker å spille eller remix Wizards 'duell, ta en se på denne nettadressen her. Gå videre og bare stoppe videoen hvis du ønsker å skrive at i. Vel next up er et nytt skrape prosjektet, dette en av en student ved navn David fra Cambridge, Massachusetts. Så dette var faktisk den aller første Programmet skrev jeg meg selv tilbake i 2007. Jeg var en graduate student på den tiden og jeg hadde kryss registrert i en kurs ved MIT, undervist av professor Mitchel Resnick. På den tiden, gjorde ikke Scratch virkelig eksisterer. Det var bare i beta-format, og vi - den elevene i denne klassen - hadde unik mulighet til å faktisk spille med, og eksperimentere med Scratch før noen andre. Faktisk en av våre første oppdrag i denne klassen var å faktisk gjøre vår egen Scratch prosjektet. Og til denne dag husker jeg tilbringe litt åtte timer på en fredag ​​kveld alle ting fungerer på oscartime her. Og nå de av dere kjent med Oscar den grinebiter fra Sesame Street kanskje i et øyeblikk husker sangen som er i ferd med å bli spilt. Og jeg pleide å ha veldig, veldig gode minner fra den sangen. Men tro meg, etter åtte timer lytte til noe på loop, med en evig typen loop, det svært raskt surne litt av dette minnet. Men for deg, får du bare ett glimt på dette. Og jeg gir dere dette eksempelet av oscartime. [Musikk spilles] SPEAKER 4: (synger) Å jeg elsker trash - noe skittent eller snusket eller støvete, noe fillete eller råtten eller rustne. Ja jeg elsker søppel. Her er litt mer råtten ting. Ja, jeg elsker, jeg elsker, jeg elsker trash. SPEAKER 1: Nå hvis du ønsker å spille eller remix oscartime, og forbedre det, gå til denne nettadressen her. Vel, er neste spørsmål fra [? Bosco?] i Hong Kong, som skrev dette - hva er programmeringsspråket bak MIT Scratch? Så det er et stort spørsmål. Men heller enn svar som oss selv, vi besluttet å ta våre kameraer ned veien til MITs Media Lab, der Livslang Barnehagegruppen er ledet av Professor Mitchel Resnick, fra hvem Jeg tok det klasse år siden. Vi møtte ikke bare med professor Resnick, men også John Maloney, den opprinnelige forfatteren av Scratch-programmet. Så den aller programvare du har brukt å lage annen programvare var primært skrevet av John. Avbildet her faktisk er John, meg selv, og Mitchell står bak en reell verden inkarnasjon av Scratch kort tid etter vår samtale. Men før vi tar en lytt, seksti sekunder her for valper. [MUSIC - John Mayer, "WILD"] Scratch faktisk i all oppriktighet holder en spesiell plass i vårt hjerte her på CS50. Ja, vi introduserte Scratch inn i kurset i 2007. Og hva var påfallende at år var følgende. Mens det i årene før, sier 2006, vi ville ha noen 200 elever handle Selvfølgelig, som i Harvard tale midler å stikke innom kurset i den første ukene av semesteret, men ikke nødvendigvis ta klassen. 67% av disse studentene ville typisk værende og komme tilbake i ukene som følger. I mellomtiden i 2007, da vi introduserte Scratch samt noen andre faglige tweaks, hoppet vi opp til en 97% oppbevaring forholdet mellom de studentene som var shopping CS50. Og så helt siden da Scratch har vært en sentral del av CS50, om enn bare i den første uken. Men jeg tør si det setter tonen på kurs, og virkelig taler til vårt mål i CS50 med å lage informatikk alle de mer tilgjengelige. Med det sagt, vår takk til Mitchell og John og hele Scratch-teamet. La oss nå ta dette feltet tur nedover veien. Mitchel Resnick: Hei, Jeg er Mitch Resnick. Jeg er professor of Learning Forskning her på MIT Media Lab. Og jeg har også direkte MIT Scratch team. JOHN MALONEY: Jeg er John Maloney, og jeg var en forsker i ca elleve år, jobber på et skrape prosjekt som hovedutvikler. Mitchel Resnick: Vi kaller vår forskning gruppen for livslang barnehagegruppe fordi vi er inspirert av måten barn lærer i barnehagen. I den klassiske barnehage, barn er lekent designe og skape ting i samarbeid med hverandre - bygge tårn med treklosser, å lage bilder med finger maling og fargestifter. Som vi utviklet Scratch, ville vi fange opp at barnehagen ånd for elever i alle aldre. JOHN MALONEY: En av de store motivasjon for Scratch var dette prosjekt som Mitchel og Natalie hadde startet kalt Computer klubbhuset. Og de så mange barn gjør ting med media verktøy som Photoshop og ulike lyd produksjonsverktøy, men de var ikke gjør noe programmering. Barna var ikke gjør programmering. Og vi kikket rundt og sa - vel, hvorfor er de ikke gjør det? Og svaret syntes å være at det var ikke et redskap som var aktuelle for at innstillingen. Mitchel Resnick: Da vi skulle utvikle Scratch, ble jeg inspirert av noen av de ideer av min mentor Seymour Papert, som utviklet logo programmeringsspråk. Seymour alltid pleide å si at det var viktig for en ny teknologi som har en lav etasje, noe som betyr at det er lett å få startet med, høyt under taket, mener du kan gjøre mer og mer komplekse ting med det. Vi ønsket også å ha det vi kaller brede vegger, noe som betyr at det er mange forskjellige veier. At du kan gjøre mange forskjellige ting med programvaren. Det er ikke nok bare å komme i gang lett og gjøre kompliserte ting hvis alle gjør det samme. Vi ønsket å ha mange forskjellige veier, fordi vi vet annerledes folk har forskjellige interesser, og vi ønsket alle å være i stand til å arbeide på prosjekter som vokste ut av sine egne interesser. JOHN MALONEY: Jeg vil gjerne si at vi vurderes om ti ganger mer kommandoer og funksjoner enn ha noen gang havnet i Scratch. Vi ville ha endeløse debatter om nøyaktig hva ordlyden å sette på blokker, og ting som om standard retning sprite bør være opp eller til høyre. Så vi tenkte på alle disse tingene, spesielt veldig tidlig erfaringer som folk ville ha med Scratch, og prøver å gjøre det så at ting kunne bli oppdaget bare ved eksperimentering. Mitchel Resnick: Da vi var først designe Scratch vår målgruppe var i alderen 8-16. JOHN MALONEY: På den lave enden av spektrum, fant vi at mye yngre Barna ble bruk av Scratch enn vi noensinne forventet. Jeg husker fortsatt den første Scratch dag, tror jeg, at vi hadde. Denne lille seks år gammel mann kom i. På den øvre enden, har jeg blitt overrasket ved for eksempel bruk av skrape i college klasser som CS50. Fordi vi ikke egentlig tenke på Scratch som et språk for undervisning informatikk til datamaskin forskere. En annen overraskelse er hvor mange voksne bruker det. Vi fant ut at mennesker som er like fullt tids programmerere nyte programmering i Scratch som en slags hobby. Og så har vi sett folk på Scratch Nettside opprette prosjekter som gjør, for eksempel - ray tracing 3D rende systemer. Jeg kunne ikke tro det da jeg så det. Mitchel Resnick: Da vi begynte å jobbe på Scratch, ønsket vi å gjøre det forskjellig fra forrige programmering språk for å gjøre det tilgjengelig for et mye bredere rekke mennesker. Så vi hadde tre kjerne føringer. Først ønsket vi å gjøre det mer tinkerable, slik at du kan bygge opp programmer mye som å sette LEGO-klosser sammen. Så vi hadde det visuelle programmering blokkere det er ikke sammen. Andre av alt ønsket vi å la folk arbeide på mer meningsfylte prosjekter, ting som var personlig relevant for dem. Det er derfor vi gjør Scratch så media rik. Tredje av alt, ønsket vi å gjøre det mer sosialt. Fordi mange av de beste lærings erfaringer kommer når vi samhandle med andre. Så vi lagt Scratch online community helt fra begynnelsen, akkurat da vi lanserte programvaren, så at folk ville ha et publikum for sine kreasjoner, og også få inspirert av hva andre mennesker skapt. Siden vi lanserte scratch det har vært rundt 4,5 millioner prosjekter som har blitt delt på Scratch nettside. JOHN MALONEY: Så jeg faktisk sluttet seg til prosjektet etter slag av bedende til Mitchel. Jeg bedt om å sluttet da jeg hørte om det, fordi jeg trodde det skulle være slik en kul ting og Jeg ønsket å hjelpe. Men min favoritt språket var Smalltalk, og jeg hadde bidratt til å utvikle denne versjonen av Smalltalk kalt Squeak. Så jeg sa, vel, jeg skal komme og gjøre dette arbeidet så lenge jeg kan bygge det i Squeak. Og Mitchel sa - oh sikker, det gjør jeg ikke bryr seg hva den er laget i. Bare gjøre det arbeidet. Og så det er hvordan det kom til være skrevet i Squeak. Så med Scratch 2,0 trodde vi at vi ville prøve å gjøre Scratch rekkevidde ut til flere mennesker ved å gjøre det en Cloud basert app. Og selv om det var en versjon Knirker som kjørte i nettleseren, det nødvendig nedlasting og installere en plug-in. Og vi visste at mange mennesker ville har problemer med å gjøre det, enten fordi det var en komplisert prosess eller fordi deres administrasjon på deres skole, eller hva, ville ikke tillate det. Så vi ville ha noe som var snill av bygget inn i nettlesere, eller var slags standard det på de fleste nettlesere. Vi vurderte Java, vi betraktet Silverlight, vurderte vi Javascript, og vi vurderte Flash. På det tidspunktet Flash var virkelig på maktstilling. Adobe var virkelig presser den. Og vi ennå ikke visste at det skulle å være et slikt problem på iOS, og mobile enheter, og så videre. Så vi gikk med Flash. Og i ettertid ville det har kanskje vært bedre hvis vi hadde gått med Java fordi det er blitt det dominerende språket. Men jeg tror ikke det er noen måte vi kunne muligens ha sett alle ting som skulle endre mellom da og nå. Og det tar tre år eller så å sette sammen noe sånt som dette. Så du gjør ditt beste gjetning og håpe på det beste. Mitchel Resnick: En nye prosjekter er heter Scratch Junior, prøver å ha Scratch gå ned til enda yngre barn. Det blir rettet i en alder av fem til syv åringer, som barnehage til andre klasse. Den første versjonen av det vil være på iPad. Og vi har tenkt å ha den komme ut i midten av 2014. Så Scratch Junior vil være en noe nedskalert versjon. Den vil ha noe færre funksjoner, og også gjøre ting mer utviklingsmessig passende for yngre barn. JOHN MALONEY: Jeg liker det faktum at Skrap 2,0, spesielt, er liksom hemmelighet høyere ytelse enn du kan forestille deg. Som standard når du gjør animasjoner og så videre, er du begrenset til oppdaterings sats av skjermen. Og vi laget det bevisst slik at det bare gjør en liten bit per ramme, slik at hvis du sier gjenta 10, flytte 10, du faktisk se det bevege seg i ti små trinn. Men det er en form for skjult modus kalt turbo-modus, som du kan få ved skift klikke på det grønne flagget. Og som i utgangspunktet lar den kjøre type så fort som mulig. Så dette er hva kan du gjøre ting som ray tracer, og du ikke må - den opprinnelige ray tracer, du måtte vente som omtrent en halv time til se resultater, fordi det var slags tøffer gjennom ett bilde om gangen. Men, med skiftet klikk tingen, kan du få resultatene i noe sånt tjue sekunder. Så plutselig kan du bare liksom høyt nivå ting i Scratch, men det er en skjult funksjon. SPEAKER 1: Tusen takk til Mitchel og John for alt de har gjort for CS50. Takk til Andrew, Al, og Shelley, som står bak kameraene denne uken. Og takk så mye til alle studenter, de av dere der ute som innsendt innhold. Og ja, hvis du ønsker å bidra med innhold for en fremtidig uke, trenger nå ut til oss via Facebook, Reddit, Twitter, eller noen av de andre Kursets midler. Det er det for CS50 Live. Dette var CS50. Pokker.