[Tónlist spila] -Alright! -Þetta er CS50. -Þetta er CS50. -Þetta er CS50. [TÓNLIST - Iggy AZALEA, "Fancy"] Uppáhalds minningin -Ég frá CS50 var þegar ég fór að Puzzle Day. -Probably Bara tíminn varið vinna á vandamálinu setur með vinum mínum og fólki sem Wold loksins orðið blockmates mín. -Ég Besta minni frá CS50 er Hackathon. -The CS50 Hackathon. -Hackathon. -Hackathon. -Hackathon. -The Hackathon -Rob Bowden. Bara allt um hann. [TÓNLIST - Iggy AZALEA, "Fancy"] Uppáhalds minningin -Ég er þegar ég var á stigi og ég lék virtu hlutverki á hnút [? í Tengd?] [? Listi. ?] -Þegar Við fengum öll ókeypis Dropbox pláss og Davíð var eins, líta undir fætur. Og það var eins og, pláss fyrir alla! [TÓNLIST - Iggy AZALEA, "Fancy"] -Ég Ráð fyrir einhverju komandi nemandi myndi vera að virkilega vinna á P-setur með vinum. -Office Klst er mjög mikill vinur þinn. -Make Mest af reynslu þinni og mæta eins mörgum og þú getur. -Ekki Vera hræddur við að biðja um hjálp. -Start P-setur snemma í vikunni. Ég held að stærsta málið er að nýta allar auðlindir að CS50 hefur. -Farðu Að skrifstofutíma snemma í vikunni. -Definitely Horfa á stuttbuxur. -Ekki Fresta á þínum P-setur. -Make Viss um að þú finnur mikinn hóp af fólki til að vinna á P-setur með. Hægt er að hafa a einhver fjöldi af gaman og fá vinnu saman. -Ekki Vera hræddur við að ýta sjálfur. Fara til spjallþráð útgáfa stundum. -Write Hluti á pappír áður þú alltaf snerta tölvuna. -CS50 Er mjög mikill á veita leiðir til að fá hjálp. -Ég Eitt stykki af ráð er að sofa. Hefur einhver sagt að? Sofa, fyrir viss. Það er auðvelt að gera, en þú hefur fengið að gera það, held ég. Ég myndi segja í raun að andlega undirbúin vegna þess að þú ert að fara að elska það. [TÓNLIST - Iggy AZALEA, "Fancy"] -Þetta er CS50. -Þetta er CS50. -Þetta er CS50. [TÓNLIST - Iggy AZALEA, "Fancy"] -Þetta er CS50. [Applause] DAVID J. MALAN: Þannig að þetta er CS50 og þetta er endir viku 0. Og það var bara starfsmenn CS50 er sem bíða ekki aðeins í köflum og skrifstofa klukkustundir, en, Einnig, þetta koma helgi á CS50 Puzzle Day. Sem, aftur, er ekki allt um forritun. Reyndar er gert ráð fyrir að þér þarft ekki að forrita neitt, heldur leysa vandamál með því að nota wits og vinir við hlið þér. Við verður gengið með nokkrum af vinum okkar á Facebook-- ef þú skráir here-- sem á undanförnum árum, hafa í raun verið að skrifa þessar áskoranir með okkur. Og svo, þeir vilja vera sjálfur lokum keyra þraut Day. Og svo verður þú að vera áskorun með nákvæmlega hvers konar hlutur og vandamál sem fólk á Facebook eins og til hugsa um. Svo það er á morgun. Skrá sig á cs50.harvard.edu/register. Nú orð á þeim starfsfólks í lagi. Þetta hér er Ansel Duff, sem er í raun eitt af meðhöfundum af þessum tvöfaldur perur sem við sáum á miðvikudaginn, auk eigin CS50 er Dan Bradley. Ansel Duff var einnig fyrrverandi FRESHMAN advisee minn 3 árum og hann reyndar jafnvel byggt þetta púlt. Hann er farinn á að gera verkfræði vísindum og fleira. Nú, myndin hans er hér í raun og veru Ansel 3 árum á CS50 Hackathon þegar hann láni einn af okkar blöðrur, festist það að fartölvu hans, og fyrir næstu 12 sumir stakur klst, með áherslu á lokaverkefni sínu, taka hlé bara að opna pokar af sælgæti á Hackathon. En hann fór nýlega að eyða í sumar með okkur, frá CS50 fyrir starfsfólk sitt, og nú nemendur á þessari önn, hefur eigin 3D prentara sína. Og í hnotskurn 3D prentarar eru tæki sem lítur alveg eins og þetta. Þú fyllir það með plast spool sem er brætt niður með því að tækið og þú byggja það bókstaflega úr engu. Líkt og inkjet prentari, þú byrjar spúandi litla punkta úr plasti að mynda saman við mynda heild hluti. Og fyrr svo Ansel til dæmis, í sumar, hefur iPhone 5 og ákvað hann langaði að styðja það upp á borðinu hans. En hann vildi ekki fara út og kaupa eitthvað frá Apple verslun eða álíka, svo hann settist niður og byrjaði að teikna eitthvað. Hann tók nokkrar mælingar hvernig þykkur og hvernig breiður iPhone hans var, Hann dró þessa mynd hér, Hann ákvað að hann vildi að hafa 75 gráðu halla eins og það var að glápa á hann á borðinu sínu þar. Hann sneri þá er þetta, með því að nota hugbúnaður, í 3D CAD líkan sem horfði smá eitthvað eins og this. Og þá fór hann, lokum, að í raun og veru að búa hana. Svo í raun, ef einhver ykkar hér, ef til vill í röð sem ég get kasta til, an-- það sem við höfum gott fólk með iPhone 5, og hér höfum við tvær. Nú, ekki að vera outdone, CS50 er Cheng Gong setti einnig fram í sumar að byggja alveg nokkur atriði og, í raun, af ástæðum sem eru enn óljóst, hefur verið hægt prentun her fílar með framsögn vopn og ferðakoffort. A par af sem eru í raun hér ef einhver myndi nú like-- fíl. Allt í lagi,. en hvað Cheng gerði einnig fyrir okkur er að hann sett mjög vel upp myndavél vegna þess fíl, trúið því eða ekki, tekur um tvær og hálfan tíma til að prenta. Jafnvel iPhone standa tók klukkutíma og hálfan að prenta. Og hvað Cheng fór á undan og gerði var sett upp ágætur myndavél í framan af þessu 3D prentara, tók klukkutíma og hálft eins og hönnun Ansel er prentuð. Við lagði nokkrar kynþokkafullur tónlist við það í því skyni til að gefa þér þetta til að líta hvernig 3D prentun virkar. Og jafnvel þótt það er í raun í plasti, átta sig á að ef þetta er svæði áhuga þinn námslega, það eru gott fólk, meðal þá Jennifer Lewis hér við School of Verkfræði, sem eru í raun vinna á 3D prentun af plast hluti. En jafnvel, æ, líffræðileg efni til að leysa lífeðlisfræðileg vandamál fyrir menn. En hér er smá eitthvað af CS50. [LOUD VÉL hávaða] DAVID J. MALAN: Það hljómar ekki eitthvað svoleiðis í raun og veru, en það er miklu kaldari að horfa á það á þeim hraða, og með þessi hljóð. Nú, á miðvikudaginn, hvernig fengum við fyrst hér? Við byrjuðum að tala um tölvu vísindi og við spurði hvað það væri. Og það er um fjölda af hlutum, og það er svo margar mismunandi áttir þar sem þú getur höfuð eftir námskeið eins CS50. Í staðreynd, ef þú sóttir einn þessara óopinber handbækur til CS utan, bæklingnum sem við höfum veitt, hvort sem þú ert hugsa um að taka bara CS50, eða kannski að gera með annað, eða kannski jafnvel að einbeita í CS, ekki flettir í gegnum það. Og þú munt sjá skýringarmynd undir lok, sem sýnir þér mörg mismunandi áttir í CS að þú getur farið burt í. En í dag, munum við leggja áherslu, aftur, á í raun einn af grundvallar skoðunum, kannski, þar sem þú ert aðföngum á vandamálum, þú þarft framleiðsla frá vandamál, og þú hefur reiknirit sem búa þessir niðurstöðum úr þeim aðföngum. Og eitt slíkt dæmi, var um Auðvitað, þetta símaskrá hér. Og við tekið sem dæmi til að fara gegnum reiknirit sem var rétt. Og svo var annað rétt, en örlítið hraðar. Og svo annað sem var lítið meira dramatísk, en í grundvallaratriðum hraðar. Rétt, þetta símaskrá við krafa var um 1000 síður. Og hversu oft gerði ég hef að rífa símaskrána í tvennt að finna einhvern eins og Mike Smith, hámarks, í 1000 blaðsíðna bókar? Svo, 10 gefa eða taka. Og svo þegar ég reif þetta í helmingur, eða einfaldlega, fleiri maturely, skipt í tvennt, það er aðeins 10 síður úr 1000. Og ef þú framreikna, smá unrealistically fyrir símaskrá, en ef þetta símaskrá höfðu sumir 4 milljarða síður í henni, svo alveg ómeðfærilegur líkamlega, hversu margir sinnum þú skipta 4 milljarða síðu símaskrá í tvennt? Svo það er í raun 32, gefa eða taka. Og svo 32 sinnum aðeins, út 4 milljarða flettinga, getur þú finnur einhvern eins Mike Smith. Og það er skilvirkni. Það er góð algrím, eflaust. En þá erum við flutt frá því að reyna að móta það. Og ég lagði þetta sauðakóðanum kóða. Sauðakóðanum númer er ekki neitt formlegt. Það er ekki eitthvað sem þú leggja á minnið. Það er bara eitthvað sem þú tjá nokkuð innsæi með ensku, eða hvaða tungumáli sem í raun, að miðlar hugmyndir succinctly. En hvað er lykillinn um sauðakóðanum kóða er að þér reyna að sjá fyrir öllum sem mögulegar mál sem gæti gerst. Og reyndar, í þessu sauðakóðanum númer voru virkilega þremur málum í hvert skipti sem ég skipt símaskrána. Mike gæti verið til vinstri. Mike gæti verið til hægri. Eða hann gæti verið rétt á síðunni sem ég er á. Eða fjórða horn tilfelli, svo að segja. A slæmur atburðarás gæti verið einn which-- hvað er að gerast? Mike er bara ekki í símaskrá á öllum. Og þegar forrit crash-- þegar Mac og PC hugbúnaður sem þú krakkar hlaupa á tölvum stundum hanga eða hættir óvænt, sem yfirleitt þýðir að sumir forritari, sum manna eins og þig fljótlega, bara ruglaður upp og gerði nokkrar mistök. Kannski gerði ekki ráð fyrir að kannski það er ekki Mike Smith í símaskránni. Og ef þú ert ekki í raun að skrifa kóða til að höndla aðstæður eins og þessi, almennt óútreiknanlegur hlutir geta gerst. Vélin þín getur hvílt. Það getur endurræsa. Forritið getur hætta. Og svo allar þessar stupidities sem þú getur hafa komið upp í raun þinn lífið bara að nota tölvur, verður sífellt að vera bara skýrist burtu með þessari innsæi og þennan skilning á því hvað er í raun að fara á undir hetta. Nú skulum reyna að kíkja á almennari vandamál. Frekar en að taka aðsókn á stað eins og þetta, sem væri alveg hægt að gera einn, tveir, þrír, fjórir. Eða kannski tveir, fjórir, sex, átta. Við skulum leggja áherslu, í staðinn, á hvernig við gætum formlega reiknirit af ferlinu með sem við gátum tekið mætingu. Og á leiðinni, við skulum byrja að beita sumir flokkunarkerfi að við munum nota í dag þegar við í raun byrja forritun á tungumáli. Svo ég gef þér nú, fjögurra mínútna myndband að við að setja saman með vinum okkar frá TED, skipulag. Þar við staðar handrit og þeir fluttu skemmtikrafta sína til að bera, og í raun búið 2D teiknimyndir hvað reiknirit er. Ef við gætum lítil ljósin. [Tónlist spila] Sögumaður: Hvað er algrím? Í tölvunarfræði, reiknirit er sett fyrirmæla leysa einhver vandamál skref-fyrir-skref. Venjulega, eru reiknirit keyrð af tölvum, en við mennirnir höfum reiknirit eins og heilbrigður. Til dæmis, hvernig væri þú ferð um að telja fjöldi fólks í herberginu? Jæja, ef þú ert eins og mig, þú vilt líklega benda á hvern einstakling einu í einu og telja upp frá núlli. Einn, tveir, þrír, fjórir, og svo framvegis. Jæja, það er reiknirit. Í raun, við skulum reyna að tjá það á bitu meira formlega í sauðakóðanum kóða. Enska-eins setningafræði sem líkist forritunarmál. Látum n jafnt 0. Fyrir hvern einstakling í herbergi, setja n jafnt n plús 1. Hvernig á að túlka sauðakóðanum? Jæja lína einn segir, svo að segja, breytu heitir n og Frumstillir gildi þess að 0 Þetta bara þýðir að á upphaf reiknirit okkar, hlutur sem við erum talning hefur gildið 0. Eftir allt saman, áður en við byrjum að telja við höfum ekki talið neitt ennþá. Starf þessa breytu n er bara samningur. Ég hefði getað kallað það mest allt. Nú línu tvö demarks upphafið að lykkja, a röð af skrefum sem mun endurtaka sumir tala af sinnum. Svo í dæmi okkar, skref sem við erum taka er að telja fólki í herberginu. Undir línu tvö er lína þrjú sem lýsir nákvæmlega hvernig við munum fara um að telja. Inndreginn felst að það er lína þrír sem mun endurtaka. Svo með sauðakóðanum kóða er sagt er að eftir að við 0 fyrir hvern einstakling í því Herbergi munum auka n af 1 Nú er þetta reiknirit rétt? Jæja við skulum Bang á það aðeins. Virkar það ef það eru tveir í herberginu? Við skulum sjá. Í samræmi einn við frumstilla n 0. Fyrir hvert þessara tveggja manna, við hækka þá n um 1. Svo í fyrstu ferð í gegnum lykkja, uppfæra við n frá 0 til 1. Á annarri ferð í gegnum það Sama lykkja, uppfæra við n frá 1 til 2. Og svo, eftir þetta reiknirit er enda, n er 2, sem reyndar passar númerið af fólki í herberginu. Svo langt, svo góður. Hvernig óður í a horn tilfelli þó? Gerum ráð fyrir að það eru 0 manns í room-- nema ég, sem er gera talningu. Í samræmi einn frumstilla við aftur n 0. Í þetta sinn þó, lína þrír ekki keyrt á öllum þar er ekki manneskja í herberginu. Og svo n er 0, sem reyndar passar fjöldi fólks í herberginu. Frekar einfalt, ekki satt? En telja fólki eitt í einu er nokkuð óhagkvæm líka, ekki satt? Víst getum við gert betur. Hvers vegna ekki að telja tvo menn í einu, í stað þess að telja einn, tveir, þrír, fjórir, fimm, sex, sjö, átta, og svo framvegis. Hvers vegna ekki að telja tvo, fjóra, sex, átta, og svo framvegis? Það hljómar jafnvel hraðar. Og það er örugglega. Við skulum tjá þessa hagræðingu í sauðakóðanum kóða. Látum n jafnt 0. Fyrir hvert par af fólki í herbergi, stilla n jafnt n plús 2. Frekar einfalt breyting, ekki satt? Frekar en að telja fólki eitt í einu, við teljum staðinn þá tvo í einu. Þetta reiknirit er, svona, tvisvar sinnum eins hratt og síðast. En er það rétt? Við skulum sjá. Virkar það ef það eru tveir í herberginu? Í samræmi einn frumstilla við n 0. Fyrir að eitt par af fólki, við hækka þá n um 2. Og svo eftir þetta reiknirit er enda n er 2, sem reyndar passar númerið af fólki í herberginu. Gerum ráð fyrir næst að það eru núll manns í herberginu. Í samræmi einn við frumstilla n 0. Eins og áður, lína þrjú ekki framkvæma það allt þar eru ekki allir pör af fólki í herberginu, og svo n enn 0. Sem reyndar passar við fjöldi fólks í herberginu. En hvað ef það eru þrjár manneskjur í herberginu? Hvernig virkar þetta reiknirit fargjald? Við skulum sjá, í samræmi einn, Við frumstilla n 0. Fyrir a par af þeim, við hækka þá n um 2. En hvað þá? Það er ekki annað að fullu par af fólki í herberginu, svo lína tvö ekki lengur við. Og svo í lok Þetta reiknirit er, n er enn 2 sem er ekki rétt. Reyndar sagði þetta reiknirit er að vera gallaðir því að hún hefur mistök. Horf skulum við sum Ný sauðakóðanum kóða. Látum n jafnt 0. Fyrir hvert par af fólki í herbergi, stilla N jafn n plús 2. Ef ein manneskja er stakt, setja N jafn n plús 1. Til að leysa þetta tiltekna vandamál, höfum við kynnt í samræmi fjórum á ástandi, annars þekkt sem a útibú, að aðeins beitt af ef það er einn maður við gæti ekki parast við annan. Og svo núna, hvort það er einn eða þrír, eða oddatala fólks í herberginu, þetta reiknirit mun nú telja þá. Getum við gert enn betur? Jæja, við gátum treyst á threes, eða fjórum fótum, eða jafnvel fives og tugir, en umfram það, það er að fara að fá svolítið erfitt að benda. Í lok dagsins, hvort keyrð af tölvum eða mönnum, reiknirit eru bara a setja af leiðbeiningar sem til að leysa vandamál. Þetta voru bara þrjú. Hvaða vandamál myndir þú leysa með reikniriti? DAVID J. MALAN: Svo vísvitandi, mjög einfalt forrit, mjög einfalt reiknirit, til að ná eitthvað mjög einfalt, að telja að fjöldi fólks í herberginu. En við skulum stríða í sundur sumir af fulltrúa lögun hér sem eru í raun að fara að vera gagnlegt, jafnvel þegar framkvæmd sem mest flókið hugbúnaðar. Svo til dæmis, í þessari fyrstu línu, við höfum það sem við köllum breytu, og frá algebru, þú ert almennt þekki með því að nota x og y og z stundum, og svo framvegis. En í forritun, breytur eru enn, í lok dagsins, mjög svipuð. En það er kannski einfaldara að hugsa breytu sem bara ílát. Og í raun, það er einhver fjöldi bita framkvæmda einhvern veginn í harða diskinn þinn eða í minni tölvunnar, en meira um það í framtíðinni. Það er bara gámur. Og ef þú segir eitthvað eins láta n jöfn 0, vel það er eins og að hringja þetta glas skál hér n, bara handahófskennt nafn, og setja ekkert í það í upphafi. Þannig að verðmæti þessa skál er núna núll. Og auðvitað ef þú skynjar í síðari línu, að í raun hækka sumir línu númer, sem í þessari þriðju línu hér, með 1, það er eins og að segja hvað er að Núvirði n, er það 0, plús 1, setja eitthvað eins a ping-fýla boltanum í hér. Nú gildi þessa breytu er einfaldlega 1. Og þú gætir mjög fljótt framreikna, en nú er það 2, nú er það 3 og svo framvegis. Svo er það allt breytu er. Það er a stykki af geymslu til reyndar geyma nokkur gögn. Fyrir nú það er borðtennis boltanum. Það er það númer. En það gæti verið orð í a orðabók, eins og stafsetningu afgreiðslumaður Ég benti á að á miðvikudaginn fyrir einn setur vandamál á síðasta ári. Nú annar lykill hugmynd, að álíka er nokkuð leiðandi myndi ég krefjast, er að lykkju. Og lykkja í leiðinni að telja alla er, að sjálfsögðu, að gera slíkt hið sama hlutur aftur og again-- annaðhvort einn í einu eða tveimur í einu. Og þú getur tjáð þetta á ensku, eða sauðakóðanum kóða, í hvaða ýmsan hátt, en með því að nota þessa preposition "fyrir" er mjög algeng leið til að gera það. Fyrir hvern einstakling í herberginu, að gera þetta. Aftur og aftur. Og sú staðreynd að það er aum, lína þrír, þýðir bara að það þú ert að gera er efni sem er inndregin neðan línu tvö sjálft. Bara mannleg venju, en algeng einn eins og við munum sjá í raun Yfirmaður stigi forritunarmál. Nú lítið annað áhugavert er þegar þú færð í horninu að ræða. Til dæmis, a horn Málið var þegar það voru þrír menn, eða fimm, eða sjö, eða oddatala fólks í herberginu, því að gera það með því að twos bremsur lokum vegna að fara að missa einhvern, annaðhvort á mjög upphafi eða enda eftir því hvernig þú gerir það. Og svo, nú, ég hef þetta útibú, eða ástand, ef einn maður er, þá fara á undan og fara með það eitt einmana manneskja sem ekki fá parað við einhvern annan. Svo það er það sem við myndum kalla ástand, eða útibú. Nú sauðakóðanum kóða almennt má skrifað til að leysa hvaða fjölda vandamála. Og það sem ég hélt að við myndum gera hér er að taka a augnablik að bjóða eigum við að segja CS50 er eiga Rob Bowden á sviðinu til liðs tvö sjálfboðaliðum, sem hafa ekki hugmynd um hvað bíður. A hönd fór niður eins fljótt og ég sagði það. Hvað um þig á enda hér, koma upp. Og hvernig óður í lengra burtu, hvernig óður í gangi í bakinu. Til baka röð, komdu upp með hendur. Einmitt, og hvað er nafnið þitt? ANITA: Anita. DAVID J. MALAN: Anita. Jæja, gaman að hitta þig. Leyfðu mér að kynna þig fyrir Rob Bowden. Þetta er Anita. Og hvað er nafnið þitt? Kiersten: Kiersten DAVID J. MALAN: Kiersten. Kiersten, komdu upp og hitta Rob Bowden og Anita. Gaman að hitta þig. Kiersten: Gaman að hitta þig. DAVID J. MALAN: Einmitt, Rob. ROB BOWDEN: Gaman að hitta þig. DAVID J. MALAN: Anita. Kiersten: Hi Anita. DAVID J. MALAN: Og þinn nokkur hundruð bekkjarfélaga. Svo, nú látið mig fara á undan og draga upp réttlátur a einfaldur program hér á Mac OS sem læt mig reyndar hripa nokkrar athugasemdir um. Og ef þú krakkar vilja til hvers að taka stöðu á einn af þeim skólum þar, láta mig fara á undan og byrjar lista af sauðakóðanum kóða, ef þú vilt. Og það sem ég vil gera hér, lokum er gerð fyrir þig sumir leiðbeiningar sem okkar áhorfendur meðlimir eru í raun að fara að lesa upp fyrir okkur. Leyfðu mér að fara á undan og bara breytt þessu til númera lista að passa hvað við vorum að gera þarna. Og það sem ég ætla að gera með hjálp þín, er að skrifa forrit í sauðakóðanum, með hvaða þessir krakkar eru að fara að innleiða hnetu smjör og sulta samloku. Svo það er kannski apropos að sýna eitthvað sum ykkar gæti hafa séð á internetinu fyrir aðeins stutta pirrandi stund. [TÓNLIST BUCKEWHEAT Boys, "hnetusmjör  Hlaup TIME "] DAVID J. MALAN: OK. Það er nóg af því. Svo hér á meðan, ég er með par af Google gleraugu sem Við munum setja á eigin CS50 er Rob Bowden að sjá heiminn í gegnum augu hans. Og við munum gera okkar besta í pósti framleiðslu að í raun vefa myndefni af hvaða Rob er að sjá nú, í þessari raun fyrirlestur vídeó með tveimur okkar Sjálfboðaliðar hjá honum. Svo það sem ég ætla að gera er ég kem að typist. Við höfum það að markmiði hér á reyndar skrifa forrit sem að gera, að lokum, a smjör hnetu og hlaup samloku, en þessir þrír eru að fara að haga sér eins og þeir eru tölvur. Og tölvur, í lok dagsins, eru í raun nokkuð heimsk tæki. Þeir eru frábær fljótur, en þeir geta aðeins gera, bókstaflega, hvað þeir eru að segja. Þú getur ekki bara sagt að gera hnetu smjör og sulta samloku. Þú þarft að forrita þá til að gera það. Þú þarft að segja þeim með nákvæmni hvað ég á að gera, minna hlutirnir fara hræðilega og, vonandi skemmtilega skakkur. Svo með því að segja, við þurfum eitt símtal út af áhorfendum fyrir hvað ætti að stíga einn vera, ef markmiðið hér er að gera hnetu smjör og sulta samloku. Já? Áhorfendur: [inaudible] pokinn af brauði. DAVID J. MALAN: Opnaðu poka af brauði. Þannig að ef þrír keppendur myndu eins og til að halda áfram að gera það bókstaflega. Opna poka af brauði. [Áhorfendur Book] DAVID J. MALAN: Svo skulum við vinna að. Allt í lagi. Svo stíga tvö, how-- við skulum taka þetta lengra. Já, í framan. Áhorfendur: [inaudible] brauð. DAVID J. MALAN: Hvað er það? Áhorfendur: Taktu brauð. DAVID J. MALAN: Taktu brauð. Álíka gagnorðar. Þakka þér. [Applause] DAVID J. MALAN: Það er það? Allt í lagi, svo skref tvö er að fara að fjarlægja brauð. Einmitt, einhver vill skrifa okkur lengri setningu? Einhver annar? Smá meira [inaudible]. Nei, ekkert núna. Já? Áhorfendur: Place tvær sneiðar hliðina á hvor aðra. DAVID J. MALAN: Place tvær sneiðar hliðina á hvor aðra. [Áhorfendur Book] DAVID J. MALAN: Place tvær sneiðar hliðina á hvor aðra. Skref fjögur. Já? Áhorfendur: Taka þinn hönd og setja það létt ofan á hnetusmjör loki. [Áhorfendur Book] Áhorfendur: [inaudible] við hliðina á hnetusmjör. DAVID J. MALAN: Hvað? Segja þetta aftur. Áhorfendur: Skrúfaðu lokið og setja það varlega við hliðina á hnetusmjör. DAVID J. MALAN: Settu það varlega við hliðina á hnetusmjör. OK, framfarir. Skref fimm. Excellent. Já? Pick upp hníf. DAVID J. MALAN: Pick upp hníf. OK, sporinu. Já? Áhorfendur: Haltu hníf með handfangi. DAVID J. MALAN: Haltu hníf með því að handfangið. Haltu hníf af festingunni. Skref sjö. Já? Áhorfendur: [inaudible] hníf í hneta smjör og eins lítið út [inaudible]. DAVID J. MALAN: Settu hníf in-- I heyrt "setja hníf í hnetusmjör og taka eins lítið út og hægt er. " Við the vegur, fjarlægja pappír fyrst. Allt í lagi, skref níu. Skref níu. Skref níu. Við höfum í raun ekki gert samloku enn. Já? Áhorfendur: Notkun hníf í hnetusmjöri, gilda hnetusmjör á umræddum brauð. DAVID J. MALAN: Notkun hníf í hnetusmjör, gilda hnetusmjör á sagði brauð. [Áhorfendur Book] DAVID J. MALAN: Allt rétt skref 10. Skref 10. Já? Áhorfendur: Taste hnetu smjör til að tryggja gæði. [Áhorfendur Book] DAVID J. MALAN: Skref 11. Step 11. Step 11. Komdu á. Já? Rétt þar. Áhorfendur: Vandlega velja upp hlaup. DAVID J. MALAN: Vandlega velja upp hlaup. OK, og þá annað hendi var upp. Rétt á eftir þér. Já, í bláu. Áhorfendur: Allt í lagi, fjarlægja lokið frá [inaudible], já, fjarlægja lokið af hlaupi. [Áhorfendur Book] DAVID J. MALAN: Frá hlaupi. Ha ha. [Áhorfendur Book] DAVID J. MALAN: Og? Áhorfendur: Og varla sópa allir [inaudible]. [Áhorfendur Book] Áhorfendur: Auðvitað, áður en [inaudible], fjarlægja pappír frá hlaupi. DAVID J. MALAN: Fjarlægja pappír frá hlaupi. Skref 14. Við erum næstum þarna. Já? Áhorfendur: Snúa hlaup flaska áður en allt fellur út. DAVID J. MALAN: Snúa hlaup flaska fyrir hlaup fellur út. Skref 15. Áhorfendur: Setjið tappann. DAVID J. MALAN: Setjið tappann. Skref 16. Já? Áhorfendur: [inaudible] DAVID J. MALAN: Segja að aftur. Áhorfendur: Taktu hettuna af sulta þinni. DAVID J. MALAN: Off hlaupi þinn. Svo really-- Úps. Komdu á. Setjið tappann. Setja cap-- Þú sagðir fjarlægja hettuna af hlaupi. Finnst eins og við erum í smá lykkju. Skref 17. Já? Áhorfendur: [inaudible] DAVID J. MALAN: Segja að aftur. Áhorfendur: [inaudible] DAVID J. MALAN: Fara aftur til step-- Áhorfendur: [inaudible] DAVID J. MALAN: Fjarlægja hettu úr smjöri hnetu. Já? Áhorfendur: sleppa öllum hlaup á brauð. DAVID J. MALAN: Drop allt hlaup á brauð. DAVID J. MALAN: Við erum næstum þarna. Step 19. Áhorfendur: Fjarlægið umfram hlaup. DAVID J. MALAN: Haha, hlaup. [Applause] DAVID J. MALAN: Af hverju we-- ekki eitt skref til að taka þetta heim. Eitt skref og þá Við munum þjóna samlokur. Já? Áhorfendur: [inaudible] DAVID J. MALAN: Þó allir samloku undirlið remains-- skulum this-- borða. [Áhorfendur hlátur] DAVID J. MALAN: Allt í lagi, þakka þú sjálfboðaliða sem hér. [Applause} DAVID J. MALAN: Við höfum sumir ágætur skilnaði gjafir fyrir ykkur. Eigin hnetusmjör þinn, hlaup, og brauð til að koma aftur heim. Þakka þér. Kiersten: Þakka þér. DAVID J. MALAN: [inaudible] velkominn. [Applause] DAVID J. MALAN: Svo þetta er, Auðvitað fáránlegt dæmi. Ekki satt? En það er góður af ljós hvernig við menn bara að taka skýra fyrir hlut. Og sú staðreynd að ég hef verið tala við aðra manneskju, hann eða hún veit bara hvað þú átt við. Tölvur eru ekki að fara að vita hvað þú átt við, jafnvel þegar, eins og við erum að fara að gera í dag, forritun eitthvað í grunni, að draga og falla, púsluspil stykki stíl tungumál. Jafnvel hannað fyrir unga börn, hefur þú að vera svo skýr og svo bókstaflega með hvað þú vilt program til að gera. Nú að lokum, við erum að fara að vera forritun ekki í sauðakóðanum kóða, Enska eins setningafræði, en númer eða fleiri rétt, uppspretta merkjamál. Kóðinn er bara fínt leið til að lýsa kóðann sem þú í raun og veru skrifa með lyklaborðinu sem er ekki á ensku í sjálfum sér. Það er í C ​​eða Java eða C ++ eða eitthvað svona, eins og við munum sjá fljótlega. Og í raun, bara til að hræða a nokkrar af þér, við fyrstu sýn, þetta er forrit skrifað á tungumáli heitir C. En til að un-skrekkur nokkrar af þér, þú verður alveg skilja hvað er að gerast á koma næsta mánudag er það kemur að einhverju svona. Frankly, þetta er eldri tungumál. Það er nokkuð yfirnáttúrulegt, en það er dæmigert a einhver fjöldi af tungumálum þessa dagana að hafa fullt af svigum og hrokkið axlabönd og gæsalappanna og semikommum. Og mikið af þessu nokkur dæmi um setningarleg efni sem er ekki yfirleitt vitsmunalega áhugavert. Reyndar, það er mæli truflun frá mjög einföldum hugmyndum sem eru starandi okkur í andlitið. Þetta forrit, eins og þú might bara giska, prentar á tölvuskjá einhvers orðin "Halló komma heim." Það er það. Svo greinilega, það er a einhver fjöldi af efni sem er fá í the vegur af sumir Sjálfsagðar þar, en það er að fara að mjög fljótt miði í burtu og vera alveg innsæi. Reyndar, það sem við erum að fara að gera í dag er distill þetta nokkuð flókið leita program, sem aftur þú munt koma að skilja fljótt, en að eitthvað miklu einfaldara. Við skulum bara segja það sem er átt við. Við skulum draga upp mynd af því sem við er átt, með því að þessi stykki púsluspil hér. Þannig að þetta er forritun tungumál þekktur sem grunni. Það var þróað af MIT Media Lab. Og það sem þú munt sjá í vanda sett núll, sem kemur út síðar í kvöld, við verðum að fara að þessu URL hér scratch.mit.edu. Og þeir hafa á vefnum undirstaða tengi með sem þú verður að skrifa fyrstu program. Eða þá með áður reynslu, annað forrit, en í umhverfi sem er sennilega svolítið framandi og mun ýta þér að búa til eitthvað nota þetta mjög sjónræn umhverfi. Nú, það sem ég ætla að gera hér er opinn upp kerfið sjálft. Það er til ekki aðeins eins og a vefur flettitæki, en einnig sem downloadable forrit þannig að þú getur í raun notað það ef þú ert ekki aðgang. Og ég ætla að gera það hér, í Sanders, bara ef Wi-Fi ekki vinna frábær vel. Og það sem ég ætla að gera er að benda út nokkrum lögun þessarar áætlunar. Svo, að vera ljóst, ég hef bara tvöfaldur smellt á táknið á skjáborðinu mínu, eða equivalently farinn að scratch.mit.edu, og það er dregið upp þennan glugga. Þetta er forritun umhverfi. Það er a stykki af hugbúnaður þessi sumir af vinum okkar á MIT skrifaði að við skulum okkur og þú skrifar forrit í tungumáli kallast grunni. Nú gerist þetta að vera köttur sem er einnig nefnt Scratch og þetta er heimur hans þar sem hann býr. Þetta er það stig, svo að segja, að rétthyrningsins á efst vinstra horninu. Og hann þarf ekki að líta út eins og köttur. Þú getur gert hann líta eins og ekkert og þú getur haft margar slíkar sprites, eða stafir, í áætluninni. Á meðan, hérna lengst rétt, er stór auður ákveða. Og þetta er þar, í smá stund, við erum að fara að byrja forritun með því að draga og sleppa þessir myndræna þraut stykki sem eru rétt hér í miðju. Og það er miklu meira af þeim en Við munum eyða tíma hér í bekknum vegna þess að þú munt komast að því að þeir eru allir nokkuð leiðandi. Aftur, það er hönnuð fyrir börn, en við nota það til að stríða í sundur eitthvað af þeim grundvallarréttindi hugmyndir breytum, lykkjur, aðstæður, og, fljótlega, hlutir eins virka og viðburðir og þræði og öðrum ímynda hlutir sem við munum fá að áður en langt að í raun búa til eitthvað frá grunni. Orðaleikur ætlaður. Nú, það sem ég ætla að gera hér er smelltu á ekki hreyfingu, en stjórn. Og þetta er bara flokkun here-- og ég sé annað lit sett af blokkum. En taka nokkur kunnugleg orð. "Ef" og "annars ef" og "endurtaka". Og þú geta sennilega giska það er minnir á grein, eða skilyrðum sem við sáum, og jafnvel lykkja reisa. Þannig að við höfum svipaða blokkir hér. En mest áhugavert einn er þetta einn hér. Þegar þetta græna fáninn er smellt þetta fyrir þá sem eru með fyrri forritun reynslu, er jafngildir til meginvirkni. En fyrir þá sem ókunnur, þetta er ráðgáta stykki sem mun sparka byrja öllu kerfinu okkar. Það þýðir bókstaflega þegar ég fer í þetta program, og smelltu á græna flag-- sem þú getur séð hér í efst til vinstri hönd horn af the HÍ, svo að sjá græna fána við hliðina á stöðva rauða tákn? Þegar ég smelli að minn program er að fara að keyra. Nú, ég er að fara að gera eitthvað frábær einfalt með grunni. Ég ætla að fara á undan og fara með það útlit spjaldið hér, þar sem ég hef fullt af fjólubláum stykki púsluspil, og ég ætla að fara á undan og gera eitthvað frábær einfalt eins og að segja. Og then-- tilkynning þessi texti í hvítum kassa er editable-- ég ætla að segja "Halló heimur" bara eins og við gerði í texta útgáfa fyrir augnabliki. Og nú ef ég fer og smelltu þessu grænn fáni, ég hef nú forritað. Það er ekki sérlega áhugavert forrit, en ég gerði í tölvunni að gera eitthvað. Ég byrjaði forrit og það gerði það sem ég sagði að það á að gera. Nú get ég haldið áfram að draga og sleppa meira og meira af þessum stykki púsluspil og þeir eru að fara að interlock, en skulum smellu sumir hugtök á hér að við munum sjá endurteknar um námskeiðið, og í raun allan tölvunarfræði og forritun almennt. Þetta "segja" blokk, rauðum purpura, skulum bara að byrja að hringja yfirlýsingu. Það er eins og yfirlýsingu um staðreynd. Gera þetta. Svo, það er flokkur leiðbeiningunum sem þig gæti fæða tölvu sem hluta af a program eða reiknirit. Og til að vera skýr, hefur þú líklega tekið sem sjálfsögðum hlut að þú hefur forrit á tölvunni þinni. Og þeir eru eins konar reiknirit, en Forritið er í raun fullt af reiknirit að sumir menn skrifuðu. Þeir pakkað það upp og þeir seldu það svo þig, eða þeir staða á vefsíðu fyrir þig að sækja. Svo, a program er bara allt fullt af núllum og sjálfur að einhvern veginn, menn skapa. Og þessir mynstur núllum og sjálfur tákna hluti, að lokum, eins og "segja halló veröld" eða "spila þetta tónlist "eða" spila þetta myndband " eða "senda tölvupóst." En við munum koma aftur í vegur nánar hvað forrit er þegar þú, sjálfur, skrifa þá. Hér er annað statement-- "Bíddu í eina sekúndu." Ég vissi ekki að nota þetta ennþá, en ef ég vil áætlun mín að gera hlé um stund að gera eitthvað, ég get sagt það að gera svo. Bíða eina sekúndu. Nú annað gæti verið "leika hljóð." Svo, þetta er einstakt að klóra, það hefur getu til að spila hljóð. Svo, yfirlýsing sem ég gæti Notkun er, hér, "leika hljóð." Á sama tíma, Boolean tjáningu, þannig að þetta er áhugamaður orð heitir eftir aðeins gaur sem heitir Mr Bool, og þetta er allt um spurningu. Satt eða false-- er mús niður? A Boolean tjáningu er bara sumir tjáning á ensku það er annað hvort sönn eða ósönn. Annað hvort á eða burt. Annað hvort einn eða núll. Þú getur hugsað um það í hvaða ýmsan hátt, en það er annað hvort satt eða þetta rangt, að lokum. Svo "mús niður spurningarmerki," sem myndi vera Boole tjáningu. Og er hægt að hugsa um aðra, kannski. Til dæmis, "er til vinstri fjöldi minna en á réttum númer? " Það líka, væri Boole tjáningu. "Minna en" er Boole tjáning. Þetta líka, "snerta mús bendill." Ég er ekki viss hvers vegna þeir kallaði það mús bendill. Það þýðir bara, er bendillinn, er ör á skjánum, snerta köttinn, til dæmis. Eða einhver annar þáttur af the skjár. Og það er spurning, aftur, og sem táknar Boolean tjáningu. Eitthvað sem þú gætir vilt nota í ástandi. Þannig að við munum koma til að í aðeins eitt augnablik. Þú getur "og" hlutirnir saman. Svo, ef þú vilt athuga hvort það er raunin og það er málið, þú getur notað "og" blokk eins og þetta. Og hér er það ástand. Takið eftir lögun af litla opnun efst í þessum gulu þraut stykki, það er minnir á laginu að við sáum bara í smá stund síðan. Hver af þessum Boolean tjáning hafa þessar bent brúnir á vinstri og hægri. Og það er vegna þess að MIT fólkinu ákveðið að með því að sjónrænt færibandsöxlum stærðum, þú getur konar hjálpa fólki, nemendur og börn eins, að eins konar fylla í eyðurnar bókstaflega. Nú puzzle-- að það opnun er svolítið lítill, og eins og við munum sjá í áætluninni, í grunni, það mun vaxa til að passa. Það mun halda lögun sinni, að lokum. Svo ástand skulum þú ákveður "Á ég að gera eitthvað eða ekki?" A Boolean tjáning er í raun spurning þú ert að nota til að ákveða get ég farið að vinstri eða þarf ég að fara til hægri þegar ég fundur þessi svokallaða punga í veginum? Hægt er að hafa tvær greinar. EF eitthvað er satt, gera þetta, annars fara svona, eða þú getur bara ekkert gert í allt, sem þessi blokk í skyn. Á sama hátt getum við hreiður þetta. Svo ef þú vilt að þrefaldur gaffal í vegum, annað hvort að gera þetta eða þetta eða þessi, þú getur bara hreiður þetta saman. Og það byrjar að fá smá ljótur, loksins, fyrir viss, en rökfræði er enn sú sama. Þú getur bókstaflega að lesa þetta efst til botn og það segir hvað það means-- ef þetta er satt, að gera þetta, annað ef annað. Lykkja ekki fá einfaldari í grunni. Forever gera eftirfarandi. Nú þú might ekki hugsa þig getur gert mikið af því að það er ekki mikið pláss á milli efstu og Neðst á þessari þraut stykki opnun. En þú munt sjá Scratch er að fara til vaxa til að passa eins mörg stykki púsluspil eins og þú vilt að troða í það. Annar lykkja gæti verið lýst með endurtekningar. Ef þú veist fyrirfram, "ég langar að gera eitthvað 10 sinnum, " þú getur bara sagt rispað að gera eitthvað 10 sinnum. Og, á meðan við getum haft breytur. Svo er hér handahófskennt einn, það er appelsínugult í þessu tilfelli, og þetta er vindbylur ferðina. Aftur, munt þú finna þetta mjög aðgengilegt þegar þú byrjar að benda og smella. Ég hef nefnt breytilega n mína, en ég gæti hafa nefnt það allt sem ég vil, og ég ætla að setja hana hér, í þetta handahófskennt dæmi, á núll. Nú sjá forrit eins halló heimurinn er ekki allt sem sannfærandi, þannig að við skulum opna raun upp eitthvað að fyrrum nemandi gerði. Leyfðu mér að fara á undan og opna upp, til dæmis, this einn hér, sem ég myndi elska að hafa sjálfboðaliða. Allt í lagi, hvernig about-- skulum fara lengra. Já, komdu upp. Hvað er nafn þitt? Abby: Abby. DAVID J. MALAN: Abby, koma upp. Svo hefur þú einhvern tíma spilað þessi leikur áður? Abby: Nei DAVID J. MALAN: Allt í lagi. David, gaman að hitta þig. Komdu. Og hvað er forritun þitt bakgrunnur, ef einhver er. Abby: Ég hef lært nokkrar C ++. DAVID J. MALAN: Þú hefur lært nokkur C ++. Og hvað er þinn leikur spila bakgrunn? Abby: Ekki mikið. DAVID J. MALAN: OK, þannig að við munum taka það. Svo er hér hvernig leikurinn er að fara að vinna. Ég ætla að fara á undan og smelltu á græna fána, sem er upp hér efst til hægri. Nú forveri þinn í bekknum hefur gefið þér leiðbeiningar hér. Og í bara smá stund, það segir "pláss til að byrja." Svo fara á undan og högg the rúm. Computer Game: Pikachu. DAVID J. MALAN: Og markmiðið er að grípa mat, eins og sýnt er þar til vinstri. Og [inaudible] [GAME tónlist spila] DAVID J. MALAN: Aww, vel, þakka þér fyrir að spila. Við höfum hér aðeins skilnaði gjöf fyrir þig. Við höfum CS50 streitu boltanum, ef þú vilt að velja. Allt í lagi, gott að hitta þig. Þakka þér fyrir að koma og krefjandi. Þannig að við höfum fleiri streitu kúlur, svo við skulum gera eitt dæmi til að hvetja. A sjálfboðaliði? Allt í lagi, hvernig um hérna fyrir framan. Hvað er nafn þitt? PHILLIP: Phillip. DAVID J. MALAN: Phillip. Komdu upp, Phillip. Svo, Phillip er að fara að vera áskorun með annan leik að einn af forverum þínum skrifaði sem hluta af vandamálinu setja núll, kallað erfiðasta leik IVY er. Og við munum sjá í aðeins stund hvað er átt við með þessu. Phillip, gaman að hitta þig. Hvað er bakgrunnur þinn? PHILLIP: Lokið mikið af erfðaskrá. Gert smá gaming líka. DAVID J. MALAN: OK. Fékk fullt af gaming líka. Og hefur þú spilað þennan leik áður? PHILLIP: Nei DAVID J. MALAN: Allt rétt, svo hér við fara. Ég ætla að fara á undan og smelltu á græna fána. [GAME MUSIC] [TÓNLIST MC Hammer, "U getur ekki snerta þetta"] PHILLIP: [inaudible] DAVID J. MALAN: [inaudible] PHILLIP: [inaudible] [Book] [TÓNLIST MC Hammer, "U getur ekki snerta þetta"] DAVID J. MALAN: [inaudible] Plægja í gegnum það. PHILLIP: [inaudible] DAVID J. MALAN: Fara á undan. [TÓNLIST MC Hammer, "U getur ekki snerta þetta"] DAVID J. MALAN: Allt í lagi. Til hamingju. [Applause] DAVID J. MALAN: Við munum staða að á netinu síðar þannig að þú getur fresta með það eins og heilbrigður. Princeton kemur upp næst, eftir það. Svo nú skulum raunverulega áfram að byrja frá grunni, svo að segja, og í raun byggja upp þar til við getum stríða sundur sum af þessum hugmyndum og fá eitthvað jafnvel flóknari í lok. Ég ætla að fara yfir hér og ég ætla að fara á undan og búa til nýja skrá. Svo aftur, vandamálið sett mun ganga þú í gegnum sumir af þessum skrefum. En allt sem ég gerði var að fara í File valmyndinni og ég sagði "nýtt," svo mikið eins og Microsoft Orð eða hvaða forrit eins og þessi. Og við skulum fara á undan now-- og við framkvæmda "Halló heimur" í smá stund síðan, en við skulum gera eitthvað aðeins sætari. Ég ætla að fara upp í atburðum. Og ég ætla að gera "þegar grænn fáni smellur. " Og þá er ég að fara að nota, eigum við að segja, útibú. Þannig að ég ætla að nota "ef" ástand. Og taktu eftir hvernig leið og ég nálgast við það, vill það til að smella saman. Svo ég sleppti og það hrekkur saman. Og nú get ég gert eitthvað áhugavert. Ef ég skruna í gegnum hér, ég er að fara að sjá a heild búnt af blokkum. Ef ég fer til "gögn" - láttu mig þysja in-- það er eitthvað um breytur. Ef ég fer til "hreyfingu" þú getur virðist snúa dæminu við. Ef ég fer til "rekstraraðila" - ó, þetta er áhugavert, Ég get valið af handahófi númer. Svo láta mig gera eitthvað með aðeins sumir líkur, bara vegna þess. Ég ætla að fara á undan og draga þessa þraut stykki, þetta er að minna en blokk, svo það er bara "Er þetta númer minna en þessi einn?" En ég vil ekki harður kóðann númer því að vera nokkuð tilgangslaust. Þannig að ég ætla að draga þetta stykki hér, og taka eftir hvernig hún smellur í, og nú láta mig fara á undan og segja "ef sú tala sem er valinn af handahófi er minna en sex, gera eftirfarandi. " Nú hvers vegna færri en sex? Hvað líkur er þetta í raun að fara að gefa mér, bara innsæi? Um 50%, ekki satt? Ef sú tala sem er giska handahófi á milli 1 og 10 er minna en sex, greinilega er það einn, tveir, þrír, fjórir eða fimm. Og svo það er að fara að gefa mér 50% líkur á því að gerast? Jæja við skulum gera eitthvað eins þetta, "leika hljóð meow." Og tilkynning aftur, þraut stykki vex að passa, svo lengi sem form passa. Það er það sem er mikilvægt. Leyfðu mér að fara yfir til grunni hér og smella á "play". Ekkert gerist. Er það galla? Nei, ekki nauðsynlegt. Það gæti bara verið að stærri tala var valinn. Svo skulum gera það aftur. Ekkert. [Meow] DAVID J. MALAN: Það er það. [Meow] DAVID J. MALAN: Aftur. Nei [MEOWING] DAVID J. MALAN: Svo ef þú hefur alltaf leikið leik, að sjálfsögðu, þar sem efni er að gerast af handahófi, eins slæmur krakkar eru að koma eða ekki koma á skjáinn, eða hlutirnir eru að falla eða ekki að falla, það er bara vegna þess að eitthvað super einfalt eins og þetta er að gerast. Pick a handahófi tala, og ef það er minna en sumir gildi, kannski að gera þetta eða kannski að gera það. Við getum fella sem í ástandi. Við skulum gera eitthvað annað. Leyfðu mér að henda því í burtu. Hægt er að fá losa af efni með bara að draga það burt til vinstri og sleppa. Leyfðu mér að fara á undan og gera eilífu blokk og mjög fljótt að gera eitthvað pirrandi. Leyfðu mér að fara á undan og segja "spila hljóð meow." En ég vil ekki að þetta sé of pirrandi, svo látið mig grípa þessa blokk, "Bíddu eina sekúndu," og tilkynning það er ekki meira pláss fyrir það. En ef þú ferð nógu nálægt, það vill fara þangað. Svo ég sleppti og það verður vaxa að fylla blokkina. Svo nú er þetta lykkja. [MEOWING] DAVID J. MALAN: Ég er bókstaflega að gera þetta að eilífu. Aftur og aftur. Það er bara ekki eðlilegt hljómandi. Leyfðu mér að fara á undan og breyta þessu að ekki eitt augnablik að tvær sekúndur og ýttu á Enter. Og hvað er gott um Scratch er að þú gætir áætlun gagnvirkt. Gera breytingu, kannski Enter eða spila aftur, og það verður bara að halda áfram. Jæja, nú hvers vegna eigum við ekki að gera eitthvað smá sætur? Frekar en að gera allt frá grunni, láta mig fara á undan og opna upp fyrirfram gerði einn, sem ég fyrirfram bakaði, heitir "Pet Cat." Og við munum senda öllum þessar skrár á netinu, og vandamál setja núll mun segja þér hvernig á að fá aðgang að þeim og opna þá upp. Og tilkynning, þetta er frekar einfalt. En fyrirfram, virðist ég að hafa grípa a "að eilífu" blokk, þannig að ég hef fengið lykkju. Og þá hef ég fengið "ef" ástand. Ég hef fengið Boolean tjáningu. Svo í ensku, bara glancing á þetta, sérstaklega ef þú hefur aldrei forritað áður, bara innsæi, hvað er þetta að fara að gera, þetta forrit? [Áhorfendur umræður] DAVID J. MALAN: Ef þú klappa kettinum, kötturinn er að fara að meow, ekki satt? Vegna þess að "eilífu óhindraður" er músarbendillinn snerta köttinn. Svo til að vera skýr, og ég sagði ekki þetta áður, öll þessi þraut stykki og handritið sem Við höfum sameina þær í, svo að segja, handrit er samheiti program, í raun, tilheyrir þessum kött. Og ástæðan is-- því tilkynning hvernig þetta sama köttur hér er lögð áhersla á, niður hér getur þú búið til Annað köttur eða hundur eða í raun eitthvað sem þú vilt myndrænt. Þú getur flutt inn eitthvað frá Photoshop, eða þess háttar, og samþætta eitthvað ef þú langar að gera það fyrir verkefni. Og það sem þú munt finna, lokum, er að þér getur bætt forskriftir, bæta þraut stykki, til einstakra stafir. Svo þetta allt tilheyra þetta tiltekna köttur. Svo nú ef ég fer á undan og spila þetta forrit, ekkert er að gerast. En það er í gangi. Dagskráin er í þessu að eilífu lykkju, konar bíða fyrir það að gerast? [Áhorfendur umræður] DAVID J. MALAN: Til klappa kettinum. Svo ef ég flyt músina mína til him-- [MEOWING] DAVID J. MALAN: Svo nú Ég klappa kettinum. Á sama tíma getum við hafa tvöfalda útibú. Leyfðu mér að fara á undan og opna upp ekki gæludýr ekki köttinn. Við munum senda þetta á netinu eins og heilbrigður. Þetta er svolítið meira flókið, en án þess að segja þú getur giska kannski hvað er að fara að gerast. [MEOWING] DAVID J. MALAN: Cat er meowing, Grand gamla tíma. En þetta forrit er að sjálfsögðu kallast "Ekki Gæludýr ekki Cat," svo skýrt, ég vil að klappa kettinum. [ROARING] DAVID J. MALAN: Ekki klappa kettinum. Nú, við skulum taka a líta á annað dæmi hér. Þessi eina mun kallast "Hæ, Hæ, Hæ," ástæðum sem mun vera ljóst, vegna þess að eins fljótt og ég að keyra þetta thing-- [SEAL BARKING] DAVID J. MALAN: Mjög auðvelt að skrifa pirrandi Scratch forrit. [SEAL BARKING] DAVID J. MALAN: Nú munum við ekki fara í smáatriðum með öllum þeim, en taka það er par af nýr lögun hér. Það er breytilegt, sem heitir "þaggað" og þá er það fullt af aðstæðum. Og nú, láttu mig bara stríða þér með því að segja að ef þessi strákur verður of pirrandi, Ég get ýtt á bilslána og hann hættir. Þar sem hlutverk að spila með þessir tveir forskriftir er sem hér segir. Einn af þeim er að gera á gelta á nokkurra sekúndna fresti. Hitt er bara að bíða fyrir mig að lemja á rúm. Og ef ég högg the rúm, það er að fara að breyta ástand þessa breytu, gildi þessa breytu, það er greinilega kallað "þögguð" Ég hefi ekki kallað það eitthvað leiðinlegt eins og n, Ég kallaði það enskan orð, "þögguð." From 1 til 0 eða 0 til 1. Frá satt að rangar eða ósatt í satt. Og svo þú getur raunverulega sjá nú, að þér gæti hafa tvær forskriftir, tveir forrit í gangi samtímis, og þau bæði gætu verið sitjandi í lykkju að gera eitthvað. Bíð eftir mönnum til að gera eitthvað eins og hitting rúm. [SEAL BARKING] DAVID J. MALAN: Og nú Hann er á leið aftur. [SEAL BARKING] DAVID J. MALAN: Svo hvað annað gætum við gert með þessum dæmum? Jæja, við skulum fara á undan og gera að Dæmi með telja kindur. Við munum halda áfram þessari sömu nótum hér of-- skulum opna sauðfé dæmi. Og tilkynning, eins og áður, þetta eitt, sem betur fer, er aðeins minna pirrandi. Þegar ég lenti spila here-- Ó nei, þetta er pirrandi. Hann er að fara að BAA með nokkrum líkum. Skulum spila þetta aftur. [Sauðfé BLEETING] DAVID J. MALAN: Eini munurinn er Við höfum breytt búning, svo að segja, og við erum að helminga og segja hvað sem raunveruleg tala er. Jæja við skulum fara á undan og taka þetta einu skrefi lengra. Og láta mig stríða þér með einn annar lögun hér. Við skulum fara á undan og opna upp forrit sem heitir þræði. Svo mikið eins og þú getur haft einn Sprite, hafa mörg handrit, þú getur haft tvær sprites, fugl í köttur, hvert með eigin handriti þeirra. Og hver þeirra getur starfa samtímis. Ef þú hefur einhvern tíma heyrt Orðið "multithreading" tölvan er "multithreaded" þýðir það getur gert marga hluti í einu, og reyndar svo má Skafðu. Og nú taka fuglinn er góður af heimsk. Það er bara að gera hlutina af handahófi, skoppar á skjánum. Ljóst er að kötturinn hafi verið forritað að eins konar hafa leita hæfileiki heimili í um fuglinn því ég hann er alltaf að benda á hann. Þar til að lokum, hann veiðir í raun fugl. Þannig að ég mun ekki búa á upplýsingum hér, en þú getur konar svipinn sömu form, sumir "Ef" aðstæður, sumir breytur, kannski sumir lykkjur eru lokum gera slíkt hið sama. Nú láta mig fara á undan og opna upp eitthvað annað að öllu leyti, að stríða og sum ykkar, sérstaklega þá öruggari, hvað þú getur raunverulega að gera með þetta. Ég ætla að fara á undan og opna Button hér. Og þetta er frábær einföld virðist program, en horfa á það sem gerist þegar I-- Horfa á hvað gerist þegar ég opna þessa útgáfu af henni, hér í vafranum, scratch.mit.edu. Og þegar ég smelli þessum stóra rautt hnappinn, taka eftir hvað gerist. Svo hvað er að gerast hér? Það er í raun miklu meira flókið fara á undir hetta, jafnvel þó að ég hef innleitt þetta eða hreinskilnislega, Dan Bradley hefur innleitt þetta svo einfaldlega. Hann hefur hannað sérsniðin Scratch púsluspil stykki, þekktur sem Scratch eftirnafn, Hann kallaði það Víxla. Og hvað Víxla gerir er að það sendir skilaboð í gegnum netið. Og þessi skilaboð sjálf lítur svolítið dulinn. En þetta líka, þú munt skilja eftir lok tíma er. Skilaboðin sem hann er í raun að senda lítur smá eitthvað eins og this. Það er bara texti. Cryptic. Þú munt skilja það eftir þeim tíma við fá vandamál að setja sjö. Það er bara að senda texta skilaboð í gegnum netið til miðlara. Og það framreiðslumaður er, að lokum, tala við þennan ljósapera, sem er eitt af þeim fínum ljósaperur í það sem sjálft, er að tala Wi-Fi í net hér, þar sem staðbundin tæki niður here-- og að lokum, það er í raun beygja það ljós á og burt. En við getum gert meira áhugavert enn. Taka eftir hvað Dan gerði einnig fyrir okkur. Hann gerði margar sprites, hver sem hefur handrit að bíða eftir að smella. Og ef ég smelli rautt, fer það rautt. Ef ég fá blá, fer það blueish. Grænn, gulur, appelsínugulur. Og allt þetta er að gerast með fara leið út á netið, aftur niður hér til ljósapera, á og burt. Og ef þú getur trúað it-- og þetta er kannski einn af flóknustu grunni verkefni sem einhver hefur implemented-- Hann gerði það, í sanngirni, í dag. Og það var áskorun sem við kastaði niður til Dan þegar við sáum að hafa tvöfaldur ljósaperur, hvernig við höfum grunni, getum við sameinað þá? Og reyndar, þetta er algerlega eitthvað einhver í þessu herbergi gæti gert með end-- önn Er hann reimplemented tvöfaldur ljósaperur nota sama tengi sem var á iPad okkar á miðvikudag. Svo að nú, ef ég í raun smelltu á plús hérna, við höfum einn, tveir, þrír. Ég get ýtt á 16 og snúa að einn á. 128, og svo framvegis. Nú ef að einn hefur og blásið huga þinn, þú gætir gert hlutina miklu aðgengilegri, þar sem ekki allir vélbúnaður vissulega. Bara hluti á skjánum sjálfum. Og reyndar það sem flestir nemendur á endanum að gera er einhvers konar leik, sumir stykki af listaverki, eða einhvers konar gagnvirkt fjör. Og ég mun segja eitt okkar uppáhaldi hefur verið þessi. Og ég hélt að ef við gæti dekkja ljósin, Við munum taka svipinn á þetta endanlega Scratch verkefni í niðurstöðu. En hvað sem þú munt ættir að hafa í huga, eins og Ég get stríða þér með eitt smáatriði, sneiðingu hefst í næstu viku. Viðtalstímar hefjast í næstu viku. Heimadæmi núll verða settar CS50.harvard.edu síðar í dag. Og þú verður að fagna í vandamál setja núll eigin CS50 er Zamyla Chan, sem leiðsögumenn flestum walkthroughs okkar. Þetta eru embed myndbönd í vandamál setur sem mun halda hönd þína í gegnum mikið af upphaflegu uppsetningunni og með mörgum á hugsanlegum ákvörðunum hönnun. Svo ef þú hefur einhvern tíma fengið þessi tilfinning þegar þú tekur upp heimavinna verkefni og spá, hvar á ég að byrja? Hún mun hafa það svar fyrir þig. Og nú, að endanleg áætlun frá einum af forverum þínum í svari við spurningunni "Hvað refurinn segja?" [TÓNLIST YLVIS, "Hvað segir FOX segja?] YLVIS: (syngja) Hundur fer Woof. Köttur fer Meow. Bird fer kvak og mús fer squeak. Kýr fer MoO. Frog fer croak. Og fíllinn fer Toot. Endur segja bra og fiskur fara Blub. Og innsigli fer ow ow ow, en það er eitt hljóð sem enginn veit, hvað þýðir refurinn segja? Og DAVID J. MALAN: Það er það fyrir CS50. Við munum sjá þig á Puzzle Day og á mánudag. [Applause] [TÓNLIST YLVIS, "Hvað segir FOX segja?"] Sögumaður: Og nú djúpt hugsanir, eftir Daven Farnham. Í dag fékk ég högg í andlit með símaskránni. Ruglingslegt, eins og ég á heim að horfa á netinu.