>> 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.