[MUSIC Playing] [Duartrokitje] DAVID J. Malan: Kjo është CS50, Prezantimi i Universitetit të Harvardit për intelektuale ndërmarrjet e shkencave kompjuterike dhe arti i programimit. Tani në qoftë se ju jeni në mesin e atyre që çdo vit janë ulur këtu me pak e nervave në mendjen tuaj, të tilla që ju nuk mendoni se ju i përkisni këtu, ju mendoni se më dikush ulur rreth jush di shumë më tepër se ju, është me të vërtetë më të rehatshme se ju në kompjuter shkencës apo kompjutera në përgjithësi, të realizuar se 78% e nxënësve që tani marrë CS50 nuk kanë përvojë të mëparshme. Në të vërtetë, nuk ka 100 dots atje ne ekran, 78 i cili janë të gjelbër të ngurta, që do të thotë ju, në qoftë se ju jeni në mesin e atij demografike, janë në kompani shumë të mirë këtu në jashtë. Dhe nëse ju jeni në vend në mesin e 22% e nxënësve CS50 të cilët bëjnë të vërtetë kanë përvojë të mëparshme, qoftë në shkollë të lartë apo ndonjë program tjetër, të kuptojë se ju, gjithashtu, do të të sfidohen në kurs. Jo vetëm që ne kemi këngë të ndryshme për studentët më të rehatshme dhe më të rehat njësoj në seksione, ne gjithashtu kanë ashtuquajtura botime hacker e më problem i përcakton se do të sfidojë ata studentë me atë përvojë shtesë për të shqyrtuar materiale të ngjashme por nga një më shumë Perspektiva sofistikuar. Por ajo që është shkenca kompjuterike? E pra, në fund të fundit, se çfarë do të marrë parasysh se si ju shqyrtuar këtë fushë nuk është aq shumë kur ju të përfundojë në lidhje me shokët e klasës tuaj, por kur ju vetë të përfundojë deri në Javën e 12 kundrejt ku ju filloni këtu në javë zero. Tani kompjuteri science-- mirë, le të e quajti atë shkenca e computation-- ku llogaritje është me të vërtetë vetëm një mënyrë e sofistikuar për të thënë, duke marrë disa të dhëna, prodhimin e disa prodhimit, dhe duke bërë kështu që nga algoritme drejtimin, grupe të udhëzimeve për zgjidhjen disa probleme në ato inpute në mënyrë që të prodhojnë një prodhim ose zgjidhje në të cilën jeni të interesuar. Pra, ne kohët e fundit kishte rast për të udhëtuar jashtë në Kaliforni për t'u takuar me një alumna. Emri i saj është Susan Wojcicki. Dhe ajo do të doja të flas për ju këtu në video për të dëshmuar për të se sa e zbatueshme edhe vetëm një shije të kompjuterit shkenca në Niveli hyrës mund të jetë. Edhe në qoftë se ju nuk do të shkojnë në për të ndjekur shkenca kompjuterike si një fushë, apo edhe inxhinieri, ose rrjedhin më në përgjithësi, ju do të shihni, në fakt, si një farë Sigurisht kështu ndikuar jetën e saj. Dhe ajo sapo mori atë kur ajo ishte një zyrtar i lartë këtu në Kolegjin e Harvardit. Nëse ne mund të zbehtë dritat për Susan. Susan Wojcicki: Përshëndetje, bota. Unë jam Susan Wojcicki. Unë jam i CEO i YouTube. Dhe unë u CS50 kur isha një zyrtar i lartë në Harvard në vitin 1990. Unë kam qenë në fakt një histori dhe letërsi e madhe. Dhe verë im i vogël, Kam kuptuar se ndoshta unë të kërkuar për të mësuar diçka të rreth kompjuterave. Dhe kështu, unë u ktheva. Kam marrë CS50. Ishte e vështirë, por ishte më klasës mahnitshme mora. Ajo ndryshoi mënyrën se si unë mendoj për çdo gjë. Dhe kur kam diplomuar në Harvard në vitin 1990, unë shkova në Silicon Valley. Dhe kam marrë një punë. Dhe unë kam qenë duke punuar në të teknologjisë që ndonjëherë. DAVID J. Malan: Tani çfarë Susan nuk e përmend në këtë video, se ai ishte në të vërtetë në saj garazh që vetë Google ishte themeluar nga Larry dhe Sergey. Tani ne gjithashtu arritur jashtë për miqtë tanë në code.org, një organizatë që gjatë vitit të kaluar ka qenë duke marrë njerëz veçanërisht ngacmuar në lidhje me shkenca kompjuterike dhe programimit, në mënyrë të veçantë. Por kjo vlen të përmendet se programimit nuk është shkenca kompjuterike në vetvete. Shkenca kompjuterike nuk është e programimit. Përkundrazi programimi është vetëm një tool-- me të cilat të gjithë ju do të jetë shumë mirë njohur nga end-- semestër tillë që ju nuk mund të aplikoni vetëm për kurset e ardhshme në CS por për çfarëdo fushat prej nga ju jeni të vijnë, në shkencat humane, shkencat shoqërore, natyrore shkenca, apo si. Në të vërtetë, të lejojë një tjetër pak alumni dhe kolegët e tyre për të folur për zbatueshmërinë e fushës që i pret. BILL GATES: Isha 13 kur unë parë mori qasje në një kompjuter. JACK Dorsey: Prindërit e mi bleu një Macintosh në vitin 1984 kur isha tetë vjeçare. Mark Zuckerberg: Unë kam qenë në klasën e gjashtë. Kryetari 1: kam mësuar të kodit në kolegj. Ruçi SANGHVI: Vitin Freshman, i parë semestër, Intro të Shkencave Kompjuterike. BILL GATES: Kam shkruar një program që ka luajtur TIC-TAC-shputë. DREW HOUSTON: Unë mendoj se kjo ishte Fillimet shumë e përulur. Unë mendoj se programin e parë I shkroi kërkuar gjëra të tilla si, çfarë është ngjyra jote e preferuar? Ose sa vjeç jeni? ELENA SILENOK: Kam parë mësuar si të bëjnë një rreth të gjelbër dhe një shesh të kuqe shfaqen në ekran. Gabe Newell: parë herë që unë në fakt kishte diçka të dalë dhe të thotë, hello, bota. Kështu bëra një kompjuter të bëjë që. Ajo ishte vetëm e habitshme. Mark Zuckerberg: Mësoni se si të programit nuk nisem si duan të mësojnë të gjitha të shkencave kompjuterike ose duke u përpjekur për të zotëruar këtë disiplinë apo diçka të tillë. Ajo vetëm filloi sepse I kërkuar për të bërë këtë një gjë të thjeshtë. Unë të kërkuar për të bërë diçka që Ishte kënaqësi për veten dhe motrat e mia. Dhe ju shkrova në këtë program të vogël. Dhe pastaj në thelb vetëm shtoi pak për të. Dhe atëherë kur unë e nevojshme për të mësuar diçka të re, Kam shikuar atë, ose në një libër apo në internet, dhe pastaj shtoi pak për të. DREW HOUSTON: Kjo nuk është me të vërtetë ndryshe nga duke luajtur një instrument apo diçka ose duke luajtur një sport. DAVID J. Malan: Në rregull. Pra, le të tani në të vërtetë zhyten në një pak më thellë. Cilat janë këto inputet dhe rezultatet se ne jemi duke folur për këtu? Pra, si për diçka të thjeshtë? Ju ndoshta e dini, edhe në qoftë se ju keni asnjë familjaritet me shkenca kompjuterike çfarëdo qoftë, që kompjuterat përdorin disi dhe e kupton vetëm zero dhe ato. Por si mund që ndoshta të jepet si Desktop shumë sotme dhe laptopë ashtu mund të bëjë? ADN-ja e ditës, e vetmja alfabeti që ata e kuptojnë është zero ose një. E pra, e konsiderojnë këtë. Ne, njerëzit, kanë tendencë për të përdorur sistemit decimal. "Dhjetor" që do të thotë 10. Dhe kjo është 10, sepse ne kemi 10 shifra, 0 përmes nëntë. Tani kompjutera, në të kundërt, kanë tendencë për të përdorur binar. "Bi" që do të thotë dy. Pra, ata kanë tendencë për të përdorur vetëm zero dhe një. Por kjo rezulton, se edhe vetëm me zero dhe ato, atë është një alfabeti mjaft i madh me të cilat për të përfaqësuar më çdo pjesë e të dhënave që ju doni, nëse kjo është një numër, nëse kjo është një letër, nëse është e një grafik ose video në ekran. Mendoni, për shembull, se si ne njerëzit zakonisht interpretojnë këtë numër këtu. Kjo është vetëm tre numra, një, dy, tre. Por ne e dimë këtë numër prej natyrës tani si 123. Por pse ndodh kjo? E pra, në qoftë se ju mendoni se prapa që ndoshta klasën e shkollës, ju ndoshta janë mësuar të mendojnë për këto shifra si të qenit në kolona, ku një është në qindra vend, të dy është në vendin e dhjetëra, dhe tre është në vendin ato të. Pse është se në të vërtetë të dobishme? E pra, mendoni për aritmetike super e thjeshtë që ne të gjithë kemi qenë të duke bërë për vite tani. Në mënyrë efektive, në qoftë se ju keni marrë një në vendin e qindëshëve, ju bëni matematikë shpejtë 100 herë 1 plus 10 herë 2-- sepse dy është në dhjetëra place-- plus 1 herë 3-- sepse tre është në vendin e ato të. Pra, natyrisht, nëse ne në fakt shumëfishohen këtë, ajo që ne jemi me të vërtetë përfaqësojnë me këtë pattern-- dy three-- është 100 plus 20 plus 3, i cili, sigurisht, është 123. Tani binar, dhe kompjutera me të vërtetë, rrënjësisht flasin të njëjtën gjuhë që ne bëjmë. Ata vetëm kanë një alfabet të vogël. Pra kompjuterat kanë vetëm zero dhe ato në dispozicion të tyre. Pra, ndërsa ne njerëzit kanë në thelb fuqi e 10 në secilën nga këto places-- 10 me zero, 10 njërës dhjetë të dy, duke ju dhënë 110 dhe 100 respektivisht. Për shkak se kompjuterët kanë vetëm dy vlera ata mund të kuptojnë, zero dhe një, ata duhet të përdorin vlera të ndryshme në këto kolona, ​​një, dy, katër. Dhe në qoftë se ne do mbajtur, tetë, 16, 32, 64, e kështu me radhë. Por model dhe Mentaliteti është saktësisht e njëjtë. Pra, nga kjo logjikë, të gjithë, se si do të Të shkoj në lidhje përfaqësojnë numrin një në binar? Nëse ju nuk e kam menduar edhe për këtë më parë, çfarë po thonë gut juaj? Audienca: Një. DAVID J. Malan: Një. Pikërisht. Ne vetëm duhet një një në Vendi Ones sepse zero të mjaftojë për të na japë as një katër as dy. Pra, një herë një është e barabartë me një. Tani gjërat pak interesante. Nëse unë dua të përfaqësoj në Binary numrin two-- por, përsëri, madje edhe në qoftë se ju keni kurrë folur këtë gjuhë para, se si të bëjmë ne përfaqësojmë në binar e vlerave ne njerëzit e dinë si dy? Zero një zero. Vetëm vënë atë në kolona që ju doni atë. Tani ajo është duke u goxha lehtë ndoshta tani. Pra, nëse unë dua të përfaqësoj three-- ka kolona ka tri-së. Pra, përsëri, unë tani mund të shtoni këto vlera së bashku me vendosjen e një të këtu. Pra 2 herë 1 plus 1 herë 1 është, natyrisht, 3. Tani gjërat merrni një zbavitje të vogël në se ato tani të bëhet zero. Dhe për të përfaqësuar katër, unë të marrë këtë. Dhe nëse ne rrisim ngadalë here-- se do të ishte pesë. Kjo do të jetë gjashtë. Kjo do të jetë shtatë. Por tani unë duket të ketë drejtuar në një problem. Si mund të shkoj në lidhje me përfaqësimin e eight-- do të jetë vlera e ardhshme. Yeah, kështu që ne kemi nevojë për një bit të reja. Dhe, me të vërtetë, në qoftë se ju keni dëgjuar këtë frazë më parë, bit, kjo është vetëm e shkurtër për shifra binar, zero ose një. Dhe kështu që unë të ndodhë që do të përfaqësojnë vetëm tre bit të tilla këtu. Por në qoftë se unë kam një mënyrë për të mos ruajtjen tre bit të ndryshme, por katër, me siguri unë mund të përfaqësojë tetë, dhe pastaj nëntë, dhe pastaj 10, dhe edhe më të larta dhe më të larta. Por që atëherë e quan në pyetjen se si ne mund të shkoni në lidhje me përfaqësimin e tyre gjërat në vendin e parë. Kjo është një gjë për të nxjerrë ata deri këtu në një rrëshqitje, por si do ti përfaqësojnë ata në qoftë se ju jeni një pajisje mekanike? Çfarë është një kompjuter duke bërë të përfaqësojnë inputet dhe rezultatet që përcaktojnë krejtësisht llogaritje në fund të ditës? E pra, ajo që për diçka super e thjeshtë si kjo? Është vetëm një llambë të lehta. Dhe unë mund të shkaktojnë këtë llambë të lehta për të shkuar në duke u kthyer disa të energjisë elektrike mbi dhe duke i lejuar elektronet të rrjedhin përmes, e cila ndryshon saj shtetërore ose vlera e tij, kështu që të flasin. Për shembull, kjo është një tavolinë llambë të vjetër e shkollës këtu me një të tillë llambë të lehta në brendësi të saj. Dhe tani kjo nuk është me të vërtetë duke bërë asgjë të dobishme. Por sa më shpejt që unë plug it në një prizë elektrike dhe pastaj të përdorin këtë switch-- ose ne mund të telefononi edhe atë një tranzitor ose mendojnë për atë si such-- Unë tani mund të përfaqësojnë ose kjo vlerë, ku llambë të lehta të padyshim off, ose kjo vlerë. Kjo vlerë ose kjo vlerë. Kjo vlerë dhe kështu me radhë. Pra, brenda një kompjuter, me sa duket, janë pjesë shumë të vogla të pajisjeve, por që në fund e ditës thjesht kanë për të përdorur electricity-- ndoshta kapur it-- dhe pastaj ose të mbajtur diçka në ose mbani diçka jashtë. Sigurisht, kjo nuk është e veçanërisht interesante për të bërë me vetëm një llambë të vetme të lehta. Në fakt, sa e lartë mund të llogarisin në binar me këtë llambë tavolinë këtu? Audienca: Një. DAVID J. Malan: Një, e drejtë? Kam nevojë për më shumë llambat tavolinë, nëse unë në të vërtetë doni për të numëruar më e lartë. Por ne mund të bëjmë më mirë se kaq. Sepse bulbs dritë që ne kemi vënë në këto gjëra janë llamba të vërtetë njohës të lehta se kaluar do të lejojë. Dhe ata janë në të vërtetë llamba të lehta në rrjet. Dhe bunches e kompanive bëjnë këto gjëra këto ditë. Por rezulton se kjo një në veçanti vjen me një anë të të cilit funksion ju mund të ndryshojë ngjyrat e saj. Kështu për shembull, në qoftë se ju zbukuruar dhomën tuaj konvikt me disa nga këto drita llamba, në varësi të humorit tuaj, në varësi të cilët vjen në, në varësi të motit, në varësi të kohës e ditës, ju mund të vërtetë të ndryshojë ngjyrat e llamba në dhomën tuaj. Dhe kjo është për shkak se këto drita llamba dhe të tjerët si ai kanë çfarë është quajtur një API, një aplikim Ndërfaqja e programimit, e cila është një temë me të cilën ju do të jetë mirë njohur me të deri në fund të semestër. Dhe kjo është vetëm një dashuroj, mënyrë e fshehtë për të thënë, ju mund të programit këto dritë llamba për të bërë ofertave tuaj. Ju mund të dërgoni atyre mesazhe ashtu si ju, një njeri, mund të dërgoni një mesazh në një web server duke thënë, më jep lajmet e sotme ose më jepni email tim. Ju mund të dërgoni më misterioze mesazhe për këto llamba për të thënë, të kthehet në dhe fikur. Por kjo nuk është e gjitha se interesante. Ju mund të thoni, të kthehet në të kuqe, kthehet në të gjelbër, të kthehet në blu, të gjithë me të njëjtën llambë të lehta. Dhe ju mund edhe, me pak më shumë tru, thonë, të kthehet veten në blu kur kjo është një ditë e zymtë jashtë, për shembull. Ajo në fakt mund të patch në një API motit dhe për të gjetur jashtë çfarë moti është, ose koha e e ditës, apo shkakton të tjera të tilla. Pra, në fakt, dy prej Anëtarët e stafit të vet CS50-së, Dan Bradley dhe Ansel Duff këtu, prokuruar me mirësi na një bandë e tërë e këtyre llamba. Kështu ata i ndërtuan CS50-së llamba e parë ndonjëherë binare, ku ne kemi përfaqësuar here-- me këto magnets-- gjallë pak të placeholders ndryshme ne aludoi për vetëm pak më parë. Kështu mënyrë mbi këtu është Vendi Ones, dy, katër. Dhe ne nuk e shohim më e lartë se kaq. Por, sigurisht, ata janë kompetencat e dy. Tetë, 16, 32, 64, dhe 128. Pra, nëse unë tani dua të jetë pak njohës se duke përdorur këtë kaloni vjetër shkolle, Unë kam këtu në këtë iPad një ndërfaqe super të thjeshtë se Dan Bradley, një ish- nxënës dhe tani mësimdhënies shokët, programed përdorur disa HTML dhe JavaScript, e cila janë Markup dhe programimi gjuhë respektivisht. Dhe ju mund ndoshta see-- edhe në back-- ka një plus i madh dhe një minus i madh, plus një butoni për secilën nga këto llamba. Dhe ajo që kjo do të më lejoni të nuk është, për shembull, klikoni plus dhe tani përfaqësojnë, e Sigurisht, çfarë numri? Një. Dhe unë mund të goditur atë përsëri. Dy. Tre. Katër. Pesë. Gjashtë. Shtatë. Dhe këtu tani i marrim këto rollover, por ne kemi pak të katërt këtë kohë, kështu që tani ne kemi tetë. Pra, ne mund të bëjmë këtë për mjaft kohë. Në fakt, si një mënjanë, sa e lartë mund të numërojmë? Çdokush? Audienca: 255. DAVID J. Malan: 255, e drejtë? Mos u shqetësoni shumë për matematikë për tani, por që është një numër mjaft të mirë. Por ai në fakt ka detyruar vetëm të si shumë pjesë të informacionit, si një letër, apo një grafik që ne të mund të përfaqësojë. Por, pa marrë parasysh se tani për tani. Unë jam duke shkuar për të shkuar përpara dhe të kthehet të gjithë ata jashtë. Dhe në qoftë se unë mund të, unë do të doja të pyesni për një vullnetar, volunteer-- jonë e parë oh, hello-- në skenë. Kapur është se ju duhet të jenë të rehatshme u shfaqur, si ju në mënyrë të qartë janë në frontin e të gjithë shokët e klasës tuaj, si dhe në interneti. Dhe më lejoni të shohim pak përtej the-- si për këtu në këmishë të bardhë? Dhe dorë up. Eja lart. Cili është emri yt? Audienca: Jackie. DAVID J. Malan: Jackie. Jackie, eja lart. Pra, çfarë ka edhe në këtë iPad është një buton i quajtur lojë Mode. Dhe kjo lojë Mode është do të lejojë mua për të dhëna paraprakisht një dhjetore veçantë numër, numrat ne njerëzit janë të njohur me të. Dhe pastaj ju do të sfidohet këtu për të përdorur butonat në një top-- për secili prej këtyre bulbs-- që në fakt të kuptoj se model i poqat që përfaqëson numrin në fjalë. Dhe unë jam i keq, çfarë ishte emri juaj përsëri? Audienca: Jackie. DAVID J. Malan: Jackie. Të gjithë të drejtë. Mirë që u njohëm. Pra më lejoni të shkoj përpara dhe të programit në për të botës për të parë numrin 15. Ne do të mbajë atë të vogël në fillim këtu. Dhe unë jam duke shkuar për të shkuar në lojë Mode. Dhe unë jam duke shkuar për të specifikuar, na japin numrin 15. OK. Dhe tani me të gjithë watching-- nëse ju doni të ndoshta qëndrojnë në këtë mënyrë, sepse ai do të vijë up-- të shkojnë përpara dhe të toggle tetë butonat përgjatë krye të kthehet bulbs në apo jashtë si ju e gjykojnë të arsyeshme. Audienca: OK. DAVID J. Malan: Dhe asnjë cheating duke e goditur plus 15 herë. Oh, ne jemi duke shkuar për të bërë këtë. Audienca: Oh, prisni. Unë jam aq i keq. DAVID J. Malan: Ju gjithashtu mund të kthehet llamba të lehta në mënyrë individuale me secilën nga këto butona në krye. Audienca: Oh, OK. Pra, kjo do të ishte like-- DAVID J. Malan: OK. Deri tani ne kemi tetë. Pra, le të pauzë për audienca të angazhohen këtu. Çfarë numri është Jackie aktualisht përfaqësojnë? 11. Pra, ne jemi pothuajse atje. Dhe të shkëlqyer. Pra, ne kemi fituesin tonë të parë. Urime. Dhe ne menduam se do të kemi disa giveaways mitik. Nëse ju dëshironi që të jetë një i tillë konvikt dhomë këtu në kampus, ju mund të veten të ketë një projekt përfundimtar duke përdorur tani këtë API, në sajë të Jackie. Pra now-- [Duartrokitje] --if ne mund të, e më shumë të tilla rreth e kësaj. Oh, tani të gjithë do disa llamba. Për të ashtuquajturin edicionin e hacker, ne do të luftoj atë a-- oh, yeah, noncommittal. Unë mendoj se ju jeni të vijnë deri tani në qoftë se dora jote do poshtë. Cili është emri yt? Audienca: Alex. DAVID J. Malan: Alex, eja këtu. Pra për Alex, ne do të Programi në një numër pak më të madh. Ndoshta në mënyrë. Numri 50. Audienca: OK. DAVID J. Malan: Por, si Unë said-- dhe ju mund duan të qëndrojnë këtu aq që butonat të vijë deri si ju do expect-- por kam bërë e quajnë këtë botim hacker. Fat So-- mirë! [Qeshura] Ju do të jetë në gjendje të kthehet ata në qoftë se you-- OK. Excellent. Wonderful. Urime. [Duartrokitje] Unë mendoj unë duhet të paguaj. Urime për Alex si. OK. Pra, të takeaway fundit këtu është shpresë, sinqerisht, simplicity-- thjeshtësia me të cilën ju mund të merrni dritë bukur llamba, me sa duket në [padëgjueshme]. Por ata përfaqësojnë, Idetë në fund të fundit, e njëjta me të cilat ne njerëzit janë të tashmë të gjitha shumë të njohur. Pra, çfarë mund ardhshme Hapi jetë në progresion e duke u përpjekur për të bërë diçka interesante me të dhënat dhe përfaqësojnë inpute që nuk janë vetëm numra por janë ndoshta letra apo më shumë? E pra, ajo rezulton se bota kompjuter, për shumë vite, thjesht miratuar një arbitrare, por një standarde konsistente se harta numrat me shkronjat e alfabetit. Për shembull, këtu është një fragment nga ajo hartës. Ajo që quhet ASCII. A-S-C-I-I. Dhe kjo është thjesht një Tabela që harta letters-- uppercase në këtë case-- të dhjetore numrat. Por çfarë është implikimi? E pra, në qoftë se ju në të vërtetë doni për të përfaqësuar diçka si një email ose një tekst në një web faqe, ju duket duan të tregojnë letrat e njeriut të Alfabeti, jo numra. Pra, në varësi të Konteksti i programit që një përdorues është duke përdorur, nëse është e një shfletues web apo klient email, Numrat me siguri mund të jetë i interpretuar si shkronja. Kjo do të thotë, modelet e copa mund lehtë të interpretohet si shkronja. Dhe kështu që ajo që ne mund të kemi është letër Një qenie të përfaqësuara si 65, B duke u përfaqësuar si 66. Pra, nëse ne kemi një super fjalë të shkurtër, si hi, atë që një kompjuter do të në fund të fundit dyqan në decimal, por me të vërtetë në binar, duke përdorur një rend të bit, leveraging pak e energjisë elektrike në një farë mënyre, do të jenë dy numra 72 dhe 73. Por modeli i bit që përfaqëson këto vlera. Pra, këto pra janë si ne mund të përfaqësojnë inputet dhe rezultatet tona. Dhe mjafton të themi, ne mund bëjë përfaqësime më komplekse në fund të fundit me gjëra të tilla si grafikë, video, muzikë, dhe më shumë si ne do të shohim më vonë këtë term. Kështu që vetëm të lë pas algoritme, këto grupe e udhëzimeve me të cilat ne jemi duke zgjidhjen e problemeve aktuale. Ne jemi duke kaluar në inputeve të algoritme. Dhe këto algoritme janë prodhuar rezultateve, rezultatet shpresojmë saktë dhe shpresojmë, gjithashtu, u mblodhën në mënyrë efikase rezultate. Me fjalë të tjera, kjo është një gjë për të zbatuar diçka të saktë. Kjo është një tjetër gjë për të zbatuar diçka të mirë ose në mënyrë efikase. Për shembull, një demonstrim se ne jemi të dhënë pas në rrjedhën është kjo një. Por këto gjëra janë duke u gjithnjë e më vështirë për të gjetur. Por kjo është me të vërtetë një shkollë të vjetër librin e telefonit, brenda të cilave janë 1.000 faqe plus e emrat dhe numrat e telefonit. Dhe nëse kam kërkuar për të parë deri dikush në këtë librin e telefonit, Unë thjesht mund të bëjë një algorithm shumë naive. Mund të hapur në faqen e parë, dhe Unë mund të fillojë të shikoni për, të themi, dikush quajtur Mike Smith. Dhe në qoftë se ai nuk është më parë faqe, unë përparim të dytë, dhe pastaj të tretë, dhe pastaj të katërt, e kështu me radhë, deri sa më në fund të gjeni Mike Smith. Tani është se algoritmi i saktë? Audienca: Po. DAVID J. Malan: Po. Nëse ai është atje, unë do përfundimisht të gjeni atë. Por kjo nuk është ndoshta shumë efikas, sigurisht jo të shpejtë, sepse, Perëndia im, pse gjendem unë në humbur Flipping time kohë nëpër të gjitha këto faqe, kur unë mund të me siguri e bëjnë këtë fizikisht më të shpejtë? E pra, një optimization të vogël, në mënyrë që të flasin, mund të jetë jo një faqe në një kohë, por dy, katër, gjashtë, tetë, 10. Ende e saktë? Audienca: Jo DAVID J. Malan: Pra nuk ka, nëse unë për shembull kaloni mbi Mike Smith. Por, për sa kohë që unë të mbështetur pedale një faqe, në qoftë se unë qëlloj atë, ndoshta ne mund të korrigjuar atë që përndryshe mund të jetë një kapa. Por a është më mirë? A është më i shpejtë? Unë do të thotë, po. Është fjalë për fjalë dy herë më shpejt në qoftë se unë bëj dy faqe në një kohë. Pra, nëse unë fillimisht kishte 1000 faqe, Tani unë vetëm duhet të rrokullisje 500 herë, jo plotësisht 1,000 faqe për të marrë potencialisht në rastin më të keq në fund të telefonit libër, ku dikush si Mike Smith ose dikë me një emër më vonë në të vërtetë mund të jetë. Por, sigurisht, ne njerëzit nuk janë me siguri do të jetë bërë që, sigurisht jo në këtë pikë në jetën tonë. Çfarë është një e arsyeshme njerëzore të ngjarë që do të bëni? Audienca: Shkoni drejt e në The9 S-së. DAVID J. Malan: Shkoni direkt në S-së? Si mund të shkoj direkt në S-së? Audienca: Shqyej atë në gjysmë. DAVID J. Malan: E pra, nuk ka shënuar. Pra, po, nëse ka pasur me të vërtetë një etiketë apo një skedë ngjitet për S, ne duhet të hidhen të drejtë atje. Por kjo është shumë e parrezikshme. Kështu që më e mirë që mund të bëj është afërsisht në seksionin S ose ndoshta afërsisht në mes. Por takeaway kyç now-- dhe intuita që ju keni marrë për dhënë për vite probably-- është se ajo që bëni ju tani dinë për këtë problem? Audienca: [padëgjueshme] DAVID J. Malan: Mike Smith është me siguri jo Kjo pjesë e problemit sepse Smith vjen pas mes e cila është afërsisht seksion M, ajo duket të jetë. Kështu si ju mund të keni parë në Visitas, ne tani mund të fjalë për fjalë gris këtë problem në gjysmë. Audienca: Woo! DAVID J. Malan: Kjo është bëhet më e lehtë dhe më e lehtë. [Duartrokitje] Nuk ju shkoni. [Qeshura] Dhe tani unë krejtësisht kanë të njëjtin problem, por kjo është fjalë për fjalë gjysma aq i madh. Unë jam ende duke kërkuar për Mike Smith. Dhe unë guxoj të them, unë ende mund të shikoni për atë në të njëjtën mënyrë, ndarjen e problemit në gjysmë përsëri, marramendës problemin përsëri në gjysmë, e cila tani lë mua me një problem i një e katërta e madhësisë, dramatike hedhin se gjysma larg, dhe përsëris këtë proces përsëri dhe përsëri dhe përsëri, glancing poshtë në çdo pikë të parë nëse Mike Smith është në faqja në fjalë. Tani në qoftë se unë bëj këtë të drejtë, në fund të fundit unë do të gjeni veten me vetëm një faqe në të cilën Mike Smith është në qoftë se ai është me të vërtetë në librin e telefonit. Sigurisht, unë mund nuk e quajnë Mike përsëri. Por Pika këtu është se në qoftë se kemi filluar me 1.000 faqe, algoritmi im i parë, shfletoj faqe, ndoshta 1.000 Times-- patjetër më pak për shkak se është një emër S dhe jo një emër Z, por si shumë si 1.000 faqe potencialisht. Algorithm dyti, më të mirë. 500 faqe. Algorithm treti, edhe pse, sa hapa do atë marrë për të ndarë një faqe 1000 Libri i telefonit në gjysmë të tillë? 10, të japë ose të marrë. Pra, vetëm nga Flipping përmes se librin e telefonit, zhytja dhe pushtues, mënyrë që të flasin, 10 herë, do ta bëjë im shumë më poshtë në vetëm një faqe të vetme. Dhe kështu që ne mund të kapur këtë intuitë tani pak grafikisht në qoftë se ju vetëm të marrin në konsideratë ky grafik super e thjeshtë. Ne jemi në boshtin x, ose horizontale aks, është madhësia e problemit tim, numri i faqeve në librin e telefonit. Dhe shkencëtarët kompjuterike në përgjithësi si për të thirrur madhësinë e një n problemit, ku n është vetëm disa ndryshore që represents-- në këtë case-- numri i faqeve. Vertikale, apo y-aks, këtu është do të jetë koha për të zgjidhur, ndoshta numri i kthen faqe, ndoshta numri i sekondave ose minuta, çfarëdo njësia juaj e masës është. Dhe kështu kjo vijë e kuqe paraqet algoritmin e parë, sepse ka një 1-1 Marrëdhënia në mes të numrit të i faqeve dhe sasinë e kohës që duhet. Nëse Verizon dyfishon numrin e faqe në librin e telefonit të vitit të ardhshëm, drejtimin tim time-- Koha e nevojshme për të ekzekutuar se algorithm-- parë dyshe në rastin më të keq. Por algorithm e dytë, ku unë jam Flipping nga dy, kërkon më pak kohë për një problem i dhënë madhësi. Pra, nëse unë kam këtë shumë Njoftimi Faqet here-- që vijës së verdhë sugjeron më pak kohë për të zgjidhur. Dhe me të vërtetë, ai përfaqëson, ne do të themi, n mbi dy. Por ajo që është forma e tretë dhe kurbë përfundimtar do të duken si? Po, është e vërtetë do të look-- I nuk e di se çfarë keni qenë duke shkuar për të thënë. Por le të shohim se çfarë keni qenë duke shkuar për të thënë. Audienca: Ashtu si se. DAVID J. Malan: Ajo do të duken si kjo, një exactly-- logaritmike slope-- ku ju e keni këtë shpat kurioz. Nuk është më një vijë e drejtë. Dhe çfarë është bindëse për këtë është se edhe pse grafiku është prerë tani jashtë, ju mund të nxjerrim në tuaj parasysh se kjo linjë e gjelbër nuk është do të rritet në lartësia të gjithë se shumë si ju të vazhdojë më tej poshtë atë boshtin horizontal. Në të vërtetë, Verizon, për shembull, mund të dyfishohet numri i faqeve në telefon Libri në mes të këtij viti dhe vitit të ardhshëm nga 1000 deri në vitin 2000 faqe, por nuk është e madhe. Me këtë i tretë dhe i fundit, ka një algoritmi intuitiv të ndarë dhe pushtues. Ajo do të marrë mua sa më tepër hapa të vitit të ardhshëm për të gjetur dikë pëlqen Mike Smith? Audienca: Një. DAVID J. Malan: Ka vetëm një. Dhe ata mund të katërfishohet atë, është e do të marrë mua vetëm dy hapa më shumë dhe kështu me radhë. Dhe kështu kjo është testament për vetëm si disa dizajn të kujdesshëm dhe disa vlerësim për atë që inputet tuaja janë mund të bëjmë edhe më të mirë. Tani ne jemi një cheating pak në kuptimin se ne jemi leveraging një supozim. Çfarë është supozimi im për librin tonë të telefonit që lejohet mua për të ndarë dhe të pushtuar në këtë mënyrë intuitive dhe ende saktë? Audienca: [padëgjueshme] DAVID J. Malan: Po. Pra, ajo ishte urdhëruar. Ajo u renditje alfabetike nga Kompania librin e telefonit. Nëse do të ishte në mënyrë të rastit, që do të jetë një ferr i një libër telefoni, por kjo sigurisht nuk do të japin hua veten në algorithm I përdorur, sepse ju kurrë nuk do të vetëm të ndodhë të gjithë Mike Smith në qoftë se ju mbajtur e ndarë në gjysma në atë mënyrë nga rastësia. Pra, le të tani të formalizuar çfarë është në mënyrë të qartë intuitive. Pra, diçka që quhet pseudokod është ajo ku ne do të fillojnë disa nga problemet tona fillestare. Dhe kjo është një mënyrë e përgjithshme e përshkruar një algoritmi apo një program kompjuterik, jo duke përdorur C ose C ++, ose Java, apo ndonjë gjuhë të veçantë, por vetëm duke përdorur anglisht, me të cilat çdo njeri mund të jetë i njohur. Dhe ne mund të shkruani pseudokod për këtë problem si më poshtë. Hap një, i bie në librin e telefonit. Hapi dy, të hapur në mes të librit të telefonit. Hapi i tretë, shikoni në emrat. Hapi i katërt, nëse Smith është në mesin names-- Dhe tani kjo është një konstrukt interesante. Kjo është një pikë vendim. Është një pirun në rrugë, në qoftë se ju do, një degë, kështu që të flasin. Kështu që unë jam duke shkuar për të indent vetëm nga konventa step-- nuk five-- cila është të të themi, unë do të thërrasë Mike. Pra, kjo gjurmë, krejtësisht konventë arbitrar të njeriut, por është e thjesht do të thotë për të përcjellë semantike se në qoftë se Smith është në mesin e emrave, atëherë unë duhet të telefononi Mike. Ndërkohë në hap gjashtë, njoftimi se gjurmë e shkuar. Pra, tjetër është pirun tjetër në rrugë, rruga tjetër që unë mund të udhëtojnë. Pra, tjetër në qoftë se Smith është më parë në libër, çfarë është Hapi im i ardhshëm me siguri do të jetë këtu? Audienca: Ju shkoni në anën e majtë. DAVID J. Malan: Yeah, kështu që të shkojnë në gjysma e majtë e librin e telefonit. Hidhe larg gjysmën drejtë nëse Smith është parë në libër. Pra, të hapur në mes të gjysma e majtë e librit. Dhe pastaj hap tetë, të shkojnë në vijë tre. Dhe kjo është një lak kurioz unë jam inducing, një recursion mënyrë që të flasin. Por më shumë se në të ardhmen. Unë jam duke përdorur të njëjtën algorithm time, njëjtë pseudokod im, për të zgjidhur problemin e njëjtë përsëri sepse e vetmja gjë që ka ndryshuar është madhësia e problemit, nuk Objektivi im, dhe jo personi Unë jam duke kërkuar për. Kështu që unë mund të ripërdorimin algoritmin që unë e kam përcaktuar tashmë. Tjetër në qoftë se Smith është vonë në book-- ju mund guess-- hapur në mes të gjysma e djathtë e librit. Dhe përsëri, të shkojnë në vijë tre. Else-- çfarë është vija e fundit në këtë program do të jetë? Nëse ai nuk është në mesin e emrat në faqen e unë jam në, në qoftë se ai nuk është më herët në libër, dhe ai nuk është vonë në libër, çfarë mund ta di është e vërtetë në lidhje me Mike Smith tani? Audienca: Ai nuk është në libër. DAVID J. Malan: Ai nuk është në libër. Kështu që më e mirë që mund të bëj është vetëm të heqë dorë dhe të ndaluar këtë program. Të gjithë të drejtë. Pra, në këtë pikë, le të marrin një turne të shpejtë të disa prej asaj që i pret. Dhe në fakt, unë jam duke u bashkuan këtu nga një numër i stafit CS50. Nëse këto folks mund të gjithë bashkohet me mua deri këtu në skenë. [Duartrokitje] Mind you, kjo është vetëm një mesin e stafit CS50, pasi që çdo vit ne kemi rreth 100 personel Anëtarët në rolin e asistentëve të kursit, i mësuar shokët e, dhe më shumë. Eja lart. Pra, ata do të bashkohen me ne këtu fundore për vetëm një moment si ne të japin një turne shakullinë e asaj ju duhet të presim këtu në kurs. Pra, para së gjithash, ne kemi SAT / UNS si opsion gradimit në kurs. Kjo është menduar qëllimisht të jetë një opsion ku në qoftë se ju jeni një pak ankth në qenë në kurs, dhe ju keni frikë failure-- edhe nëse sinqerisht dështimi do të thotë dëmton GPA tuaj, duke marrë një B dhe jo një A-- që është pikërisht ajo që, me siguri për një portë Sigurisht si CS50 dhe të tjera kurse hyrëse, ky opsion nota ka për qëllim për të lejuar. Unë me gjithë zemër të inkurajuar nxënësish sidomos nëse në fence-- për të filluar kurs SAT / UNS, madje mbeten SAT / UNS. Por ju me siguri mund të kaloni në një letër klasa nga të hënën e pestë në afat. Sinqerisht, mbrapa kur unë ishte një studente në vitin 1995, Unë vetë nuk e marrin edhe CS50 sepse unë nuk e kam marrë deri nervore që në fakt hap këmbët në klasë. Dukej një domain shumë larg të panjohura për mua dhe të vërtetë vetëm për ata miq të mi, sinqerisht, i cili kishte qenë i programimit pasi ata ishin gjashtë apo ndoshta 10-vjeç. Dhe kjo ishte vetëm për shkak se unë kam qenë në gjendje për të marrë CS50 në ditën e mia në versionin ekuivalente të SAT / kalojë UNS-- / dështojnë përsëri në day-- se edhe unë e mori 50. Dhe disi apo tjetër, unë jam i këtu përsëri me ju sot. Tani ndërkohë çfarë tjetër ju duhet të mbani në mendje në lidhje me 50 është regjistrimi njëkohshëm. Në kundërshtim me thashethemet se ju mund të keni dëgjuar, ju mund, në fakt, në të njëjtën kohë regjistrohen në CS50 dhe një klasë tjetër që mblidhet në të njëjtën ose disa mbivendosje Ora si CS50 e ligjëratave të drejtë këtu. Shih planin mësimor për veçoritë e zbatimit të tij. Ligjeratat, ndërkohë, në kundërshtim me çfarë është zyrtarisht në katalog, përgjithësi do të vetëm takohen për vetëm një orë. Në rast ne mund të drejtuar një pak të gjatë. Por mbani në mend se Qëllimi në CS50 e ligjëratave është për të siguruar me një vështrim konceptual, shpresojmë se disa demonstrata, ndoshta edhe disa giveaways, e çfarë pret për javën që vijon. Dhe kështu në leksione, ne do të shqyrtojë ato tema dhe shembuj bashku, sjelljen e nxënësit deri në skenë, dhe stafit deri në skenë sa më shpesh që mundemi, për vetëm disa orë çdo javë. Seksionet, ndërkohë, do të jetë ofruar nga këto folks here-- shumë prej tyre mësim shokët e, disa prej tyre do të sigurisht assistants-- të ndodh javore. Dhe çfarë është çelësi për të mbajtur në mend është se ne mos have-- ndryshe nga First Nights, muzikë class-- këngë të ndryshme të seksioneve për studentët më pak të rehatshme, më të rehatshme, dhe diku në mes. Dhe sinqerisht, ju e dini se në qoftë se ju jeni më pak të rehatshme. Dhe ju ndoshta e dini, nëse ju jeni më të rehatshme. Dhe në qoftë se ju nuk jeni me të vërtetë i sigurt, ju jeni sipas definicionit diku në mes. Pra, kur vjen koha për të seksionit në një javë apo më shumë, në planin mësimor, ne do të ju pyes këtë pyetje. Dhe ju mund të vetë-zgjedhur Bazuar në vetë nivelin tuaj rehati dhe të jetë me nxënësish të jetë me të gjelbër dots-- ngjashme në nivel rehati për ju. Ndërkohë, ne kemi problemin vendos, e cila do të në fund të fundit përcaktojë përvojën tuaj në këtë kurs. Ata janë ofruar zakonisht në botimet e shumta. Një botim standard që ne presim më çdo nxënës në kurs për të trajtuar por edhe një botim i ashtuquajtur hacker që nuk ofron asnjë formë e kredisë shtesë plotë, por të vërtetë të drejtat e bragging për të thënë se keni provuar dhe trajtohen Edicionet hacker Kursi që qasje materiale të ngjashme por nga një kënd më të sofistikuar. Ajo që ne ofrojmë për Edicioni standarde, për, përsëri, shumica super e studentëve, nuk janë të vetëm ecin-throughs, të cilat janë Videot e udhëhequr nga stafi kursin e që me të vërtetë të ecin nëpër Problemet sigurisht s dhe dizajn të jetë e mundur Implementimi. Dhe ne gjithashtu, pasi fakt, ofrojnë postmortems, ku në qoftë se ju jeni të pyesin se si ju mund të ketë ose duhet të kishte zgjidhur disa Problemi, stafi mësimor do të ecin nëpër ata në video si. Ndërkohë, atë që i pret shumë janë pesë ditë vonesë dhe fakti se ne do të bjerë tuaj Problemi më të ulët të vendosur rezultatin. Ne me siguri vlerësojmë se në këmbim për ngarkesën e punës që 50 pret prej jush, jeta merr në mënyrë ndonjëherë, nëse jo pesë herë. Dhe kështu kjo do të ofrojë ju pak e fleksibilitetit, shtyrjen e afatit tuaj nga, të themi, a Të enjten në mesditë në një e premte në mesditë. Shih planin mësimor për Detajet e zbatimit të tyre. Tani çfarë pret tani? Dhe kjo është vetëm ndodh për mua tani se sa kohë Unë jam ka ju djema të qëndrojë këtu në skenë. [Qeshura] DAVID J. Malan: Por ne do të merrni për të përfundojë klimatik para se të gjatë. Pra, atë që i pret në aspektin nga grupe me probleme? E pra, ndoshta një ngacmues të asaj që ne të gjithë e bëri vitin e kaluar me paraardhësit tuaj. Në grupin e parë të problemit vitin e kaluar, ne kemi prezantuar Scratch, një grafik gjuhë programimi që ju lejon të programit fjalë për fjalë nga zvarritur dhe duke rënë copa mister, si këto, që janë kujton e ndërton do të shihni vetëm një javë pra, kur të kaloni për një më tradicionale Gjuha, e njohur si C. Vitin e kaluar ne vazhduam për këtë grup e problemeve, përfshirë për cryptography, përpiqen të informacionit për të mbajtur atë nga qeveritare apo miq " Sytë që ju nuk dëshironi për të parë atë. Koduar në këtu është një Mesazhi që së shpejti të do të jetë në gjendje të decrypt ose de-përleshje. Breakout ishte një problem vendosur vitin e kaluar, ku ju përdorni këto gjetur programe të reja aftësitë që në fakt të zbatuar një lojë wherein-- si ju mund të kujtojnë nga childhood-- Qëllimi ishte që të bash tulla që janë në majë të ekranit këtu, akumulojnë një shënuar gjatë rrugës, dhe zbatimin e algoritme tuaj me të cilat kjo zgjidhje në fund të fundit ju lejon të luajnë lojë. Ndërkohë, më vonë në semester, ne do t'ju japë një fjalor e 143.091 fjalë anglisht. Dhe ju do të sfidohet për të shkruar një program që magji kontrolle, dokumentet, duke ngarkimit se shumë fjalë në kujtesë si me efikasitet të jetë e mundur. Në përgjithësi vendosjes ju kundër shokët e klasës tuaj në qoftë se ju zgjedhin në një grimë e një Sfida në bordin udhëheqës të për të parë që mund të përdorni të paktët sekonda e running kohë, dhe numri fewest i megabajt të memories, dhe në fakt fine-tuning programet tuaja të jenë tepër të burimeve efikase nuk kohë vetëm. Vitin e kaluar, gjithashtu, kemi shikuar në fund e semestrit në programimin e web. Dhe me të vërtetë, ne do të bëjmë që edhe këtë vit me grupe të shumta problematike, futur me ju për teknikat dhe mendim me të cilat ju mund të aplikoni këto aftësitë e programeve të faqet e internetit, faqet e internetit dinamike, faqet e internetit që në fakt zgjidhin Problemet dhe sillen ndryshe dhe nuk janë thjesht statike faqet me informacion statik. Projekti përfundimtar në fund të fundit do të përcaktojë, edhe pse, kulmi i kursit për studentët, ku ju do të sfidohet për të zbatuar më ndonjë gjë me interes për ju, për aq kohë sa ajo disi vizaton mbi mësimet e kursit së. Dhe si ju pa në video të ne fillim ne do të konkludojmë semestrin me CS50 Hackathon, e cila në qoftë se, të panjohura, do të fillojë në orën 7:00 një natë dhe të përfundojë në 07:00 në mëngjes. Rreth 09:00, ne do të mënyrë që në darkë e parë. Rreth 01:00, ne do të mënyrë që në darkë të dytë. Dhe në qoftë se ju jeni ende duke qëndruar në 05:00, ne do të anijes autobus ju të IHOP për mëngjes. Panairi CS50, ndërkohë, është një ngjarje e të cilat 2,000 plus fakultetit, studentëve, dhe stafi nga të gjithë kampus do vijnë për të parë arritjet tuaja gjatë dhe përfundimtare projektet dhe krijimet që keni krijuar në laptopë tuaj, Desktop, ose llamba ndoshta edhe të lehta. Ndërkohë, orarit të punës dhe struktura mbeshtetese. Dhe tani ajo do të kemi qenë një kohë më të mirë për ju të gjithë të sjellë deri. Orari i punës do të zhvillohet katër netë në javë për orë të shumta çdo natë me zakonisht 20 deri 30 prej Stafi kursin në detyrë në një herë për të siguruar me intime një-në-një mundësi për mbështetje me grupe të problemeve kursin së. Tutoring shumë do të jetë e në dispozicion, veçanërisht për studentët më pak comfortable-- ose guxoj të them paktën comfortable-- për të cilët orarit të punës nuk janë të mjedis më të edukuar dhe me siguri nuk janë të më pa stres. Sidomos kur afatet janë të ngutshme, ne mënyrë proaktive do t'ju palë veten me një anëtar të stafit për të punuar me në disa orar të rregullt si nevojat tuaja dhe orarin e tyre të lejon. Dhe stafi. Më lejoni të prezantoj Davon, Rob, dhe Gabriel, të parët e këtij viti. Nëse ju do të çdo të doja të say-- [Duartrokitje] Fjala --a. [Duartrokitje] Davon mbi këtu është menaxher Natyrisht, e cila do të thotë në rolin e tij me kohë të plotë ai ndihmon me ekzekutimin dhe logjistike të CS50. Davon: Po, hi, djema. Ju do të shihni një shumë për mua në orarit të punës. Unë do të jetë mësim seksione. Dhe në qoftë se ju xhiruar email përpara, Unë ndoshta do të përgjigjej. Kështu që unë do të shoh shumë ju të gjithë semestër. Dhe i mirëpritur për CS50. DAVID J. Malan: Dhe tani Gabriel, i cili vetë ishte vetëm një studente të vitit të kaluar, por për disa viteve të fundit ka funksionuar versionin e vet të CS50 në Brazil, ku ai shkarkuar gjithë content-- kursit të e cila është në mënyrë të qartë duke u filmuar dhe vendosen online-- në mënyrë që ai mund të përkthejnë atë në Portugalisht dhe pastaj të mësojnë më shumë se 100 nga shokët e klasës e tij mbi Kursi i nja dy vjet, mësim në gjuhën e tij amtare Planprogrami Kursi-së. Gabriel: Përshëndetje. [Duartrokitje] Gabriel: Hi, Unë jam Gabrieli. Unë jam TF kreu i kursit. Dhe unë shpresoj se ju do të dashuri CS50. Kjo është CS50. DAVID J. Malan: Tani për Rob. Oh, ju doni hyrje? Rob: Jo, unë nuk e di. [Qeshura] DAVID J. Malan: Dhe Rob Boden. [Qeshura] Rob: Hi, unë jam Rob. Ky është viti im i pestë përfshirë me kursin. Çdo vit, kjo është vetëm një më të mirë dhe më të mirë të klasës, kështu që ju djema janë të qartë do të jetë awesome. Unë shpresoj që ju të gjithë të argëtohen me të. Unë jam duke shkuar për të argëtohen me të. Pra shihni ju rreth. DAVID J. Malan: Dhe Koha nuk do të lejojë us-- [Duartrokitje] Koha nuk do të na lejojë për të futur të gjithë në skenë dhe të gjithë kolegët e tyre të cilët janë pazar klasa sot. Por më lejoni të prezantoj Belinda dhe CS50 Puzzle Dita, e cila pret kjo vjen shtunë, e cila është i pari i Ngjarjet në shkallë të madhe natyrisht s. Kjo në mënyrë të veçantë do të thotë për të arritur në shtëpi pikë se shkenca kompjuterike është në fund të fundit jo për programimin, por më tepër për zgjidhjen e problemeve në përgjithësi. Dhe Puzzle Dita, si ju do të të shihni, do t'ju sjellë dhe shokët e klasës tuaj together-- ne shpresojmë kete te shtune. Belinda: OK. Hi, djema. Pra, faleminderit. Pra, si kapiten tonë të shquar tha, emrit tim Belinda. Unë jam një i paedukuar mjaft në Quincy House. Unë, ashtu si ju djema, mori CS50 vitin e kaluar, me të vërtetë të dashur atë. Unë kam një vend të butë për ju djema në rreshtin e tretë. Dhe unë jam krenar të them, unë jam tani në një marrëdhënie të përkushtuar me CS50 [e padëgjueshme]. OK. Kjo ishte versioni im sakat nga një shaka. Gjithsesi, në mënyrë që të lëvizin, vetëm për të kërkuar për të ftuar ju djema të gjithë në i-laborator, apo koshere ABEF. Ne jemi duke shkuar për të pasur nevojë Puzzle Dita 12:00-3:00. Dhe kjo është një mundësi e madhe për ju djema për të përmbushur shokët tuaj ShC miq, zgjidhë disa CS jo-puzzles, si kapiten përmendur, dhe gjithashtu të ngrënë një ushqim të lirë, fituar disa çmime tmerrshëm, si kartat dhuratë, $ 75 për person, dhe also-- çfarë ishte ajo? Wii U apo diçka? Wii U? Po. Për lotari tonë. Awesome. Kështu që unë do të rrinë përreth pas klasës. Dhe në qoftë se ju djema keni ndonjë pyetje, let me know. DAVID J. Malan: Dhe ju do të shihni, përtej kjo nuk ka asgjë për të bërë sot. Problemi i parë vendosur do të dalë e premtja. Por për të na sjellë në shtëpi sot, unë do të doja të prezantoj me specifike e më shumë anëtar i stafit, Colton Ogden këtu, duart e të cilit janë tani mbrojtur sipër jush me ky kontrollues MIDI për të arritur në shtëpi pikë më tej se shkenca kompjuterike, gjithashtu, ka zbatueshmërinë përtej inxhinieri dhe rrjedhin dhe vetë shkenca kompjuterike, shtrirë edhe në fusha të tilla si muzikë. Colton ka mirësi offered-- kam menduar një prej tyre ishte duke shkuar për të rregulluar fokusin. Andrew, nëse ne mund të thërrasë fokus mbi këtu për vetëm një moment. Çfarë Colton ka bërë paraprakisht është programi kjo pajisje, ky jastëk prej butonave që ju shihni në foto këtu, si një kontrollues MIDI, ku secili prej këtyre butonave është Wired në një shënim të veçantë muzikore ose një zë, më në përgjithësi një regjistrim, tillë që duke luajtur modelet e këtyre buttons, shumë si modele të bit, mund të përfaqësojë të tjera Konceptet e nivelit më të lartë. Ai do të jetë në gjendje në fund të fundit për të na marrë në shtëpi këtu sot? Pa zhurmë më tej, në qoftë se ne mund të zbehtë dritat, dhe të kthehet në ekran pas Colton. Audienca: Woo! DAVID J. Malan: Kjo është CS50. [MUSIC Playing] [Duartrokitje] Kjo është ajo për CS50. Ne do të shihemi të premten. Disa tortë ju pret në futur anësore. [MUSIC Playing]