[MUZIKO Ludanta] [MUZIKO Ludanta] DAVID Malan: Bone. Ĉi tiu estas CS50. [MUZIKO ludi Tritonal, Cash Cash,  "Intocable"] [MUZIKO Ludanta] Parolanto 1: Mi tuj Francio, kaj vi tuj, tro. [MUZIKO Ludanta] DAVID Malan: Ĉi tiu estas CS50, Harvard University enkonduko al la intelekta entreprenoj de komputiko kaj la artoj de program-- kaj por la unua fojo en la historio, Universitato Yale tiel. Efektive, ĉu vi estas tie en Kembriĝo aŭ en New Haven aŭ Miami aŭ Sankta Luiso aŭ Amsterdamo aŭ ie ĉirkaŭ la mondo prenante CS50, komputilo scienco Kaj50, CS50X, CS50 AP, ni ĉiuj estas unu kaj la sama. Bonvenon al CS50. Kion ni have-- [Aplaŭdo] [Ridoj] [Aplaŭdo] Do mi eraris mi mem iom tempon kiam mi komencis for kolegio. Kaj mi alvenis al la universitato, kaj mi decidis sincere, algluita en mia komforta zono. Mi finis deklarante koncentriĝo, aŭ grava, de registaro. Formiko kiu estis plejparte funkcio de mi esti bela familiara kun registaro aŭ almenaŭ historio aŭ mi vere ŝatis konstitucia juro en mezlernejo. Kaj tiel, kiam mi atingis tien, mi specon de gravitis direkte aferoj kun kiu mi estis jam konata. Maljuste Malproksima mi faras malbone en la klaso. Mi certe volis resti en mia komforta zono, kaj ne estis ĝis dua jaro ke mi fine leviĝis la nervo paŝi piedon en klasĉambro nomita CS50. Kaj ĉe tiu punkto, ĉu mi fine konscias ke mia Dio, hejmtaskoj povis reale amuza. Ja, mi estis unu el tiuj infanoj ke vendrede vesperoj kiam la P-aroj estus liberigita, mi superus al mia ĉambro kaj pikita en la nokto la P-aroj. Kaj por mi, ke estis signo ke tio kampo por mi. Sed kio pli grava estis la Fakte mi ja akiris tiun nervo esplori akvoj nekonata al mi kaj akiri preter mia komforta zono kaj sincere, mi nur povis fari tion dua jaro per prenante ĉi klaso pasi / malsukcesos. Efektive, ĝi estis la lasta tago, Mi finfine ŝanĝis super kaj fine deklaris CS kiel mian koncentriĝon, metante gov je tiu punkto malantaŭ mi. Kaj tial ni ne elmontrante en tiu kurso turni vin ĉiujn en CS plej grandaj aŭ concentradores, sed prefere doni vin la ŝanco espereble malobei la mondo kun kiu vi estas aktuale konata kaj alporti reen de tiu mondo kapablojn kaj scio kaj savvy ke vi povas apliki al via propra mondo, ĉu tio estas en la homaroj, sociaj sciencoj, naturaj sciencoj, aŭ pretere. Efektive, se vi sentante iom kuraĝaj pri estanta en tiu ĉambro des malpli en tiu klaso, rimarkas ke se la historio estas ajna indiko, 72% de vi neniam prenis CS kurson antaŭe. Tial estas nepre ne la kazo ke la studento sidis maldekstren aŭ al la dekstra aŭ antaŭ aŭ malantaŭ vi scias multe pli pri CS aŭ programado en aparta ol vi. Tio ne fakte estas la kazo. Kaj efektive, multe de la apogo strukturo ke ni starigis en tiu Kompreneble dum la pasintaj multaj jaroj estis por ĝuste tiu reason-- al provizi sur ramplo kiu ankoraŭ eliras tiel rigore kaj same alta kiel ever-- sed la deklivo de kiu permesas studentojn malpli komfortaj kaj pli komforta egale por okazi sendepende de ties antaŭaj fono. Efektive, kio finfine aferoj en tiu klaso estas ne tiel kie vi finos relativa al via samklasanoj sed kie en semajno 12 fini relativa al vi mem en semajno nulo, kiu estas kie ni estas ĉi tie hodiaŭ. Efektive kaj tio povas tre bone kaj probable aspektas kiel greka al multaj de vi. Sed estu certaj, ke tion kaj tiom pli tuj estos tute ene via kompreni en nur iomete de tempo. Sed hodiaŭ, ni enfokusigas sur iu de la alta nivelo ideoj doni al vi guston de CS50 kaj komputiko en senco de kio vi subskribanta supre por. Kaj efektive, komputiko eble distilita pli simple komputa thinking-- pensante kiel komputilo, se vi volas. Kaj estas tiom da malsamaj aĵoj ingrediencoj kiuj iras en tiun, sed ni proponas nur tri por hodiaŭ. Se la celo de la klaso finfine ne instrui vin programado, ne instrui vin C aŭ PHP aŭ SQL aŭ ajna nombro de la vortoj kaj akronimoj en la Certe la priskribo, sed prefere instrui al vi solvi problemojn pli efike kaj pensi pli metode kaj pli algorítmicamente, por tiel diri. Ni vidu kio precize tio signifas. Do mi proponus ke pensado kompute abscesoj malsupren por solvi problemojn. Kion vi bezonas por solvi la problemon? Vi bezonas input-- kiel la enigo al la problem-- vi bezonas eligo, kiu Estas espereble la solvo, kaj tiam vi bezonos procezo kiun solvi tiun problemon, kiu ni vokos al algorithm-- aro de instrukcioj por solvi iun problemon. Sed unue, ni koncentriĝas pri la unua kaj la lasta de tiuj enigoj kaj eligoj. Komputiloj post ĉiu, ŝajne nur komprenas nuloj kaj aĵoj. Sed kiel tio eble estus? Eĉ se vi ne estas familiara ajn kun kio estas sub la kapuĉo, vi probable almenaŭ aŭdis ke komputiloj kompreni binary-- nur nuloj kaj ones-- sed kiel povas vi eble fari ion interesan? Nu, unu el la temoj de la klaso tuj esti ĉi layering-- kie hodiaŭ, ni instruos vin prenu rapidan rigardon ĉe la plej malalta nivelo detaloj, sed kun ĉiu pasante tago, kie ni mantelo aŭ abstrakta aldone tiuj detaloj efektive solvi alta nivelo problemoj de intereso al ni. Do jen kion ni povus nomi binary-- kun nur alfabeto de 0 kaj 1. Sed ni homoj estas plejparte familiara kun dekuma. Dec signifo 10. Bi Signifanta du. Kaj tiel en la dekuma sistemo, ni havas 10 ciferoj ĉe nia disposal-- de Kompreneble, nulo tra naŭ. Do se vi rigardas kelkajn tiel, la plej multaj el vi intuicie ĝuste kompreni ke estas 123. Nenio estas vere malfacile pri tio. Sed kial 123? Nu, se vi opinias reen al lernojaro school-- aŭ almenaŭ la vojo mi lernis ĉi ia world-- vin eble memoras ke ni traktas tiujn aferojn en kolumnoj, aŭ lokoj. Do ni havas tiujn loko dekstre. La dekoj loko en la mezo. La centoj meti sur la maldekstra. Kaj tiam kiel ni akiras de tiu padrono symbols-- 1 2 3-- al tiu alta nivelo ideo ke ni konas 123? Nu, estas nur kelkaj simplaj aritmetikaj. Maljuste Unu estas esence signifas donu al ni 100 fojojn 1 plus 10 fojojn 2 plus 1 fojojn 3. Kaj kompreneble, se ni faras el la math tie, ĝi estas 100 plus 20 plus 3-- alie sciata kiel 123. Sekve se vi estas sur la sama paĝo kiel tiu rajto nun kaj estas komforta kun la tn dekuma sistemo kiel homo, ĝi estas vere bone ene via atingo de komforto konsideri nun la duuma sistemo. Preni sovaĝa guess-- ĉi reprezentas, en la mondo de komputiloj en binary-- kiu nombro? Nulo. Sed kial estas tio? Nu, tio rezultas ke la kolumnoj aŭ lokoj here-- ili ne estas potencoj de 10. 1, 10, 100, 1000, ktp. Ili estas anstataŭe, tute simple, potencoj de 2. Do, 1, 2, 4, 8, 16, 32, kaj tiel plu. Kaj do nun ni kompreneble atingos 0 tie simple ĉar ni havas 4 fojoj 0 plus 2 fojojn 0 plus 1 fojojn 0, kiuj kompreneble donas al ni 0. Sed kiel mi iros sur reprezentanta la numeron 1? Kio estas la mastro de nuloj kaj al reprezenti la nombro ni homoj scias kiel 1? 001. Kaj 2? 010. Kaj nun la mastro komencas ripetoj. Nun estas 011. Kaj ankaux: 0 kvarpiede, unu 2, unu 1. Do 2 plus 1. Jen 3. Kaj nun reprezenti 4, ni ne nur ŝanĝi tion 0 al 1. Vi ia devos porti! por tiel diri, kaj la nombroj komenci klakanta ĉirkaŭ ĵus kiel en la dekuma mondo. Do tiu estas 4. Tio estas 5. Tio estas 6. Tio estas 7. Kaj tiel ni kalkulis tiel altaj kiel 7. Nun ĉiuj ni nur bezonas estas pli bits-- pli nulo aj kaj onian. Kaj fakte "pecoj", se vi havas auxdinte term-- duuma cifero. Bito estas kie tiu venas de. Kaj do se ni volas reprezenti grandaj nombroj, ni bezonas pli bitoj. Sed ni malproksimigi de diapozitivoj nun por iu iom pli reala. Supozu ke ni volas fakte reprezenti tion. Bone ni rigardu nun ĉe iom pruvo. Do tiu estas ttt bazita aplikoj ke unu el CS50 la propra Michael G, kunmetita tiu somero por helpi ni prilumos ĝuste tiun ideon. Kaj estus iu kiel riski supren sur scenejo antaŭ ĉiuj liaj aŭ ŝiaj samklasanoj? Dekstre antaŭ. Venu supren. Vi devas esti komforta sur fotilo kaj la interreto. Ho, ĉi tie. BONE. Ni estas okej. Bone. Venu supren. Kiel vi nomiĝas? Emily venu supren. Do tiu estas Emily. Kio jaro vi estas? Unuajarulo. Emily, agrable renkonti vin. David. Bone. Tiel sur la ekrano tie, Ni havas ĉi táctil kiu tuj permesos nin vere interagi kun ĉi tiu programo, kaj ĝi estas nur retumilon. Ĝi Chrome plena ekzamenita por la momento, sed estas estis planita de Michael respondi en maniero kiu permesas ni amuziĝu kun duuma ciferoj. Do ekzemple, ĉi tie ni ne havas tri sed ok bits-- nuloj kaj aĵoj. Nun, ni estas rigardante la nombro 0. Kaj efektive, ĉiuj ok nuloj en dekuma signifas nulon. Do jen ĉio tio estanta insinuis tie. Do se vi volas reprezenti la numero 8, kio estas la mastro de nuloj kaj tiuj kiuj volas? Vi povas simple frapeti supren aŭ malsupren aŭ la nombra sin. Bone. Tial kompreneble estas 8, kiel vi povas vidi tie supre. Kaj se ni volis ĉu 16, kion ni faru? Yep, simple tuŝu ĝin denove. 16. Bone. Do tiu estas la tuta belan kaj bonan, ĝi estas ankoraŭ tre malalta nivelo. Ni bezonas manieron en la reala mondo por Emily de reale reprezentas tion. Kaj do supozu ke ni neaktivigi nuloj kaj, kio estas tre koncepta, en fakta ampoloj. Maljuste Komputilo estas fizika, mekanika, elektra aparato. Kaj lia input-- almenaŭ se vi ŝtopi ĝin en aŭ zorge it-- estas havi pilo potenco kaj elektronoj fluas en kaj eksteren. Tial nun, kial ni ne halti pensado pri bitoj kiel nuloj kaj, sed io pli fizika kiel ampoloj tie. Kaj se Dan Armendáriz povis aliĝi mi nur moment-- trafos up-- ni tuj vosto supren apliko. Venu super, Emily. Pardonu ĉi estas la plej neoportuna demo por vi eterne. Venu ĉi tien. Ni tuj vosto kun danke al Dan Armendáriz, alia membro de nia kunlaborantaro, apliko nomita duuma bulbo. Do kion ni havas ĉi tie estas iPad apliko kiu havas la sekvan uzanto interfaco al la ekrano por Emily. Ĝi estas ĵus la sama ĝusta UI esence tio estas tie. Kaj se vi nun volas reprezentas la numeron, diru 8, Kiel volus vin iras pri faranta ĉi averti ĉe la dekstra, la ampoloj kiuj ni havas ĉi tie? Ha-ha. Magia. Do se ni volas nun turni ĉi en iu iom pli defia, kaj ni iru antaŭen kaj elektu hazarda nombro kiel la numero 50 tie. Enigo ĉi. Kaj se vi nun povas esti defiita veni supren kun la numero 50, ni havos fabelan premion por vi. EMILY OK. Ho mia Dio. DAVID Malan: Aritmetiko Estas ja malfacile antaŭ de centoj de viaj samklasanoj. Sed 50 estis la respondo tie. [Aplaŭdo] Kaj tial nun, tiu celas esti demonstrativo por Emily. Do, ĉi tie, estas iom da lumo bulboj tute similaj, sed ĝi estas fakte la iom magnetaj strioj. Kaj kio estas malvarmeta pri tiuj kaj la kialo ni uzas ilin en CS50 estas ke ili subtenas ion nomatan an API-- apliko programado interfaco, kiu estas nur ornama metodo diri ke kio unu el nia personaro ĉu dum la somero estis krei iPad apliko tie kiu parolas super la interreto al la ampoloj tie, kio estas sendrate konektita al alia aparato. Sed tio estas nun eblon por fina projektoj. Kaj tial Emily, se vi volas tiel kiel, fine de la termino, vi povas ornami vian dormejo ĉambro dume kun tiuj. Dankon al Emily ankaŭ. [Aplaŭdo] Sed nun, ni turnas nian atenton al kio ke mesaĝo povus similis, kaj ĝi estas iom io tiamaniere. Fakte, tiu estas Ekzemple kiel gustumaĵo de kio estas por veni de kio estas nomita API peto. Kaj tiel kion ni havas ĉi tie estas simple precize la specoj de mesaĝo ke post kelkaj semajnoj tempo en CS50, vi povos sendi al io sufiĉe familiara kiel tio efektive turni ilin sur kaj for. Sed tio estas ĉio fajna kaj bone. Maljuste Ni havas la mensan modelon espereble por reprezenti nombrojn per nulo aj kaj onian. Kaj de nuloj kaj ni povas atingi pli altajn nombrojn kiel 50, kiel Emily ĵus faris, aŭ ni povas moviĝi el tiu. Kaj mi asertas ke ni povas reprezenti aĵoj kiel literojn tiel. Maljuste Komputiloj estas multe pli interesa ol nur nombrojn. Kaj do kiel vi iras pri reprezentanta vortoj sur la ekrano aŭ retpoŝtojn aŭ eseojn aŭ similaj? Nu, tio rezultas ke komputiloj simple abstrakta aldone tiuj malalta nivelo detaloj, kaj homoj iom da tempo, venis supren kun arbitraj, sed konsekvencan, surĵeto de nombroj al leterojn tiel ke iam vi vidas majusklo Al sur via komputilo ekrano, prognozoj estas kio estas sub la kapuĉo estas mastro de nuloj kaj kiuj reprezentas la numeron, po tiu diagramo, 65. Kaj pli fizike ene de via komputilo, Estas milionoj de aĵoj nomata transistors-- tiuj days-- kiu estas nur ŝanĝas se vi volas, aferoj kiu povas iri sur kaj for kaj tiel imagi. Ne ok de tiuj grandaj ampoloj sed milionojn da tiuj eta lumo bulboj, aŭ ŝaltiloj aŭ transistoroj, kiu povas turni sur kaj for bazita sur kiel vi plani ilin. Kaj do nun ni havas vojon de reprezentantaj literojn tiel. Fakte, se mi uzas tiun surĵeto ili provu reale literumi ion, ni povus rigardi en tiu padrono de decimaloj nun. Do ni ne tuj eĉ enfokusigi duumaj anymore. Ni nur konsideras tiujn kiel dekuma nombro 72, 73, 33. Sed kio povas ĉi reprezenti? Iu havas sufiĉe fotografia memoro scii kio literumita sur la ekrano tie? Yeah kelkajn. Tiel hi. H-I kaj tiam ekkrion punkto, kiu ne estis fakte sur la ekrano. Sed ja ekzistas surĵeto ĉar ĉiu letero por ĉiu nombro ke vi eble volas tajpi sur via klavaro. Sed nombroj ne devas reprezentas nur literojn. Maljuste Ni ĉiuj scias pri bildoj kaj fotoj kaj audio dosierojn kaj video dosierojn kaj similaj. Do klare ni povas reprezenti alta nivelo aferojn ankoraŭ. Kaj tiel kion komputilo faras estas simple elekti interpreti mastrojn de nulo tiuj malsame bazita sur la kunteksto. Se vi duoble alklakas Microsoft Word ikono, vi vidos vortojn sur la ekrano anstataŭ koloroj kaj bildoj ĉar vorto scias ke tiu estas eseo ke vi reale tajpitaj. Se vi anstataŭe duobla klako sur JPEG aŭ GIF aŭ PNG, ĝi malfermas kaj estas bildo ĉar la .PNG Aŭ la .DOCX aŭ kion ajn la dosiero etendo estas kaj kion ajn softvaro vi uzas scias interpreti mastro de nuloj kaj malsame bazita sur kion lia celo en la vivo estas. Do ekzemple, ĉi sama sekvenco de nombroj povus reprezenti kiom ruĝa vi deziras, kiom verdaj vi volas, kaj kiom blua vi volas. Kaj efektive, se vi iam aŭdis RGB-- tiel nur ruĝa verda blua. Kaj do se mi vidas nombrojn kiel tiu donu al mi 72 ruĝaj, donu al mi 73 verdaj, kaj 33 bluaj, jen kiel oni komputilo uzante tri bitokoj kie bajto estas ok bitoj aŭ 24 bits-- reprezentus belan aĉa ombro de bruna aŭ flava tie. Kaj en malsamaj kuntekstoj, eble tiuj ĝusta sama ŝablonoj en nuloj kaj signifas ion tute malsama ankaŭ. Do ni havas nun maniero de reprezentado information-- nuloj kaj aĵoj. Sur supro de tiu, ni preni leterojn. Sur supro de tiu, ni povus akiri koloroj. Kaj ni supozu por hodiaŭ ke ni povas akiri audio kaj vídeo kaj aĵoj tiel plu kompleksa ol tio. Sed nun ni pripensu kiel ni uzas tiujn enigoj kaj produkti tiujn eliroj nun ke ni havas maniero reprezenti tiun informon. Nu, ni devas ion nomita algoritmo. Denove, aro de instrukcioj por solvi iun problemon paŝon post step-- kaj la pli preciza, la bona. Kaj tiel ekzemplon per kiu homoj estas Certe malpli familiara tiuj tagoj, sed tamen ankoraŭ kun ni en programaro, Estas la procezo de rigardado ĝis iu en telefono libro. Nun, pli malmultaj kaj pli malmultaj homoj scias ĉiu jaro kio tiu relikvo vere estas tie. Sed reen en mia tago, tio telefono libro kun miloj de paĝoj kaj ciferoj kaj popolaj nomoj de A tra Z. Kaj kvankam ni ia trompado oni bit-- ĉi estas plejparte flava paĝoj. Ekzistis ankaŭ blanka paĝoj tiutempe, kiu havis ĉiujn tiujn nomojn kaj nombroj de realaj homoj. Kaj se mi volis rigardi iun en tia telefono libro tiel hodiaŭ, kompreneble, Mi simple tajpu en la unuaj malmultaj karakteroj de lia aŭ ŝia nomo, kaj mia telefono trovas tiun informon. Sed la procezo por kiu via iPhone aŭ Android telefono aŭ kio ajn estas reale trovanta iu en via kontakta listo Estas identa al kion ni homoj verŝajne faris por iu tempo. Nun mi povus preni tiun problemo, se vi volas, kaj la enigoj tie ne nuloj kaj aĵoj. Ili pages-- kiel, diru 1.000 paĝoj. Kaj se mi volis serĉi iun ŝatas Mike Smith en tiu telefono libro, Mi povus komenci komence kaj vidu, ke mi estas en la Sekcio kaj tiam turni unu paĝo ĉe tempo, rigardante kaj rigardanta kiel mi faras al la B kaj la C-aj kaj la D ktp Mike Smith. Smith startanta kun S, mi instruos vin espereble fine trovos lin. Estas ĉi algorithm-- ke process-- korekta? Yeah. Ĝi estas korekta. Mi trovos Mike se li estas en tie, sed kio estas la averto ke vi povus proponi. Ĝi estas malrapida. Maljuste Mi scias Mike S estas ia al la lasta duono de la telefono libro. Kial la heck estas mi komencante komence kaj irante paĝo de paĝo por paĝo. Do kompreneble mi ne povis klaki ĝin ĉirkaŭe kaj komenco de la dorso, sed kiu tuj akiri min tie ĉe la sama rapideco, se vi willl-- paĝon post paĝo post paĝo. Kaj ĝi ne iras por labori, se mi volas serĉi iu alia kies nomo venas frue en la alfabeto. Do kio se mi faras tion, kion mi lernis en grado lernejo, denove, fari aferojn ne per tiuj sed duope. Do 2, 4, 6, 8, 10, 12, kaj tiel plu. Ĉu ĝusta? Ne Estas speco de korekta. Sed iuj el vi, kiuj murmuris ne, kie estas la problemo, nek la cimo, la eraro tiel diri. Yeah. Lernanto: Vi povus salti super la dekstra eniro. DAVID Malan: Jes. Mi povus salti super Mike Smith estas ĉar Mi glutis du paĝojn samtempe kaj li nur hazarde estas krampitaj inter tiuj du paĝoj. Mi povus kompreni ke Mi estas sur la T sekcio Ne trovinte Mike Smith ankoraŭ. Kaj do kion povus la fiksita esti? Nu, se mi faras frapi la Ts en la telefono libro, Mi bezonas duobligi malantaŭeniri aŭ tiel paĝon. Do ĝi fikseblaj, sed ĝi estas ne tute tiel simpla kiel simple tuj por du al akceli mian agadon. Sed kion? Trafos. Kio estas kion plej homoj iras fari kun tiu speco de telefono libro? Kiun vi donis la telefonon libro. Kion vi faras? Kio estas tio? Iri al la mezo. Tial mi aŭdis iri al la mezo, kaj mi trovas min malglate en la M sekcio, por tiel diri. Kaj nun kion mi volas fari? Bona laboro. Kiel vi nomiĝas? JAMES James. DAVID Malan: James, tute certe. Kion mi faru? JAMES: Vi iros en la duono kiu havas la S-aj jaroj. DAVID Malan: Bone. Mi tuj iros en la duono havas la S-a en tio ĉar, denove, oni estipulación refarigxis ke tiu afero estas ordo. Estas bela senutila 1000 paĝojn se Verizon ne reale ordigi tion por ni A tra Z. Do se mi scias Mike estas probable en la lasta duono de la telefono libro, Mi povas nun. [Ridoj] Ŝiri la problemon en duono. [Aplaŭdo] Dankon. Ŝiri la problemon en duono. Kiu fakte real-- ke lukto. Tiel ŝiri la telefonon libro en duono, lasante min kun fundamente la sama problemo. Sed kompreneble, duono de la grandeco. Kaj se mi sekvas James konsilo denove, kaj mi iros tien. Mi diras, ho nun mi estas en la T sekcio. Do kompreneble, mi povas ŝiri la telefonon libro en duono pli tempo, lasante mi kun problemo kiu estas nun kvarono de la grandeco. Do mi foriris de 1.000 al 500 250 al 125, kaj tiel plu. Sentas mi prenante grandan mordoj el de tiu problemo kun ĉiu iteracio, aŭ ĉiu paŝo en ĝi. Kaj efektive, la tempo mi pasigos trovanta Mike Smith en tiu ekzemplo Estas tiom multe malpli ĉar fine mi estas tuj Whittle ĉi Metas libron al nur unu sola paĝo. Kaj se Mike estas sur tiu paĝo, mi estas tuj antaŭeniri kaj doni lin alvokon trovinte lin. Sed nur kiom bona estas ke algorithm-- ke kuraĝas diri intuicia algorithm-- ol la ones ni komencita kun kiu ni estas tre linear-- lasis al right-- al ritmo de 1 aŭ 2x? Nu, ni komploti ĉi. Ni ne devas maltrankviligi tro multe pri math aŭ nombroj en ĉi tiu kazo tie. Ni simple rigardu komploto. Tiel sur la x, aŭ horizontala akso, estas la grandeco de la problem-- kiom da paĝoj estas tie. Sur la y, aŭ la vertikala akso, estas kiom tempo estas ĝi iranta preni min por solvi ĝin. Kaj eble tio estas kiom paĝo turnoj, kiom da sekundoj, kiom many-- iu unuo de mezuroj. Kaj mi desegnis ruĝa rektoj tie ĉar se ĉiu plia paĝon de la telefono libro, mi postulas fari aldonan paŝon. Do se Verizon aldonas pli paĝon sekva jaro, Mi eblas devi klaki pli paĝon trovi iun kiel Mike Smith. Dume, la dua algoritmo, kiu Mi iris duope, estas la sama formo. Ĝi estas ankoraŭ tre lineara, tre maldekstre Bone, prenante egala bajtoj ĉiu tempo, sed la deklivo estas iom pli malalta. Ekzemple, se la grandeco de la problemo estis proksimume tie kaj mi uzis mian unuan algoritmon, Mi finos la tutan vojon ĉe la supro de tiu ruĝa linio. Sed se mi anstataŭ uzi al twosies alproksimigi, la flava linio sugestas ĉar ĝi estas pli malalta, ke ĝi estas iranta preni mi malpli tempo la solvi. Sed kio estas la formo de la tria algorithm-- denove, disputeble la plej intuicia algoritmo? Nu, ĝi aspektas iom io tiamaniere. Ĝi estas kurba, aŭ logaritma, en formo. Kaj kvankam ĝi neniam ia aplana ekstere, ĝi asimptote coloj kaj supren kaj supren sed terure malrapide kontre ĉio alia. Kaj kio la forpreni? Nu, ni nomas ĝin logo n. Sed kion tio vere signifas? Bone se Verizon duobligxos nombro de paĝoj en la telefono libro sekva jaro de 1.000 al 2.000. Kiom pli paŝoj estas mia unua algoritmo tuj prenos? Mia unua algoritmo. Eble 1,000 pli paŝoj. Se ili duobligis la telefono libro, mi tuj devos klaki tra alia 1.000 paĝojn trovi Mike. Kompreneble, se la dua algoritmo, eble 500 ĉar mi estas irante duoble rapida. Sed se Verizon duobligas la nombron de paĝoj inter tiu jaro kaj la proksima, kun mia tria algorithm-- la dislimo kaj konkeri ke Jakobo proponita, irante en duono kaj duono kaj half-- kiom pli paŝoj volo ĝi prenas min venontjare havi telefono libro de grandeco 2,000? Nur unu. Ĉar per unu mordo, mi povas preni, el tiu problemo, duono de la paĝoj for. Kaj se vi pensas pri tiu iom freneze now-- se la telefono libro ne havas 1.000 aŭ 2000 paĝo, sed diru 4 miliardoj pages-- estas granda telefono book-- kiom multfoje aŭ kiom da ŝtupoj estas ĝi iranta preni min trovi Mike Smith en telefono libro kun 4 miliardoj paĝoj. Vi povas ordigi de komenci fari la math. Bone. 4 miliardoj dividita per 2. Do jen 2 miliardoj dividita per 1. Jen 1 miliardo. Tiam duona miliardo. Tiam 250-- do vi povas fari ĉi denove kaj denove sed ne ke multaj fojoj antaŭ Vi akiras unu paĝo. Kaj ja, eĉ se la telefono libro estas 4 miliardoj paĝaj aŭ la datumbazo kiun vi sercxas estas 4 miliardoj registroj longaj, ĝi estas tuj prenos vin doni aŭ preni 32 ŝtupoj nur trovi Mike Smith. Kaj se vi duobligos la telefono libro sekva jaro de 4 miliardoj al 8 miliardoj, 33 ŝtupoj anstataŭ nur 32. Kaj tiu estas testamento al unu el la ideoj ke ni povu brakumi en komputilo scienco pli ĝenerale, kio Estas ĉi komputa pensado kaj alproksimigante problemo sincere uzante iloj de via jam konata ilo kit-- via reala mondo kun kiun vi konas, sed plivigligi tiuj ideoj efektive solvi problemojn. Sed ni devas formaligi nian solvojn al tiuj problemoj. Kaj do lasu min enkonduki momente io ni povus nomi _pseudocode_. Multe de la semestro, ni elspezos uzante fakta kodo en lingvoj kiel C kaj PHP kaj JavaScript kaj SQL kaj similaj. Sed nuntempe, ni simple rigardi ĉe io sufiĉe intuicia kiel la angla. Mi povus distili ke algoritmo kun kiu Mi trovis Mike en paŝoj tiel. Repreni la telefono libro Malfermita al mezo de telefona libro Rigardu la nomo Se Mike estas inter la nomo nomas Mike Alie se Smith estas pli frue en la libro Malfermita al la mezo de la maldekstra duono de la libro Alie iri al linio 3 Alie se Smith estas poste en la libro Malfermita al la mezo de la dekstra duono de la libro Iru al linio tri alia Rezigni Kaj ekzistas kelkaj karakterizaĵoj nun de ĉi tiu valoras markante. Do, ĉiuj linioj Mi reliefigis en flava Ni tuj komencu nomante deklaroj aŭ funkcioj aŭ proceduroj. Ili estas simple agoj fari ĉi kaj tie ne ĉiuj ke multe variabilidad al ĝi. Sekva paŝo tie tamen estis jenaj conditions-- se, alie, alie se, alian. Kaj tiuj estas nomitaj kondiĉoj, aŭ branĉojn, kaj ili estas decido punktoj. Kaj ili permesas nin fari ion kondiĉe. Kaj fakte, ni prenu rapidan rigardi eble familiara face-- Ni vokos lin Bill-- kaj ĝuste kion ĉi tiuj kondiĉoj, kiel tiuj povus esti uzata. BILL GATES: Homoj fari decidoj ĉiutage. Ekzemple, antaŭ iri eksteren vin ia havas se aserto kiu diras, Se pluvas, tiam mi bezonos akiri mia jako. Kaj komputiloj estas mirinda unufoje vi decidi tiujn specojn de asertoj ke ili povas fidinde ekzekuti tion ĉe nekredebla rapideco. Kaj tiel komputila programo vere Estas iom da matematiko kaj iuj se deklaroj kie la decido prenas farita. DAVID Malan: Do nun ni fokuso sur kelkaj malsamaj lines-- tiujn mi reliefigis en flava tie. Kaj ĝi rezultas ke estas malsamaj manierojn esprimi tiun ideon. Sed intuicie kion niaj linioj 8 kaj 11 ke mi reliefigis tie diranta vin fari? Jes, iru al linio 3, sed kio konduto estas kiu vere indukti? Ĝi estas ia buklo aŭ ciklo, kaj vi povas ia vidi ĝin. Maljuste Se sur la linio 8, vi reiru al linio 3, kaj tiam vi batis linio 8 fojo, vi povus iri reen al la linio 3, reen al la linio 3, reen al linio 3. Ekzistas tiu speco de ciklo aŭ buklo. Kaj efektive, jen induktita en linio 11 potenciale ankaŭ. Kaj tio estas baza programado konstrui tiel. Vi eble ne volas nur fari ion kun deklaro aŭ fari ion kondiĉe kun kondiĉo aŭ branĉo. Vi volus fari ion cikle kun buklo. Kaj ni devos iu alia kun kiu vi povus esti familiar-- ni vokos lin Mark-- klarigi tiun koncepton tie. Mark Zuckerberg: Unu afero ke komputiloj estas vere bona ĉe ripetas komandojn. Kiel persono, vi akirus vere enuas se vi devis fari la samon multaj fojoj sekvitaj, sed komputilo povas fari la saman aferon milionojn aŭ eĉ miliardojn da fojoj kaj ne enuiĝos kaj povos porti ke ekstere vere bone. Do ekzemple, se mi volas deziri ĉiuj en Facebook feliĉa naskiĝtago sendante ilin retmesaĝon, ĝi povus preni min pli ol jarcento por fakte skribi eksteren ĉiuj tiuj retpoŝtoj al ĉiuj. Sed kun nur kelkaj linioj de kodo, mi povas havas sistemon sendu retmesaĝon al ĉiuj en Facebook volante ilin feliĉa naskiĝtago. Do jen kion cikloj estas kaj kial ili estas valoraj kaj io ke komputiloj povas fari tre bone. DAVID Malan: Multaj danke al niaj amikoj ĉe code.org por tiuj du filmoj. Kaj nur pasintsemajne, vi havu vidis ke Mark Zuckerberg kaj Facebook poŝtis tiun anoncon kio estas ke ili nur preterpasi grava mejloŝtono por la unuan fojon iam. 1 miliardo da homoj uzi Facebook en ununura tago, specife lastan lundon. En sep homoj sur Tero ŝajne ensalutinta en Facebook. Nu, tio ŝajnas bonan ŝancon rigardi reen sur kie Facebook komencis, kaj ni iris tra CS50 propra arkivoj ĉar ĝi rezultas en 2005, Markon donis gasto prelego en CS50. Vi vidos ke produktado valoroj ne tre la sama tiutempe en terminoj de la teknologio disponeblaj kaj vi ankaŭ vidi ke la ĉeesto de tiu gasto prelego ne nepre Pikis la intereso de la studentaro, via antaŭuloj, kiom ĝi povus havi nur kelkaj jaroj poste. Do ni rigardu ĉe Scienco Centro C. Parolanto 2: Bonvolu aliĝi min kaj bonvenigas. [Aplaŭdo] Mark Zuckerberg: Yo. Bone. Malvarmeta ĉi estas la unua tempo mi iam devis teni unu el tiuj aferoj. Do mi simple tuj aligu ĝin vere rapide. Bone. Ĉu vi povas aŭdi ĝin? Estas tiu bona? Estas ĉi amplifita entute? Bone. Dolĉa. Do, tio estas kiel unu el la unuaj tempoj Mi estis por prelego ĉe Harvard, sed- DAVID Malan: Do fine la Scienco Centro faris zomi je sur la video, sed ne antaŭ kaptado ĉi ekstrakto kie Marko parolado, kiu li diskutis siajn kvara, Dustin, kiuj volis prunti manon kun ĉi ejo nomata Facebook.com kaj rimarkis ke Mark estas ronde mencii programming languages-- oni nomis Perl, unu nomita PHP-- kiel li diskutas la originoj de Dustin kontribuo. Mark Zuckerberg: Mi ekkuris la paĝaro kaj ĵetis ĝin Harvard en februaro, 2004. Do mi supozas preskaŭ du jaroj nun. Kaj ene de paro de semajnoj, kelkaj mil homoj estis subskribintaj, kaj ni komencis ricevi iun retpoŝtojn de personoj ĉe aliaj altlernejoj demandanta por ni ĵeti ĝin ĉe iliaj lernejoj. Kaj mi prenis 161 tiutempe. Do mi ne scias se vi infanoj scias la reputacio de tiu kurso, sed estis speco de peza. Estis vere amuza kurso, sed ĝi ne lasis min kun multa tempo fari ion ajn kun Facebook. Do mia samĉambranino Dustin, kiuj mi supozas ĵus finis CS50, estis kiel, hej. Mi deziras helpi. Mi volas fari la ekspansio kaj helpi vi elkompreni kiel fari la aĵojn. Do mi estis kvazaŭ, tio estas sufiĉe cool, dude. Sed vi ne vere scias ajnan PHP aŭ io kiel tio. Por ke semajnfino li iris hejmen, aĉetis la libron Perl por Dummies, revenis kaj estis kvazaŭ, bone. Mi estas preta iri. Mi estis kiel, dude, la retejo estas skribita en PHP ne Perl, sed tio estas malvarmeta. Do li prenis PHP super kiel tagojn ĉar mi promesas ke se vi havas bonan fonon en C, PHP estas tre simpla afero kapti. Li nur ia iris al laboro. Antaŭ ni rigardu nun kie la kurso okazas, permesu al mi inviti nur iuj de SC50 bastono supren sur scenejo. Iuj el ili estas butikumado iliajn proprajn kursojn. Sed se tiuj TFS kaj CAS kaj kompreneble kapoj, kiuj cxi tie povus veni supren kaj aliĝi al mi por rapida saluton. Permesu min prezenti precipe, Hanna, Maria, Daven, kaj Rob, CS50 kurson estras tie en Kembriĝo. [Aplaŭdo] DAVID Malan: Efektive, testamento al la subteno strukturo ke la kurso havas konstruita super la pasintaj multaj jaroj, CS50 bastonon tiu jaro nombroj preskaŭ 100, kaj jen tie en Kembriĝo sola. Dume, en New Haven, estas tie kelkaj 40 TFS kaj CAS kaj laborantaranoj tie kuri la kurson ankaŭ. Nin permesas enkonduki unue Rob Bowden. ROB Bowden: Saluton. Mi Rob. Tio estas mia sesa jaro TFing en la kurso. Do, la tuta vojo reen en mia unuajaruljaro, mi ne prenis CS50. Via unuajarulo fall-- vi povus esti familiara ke vi povas nur preni kvar kursoj kaj estas tiom multe da kursoj hodiaŭ. Do mi ŝatas, eh. Mi prenis AP CS mia lasta jaro de alta lernejo estis teruraj. Do, mi ŝatas, eh. Komputiko estas ne por mi. Tial ĝi estis super la Dum mia unua jaro falu, ke mi havis amikon en CS50, kaj Mi kredas ke mi ĉeestis unu prelegon kun ŝi. Estas kiel, oh, tio estas speco de bona ol kion mi havis en alta lernejo. Super la apartajxo de la jaro, mi havis mian propran problemon aroj en la kursoj mi reale preni. Sed mi trovis ke kiam ajn mi volis prokrasti tiujn, Mi irus reen al CS50 kaj rigardi iom de tiu materialo. Do, jes. Mi mojosas. Mi Procrastinación kun kodigo. Tial ĝi estas fine de la falo, kiun mi rimarkas, hej, komputiko estas sufiĉe malvarmaj. Mi finos prenante CS51. En la sekva semestro, Mi finos prenante CS61. Kaj ĉion de tie, tiam mi finas deklarante komputiko, kiun mi havis absolute ne intencas fari Kiam mi venis en kolegio. Kaj nun mi estas ĉi tie. Tial la kurso estas kion vi opinias pri ĝi. Mi esperas ke vi ĝuos ĝin. [Aplaŭdo] DAVID Malan: Dankon al Rob. Nun Maria, nia gvidi kurson asistanto. MARIA: Hey uloj. Mia nomo estas Maria. Mi duajarulino en Cabot Domo, venanta de Bulgario, kaj mi estas súper ekscitita esti parto de la personaro tiu jaro. Mi prenis CS50 kiel unuajarulo pasintjare, kaj mi neniam eĉ pensis pri CS antemano. Do mi absolute amas la kurson, kaj mi esperas vin ĉiuj amas ĝin tiel kiel mi faris. Kaj, jes. Bonvenon al CS50. DAVID Malan: Dankon al Maria. [Aplaŭdo] Nun Hanna, nia kapo instruado ulo. HANNA: Saluton, mi estas Hanna. Mi estas altranga en Cabot studanta komputilo scienco. Mi prenis CS50 kiel unuajarulo kaj havis estis TFing-- ĉi estos mia tria jaro. Do mi estos feliĉe implikita en CS50 por ĉiuj kvar jaroj, kaj mi antaŭĝojas por labori kun vi ĉiuj. DAVID Malan: Dankon al Hanna. [Aplaŭdo] Kaj laste, Daven, nia precepter. Daven: Hey uloj. Mi estas precept super en komputiko tie. Tiu estos mia kvara jaro instruado. Mi ankaŭ helpas administri la kurso. Do mi estas certa, ke vi vidos min ĉirkaŭe, Precipe ĉe oficejo horoj. Mi ĉiam ĉe oficejo horoj. Do se vi vidos min, marŝante ĉirkaŭe, definitive venis saluti. Mi amas renkonti ĉiuj. Alie, amuziĝi, kaj mi vidos vin ĉirkaŭe. DAVID Malan: Dankon al Daven tiel. Do vi renkontas ĉiujn tiuj uloj antaŭ longe. Sed sen plua ado, se vi infanoj estus ŝatas rekomenci vian sidlokojn de antaŭe. Permesu min prezenti malproksimeco nun iuj de niaj amikoj el New Haven, precipe la kurso kapoj kiuj instruos vin esti supervisando CS50 there-- profesoro Brian Scassellati, Jason kaj Andi, kiu just-- por ke ni ne incitos sorto kun ajna FaceTime aŭ la like-- jxus sendis nin minutoj antaŭ la sekva video en kiu ili diras saluton el prelego halo ĉe Yale, en kiu prelego estas fluis nun. Tiel niaj amikoj de Yale. BRIAN SCASSELLATI: Saluton, Davido. Saluton, ĉiuj Harvard. Ni estas sekve ekscitita esti alportanta CS50 al Yale ĉi semestro. Mia nomo estas Brian Scassellati, sed ĉiuj nur nomas min Scas. Kaj mi estas ĉi tie hodiaŭ enkonduki al vi la CS50 bastonon. [Huraado] Kaj pli grave, mi estas tie enkonduki tiel ĉiuj studentoj ĉe Yale kiu de hodiaŭ matene faris tion la plej populara Kompreneble en Yale la CS50 studentoj. [Huraado] Do ni estas tre ekscitita esti vidanta vin tie vendrede kaj sabate por Puzzle Tagon kaj havas grandan prelego. Adiaŭ. [Aplaŭdo] DAVID Malan: Sur la ekrano tie estas la nomoj de la iuj el 140 personaro membroj kiuj atendas vin sur la kurso de la semester-- iuj el ili tie en Kembriĝo, iuj ili tie en New Haven. Kaj ja vi havas ŝanco tiu sabato, kiel Scas notoj, al ĉeesti CS50 Puzlo Tago. Vi eble vidis iom enigmo pecoj glitis sub via pordejoj ĵus. Ni havas kelkajn ekstraj tie poste kiam ekzistas. Se vi kolektos cxiujn kvar enigmo pecoj kaj kunfandi fortojn kun ĉambroj proksimaj viaj en via domo aŭ dormejo, ili timige kunvenigi en QR code-- aŭ du dimensia strekokodo, ke iam kolektis kaj escaneados kun via telefono kondukos vin al iuj fabelaj premion or-- Supozeble vi povus simple foti ĉi nun ankaŭ. Sed trovi tiujn puzlo pecoj tamen por gajni tiun fabelan premion. Kaj ĝuste unu el la tradicioj en SC50-- ha, tro malrapida. Unu el la tradicioj en CS50 estas servi kuko post la unua prelego. Kaj tiel ja en kelkaj minutoj de nun, estos kuko servis eksteren ambaŭ tie kaj New Haven ankaŭ. Sed first-- ni ornamis ilin mem. Sed first-- kaj espereble tie estos sufiĉa. Sed unue rapidan rigardon. Tiel prelegoj estas ja estos produktitaj ĉefe tie en Kembriĝo. Sed ĉiu monato, ni hop suben al Yale kun CS50 la produktteamo kaj rivereto la kurson en la reverso direkto tiel do jxetante tiuj du kampusoj vere unuafoje en historio tiel proksime kune kiel eble plej kiel en la sama kurso. En terminoj de la apogo strukturo kiu estas estis ekstaris tie en Kembriĝo same kiel en New Haven, estas sekcioj. Efektive, kiel kelkaj el vi eble scias, ni havas malsamajn temoj ene de la kurso por tiuj malpli komfortaj, pli komforta, kaj ie intere por ke sendepende de viaj antaŭaj fono ĉu vi finfine sukcesos en la klaso. Oficejo horoj dume, estas ŝanco lunde kaj marde kaj ĵaŭdo vesperoj labori ambaŭ tie kaj en New Haven sur nia kurso problemo aroj kun dekoj de la kurson bastono apud vi. Problemo aroj dume, estas apogita de aferoj ni nomas walkthroughs, kiuj estas video bazita lernilojn kiu vere respondas Demandoj de kie komenci semajnon da defio. Kaj postmortems piediri vin tra eblaj solvoj tiel ke la fino de la problemo aro ankaŭ vi scias precize kion vi povus fari malsame aŭ tute alie. La problemo aroj mem venu en du eldonoj, norma eldono ke ni atendas kaj invitas plejparto de la class-- iuj 90% alpago por do-- kaj tn hacker eldono sur kiu ĉiu paĝo estas emblazoned hacker eldono, hacker eldono, hacker eldono, tiel ke vi havas tiun karmo se vi volas, por plonĝado en pli progresintaj versioj de la kurso la problemo aroj ke ferdeko ŝajne la sama materialo sed kun pli malnaiva alproksimiĝo kaj kun aldonaj fono kelkfoje enkondukita. Dume, tie ili estas naŭ malfrue tagoj Vi povas apliki al la kurso problemo aroj kaj ankaŭ la plej malalta partituro, kiun ni falas en la kondiĉoj fino. Sed kio atendas? Nu, guston de la problemo aroj mane vendrede kaj venontsemajne kie dabble por nur kelkaj tagoj en iu nomita Scratch, grafika programado lingvo disvolvita de niaj amikoj ĉe MIT Media Lab, kiu permesas plani ĉu unuafoje aŭ en nova medio entute uzante treni kaj guto tipo medio. Per enigmo pecoj nur interplektiĝas kune se ĝi faras logikan sencon fari tion. Dume en problemo aro du pasintjare ekz ni enkonduki la klaso al la mondo de ĉifriko, la arto de kodi aŭ grimpadi informo. Efektive, tiu teksto tie se deĉifrita, efektive konduki vin al iu amuza destino. Kaj en la problemo aro, kion ni havis studentojn fari estas apliki ĝuste tiujn specojn de things-- algoritmo, aŭ aro de instrukcioj por grimpadi kaj grimpadi informo. Kaj en la hacker eldono de tiu sama problemo aro, ni defii studentojn preni ĉifrita dosiero de tipa komputilo sistemo kun multaj salutnomoj kaj ĉifritajn pasvortojn kaj fendi tiuj passwords-- fakte elkompreni kion ili sen scii ion Al priori pri tiuj realaj pasvortoj. Dume, ni transiro en la problemo aroj tiam rigardas la mondo de grafikaĵoj. Kaj fakte, vi povus imagi Nun ke tiu povus eble esti la plej simpla maniero por reprezenti nigra kaj blanka bildo. Blanka rastrumero, aŭ kvadrata, kiel ĉe supra dekstra tie, povus esti reprezentata per 1 kaj nigra kvadrato povus esti reprezentata per 0. Kaj nur uzante pli bitoj kiel ni proponita antaŭe kun 72 kaj 73 kaj 33, ni povus reprezenti koloron rastrumeroj ankaŭ. Kaj kion ni faras dum tiu problemo aro estas Ĝenerale promeni ĉirkaŭe kampuso kun cifereca ĉambro, preni fotojn de homoj, lokoj, kaj aĵoj. Tiam iel ĉiu sesmonato, ni ŝajne hazarde forigita aŭ korupti la memoron karto sur kiu ĉiuj el tiuj fotoj estas, kaj tiel vi defiita por poste skribi programaron kun kiu rekuperi tiuj JPEG-oj de kopio de nia fotilo karto. Dume, ni transdonos vin poste en la termino vortaro de anglaj vortoj kiuj havas 143.000 vortojn, kaj vi devas veni supren kun inteligenta maniero ŝarĝi ilin en memoro, aŭ RAM tiel diri, respondi demandoj de la formo: estas tiu vorto, Estas ĉi vorto, implementando la rapida literumilo ke vi povas, eĉ alpinglante mem potenciale kontraŭ samklasanoj vidi kiu el vi uzas la malplej kvanto de tempo kiam kurante via kodo kaj eĉ la malplej kvanto de memoro. Poste en termino ĉu reale apliki vian propran ttt-servilo. Do ne nur retejo en lingvo nomata HTML kaj pli, sed retservilo ke reale Aŭskultas petoj sur la interreto kaj respondas al ili. Kaj efektive, jen kiel ni transponti nian mondon de C kun kiu vi familiarizarse sekva semajno kaj PHP kaj HTML kaj JavaScript kaj CSS kaj similaj. Ĉar unu el la unuaj ttt bazita projekto ni faru poste en la termino Estas historie CS50 Financoj. Etrade.com stilo retejo kiu permesas vi aĉeti kaj vendi akcioj virtuale dum ankaŭ skribi kodon por paroli al Yahoo! Financo ricevas duon reala tempo stock citaĵoj por ĝisdatigi via biletujo. Sed persiste kompreneble estas la fina project-- okazon fari plej ion intereso al vi solvi problemon tie aŭ preter interesas vi tio iel inspirita de la lecionoj lernitaj en la klaso. Kaj la klaso, kiel vi eble scias, kulminas en tn CS50 Hackathon kaj CS50 Foiro kaj ajna nombro de aliaj kulturaj okazaĵoj tra la semestro kiu permesas vin partopreni reciproke kaj la kurson bastono. Ekzemple, ĉe Fajro kaj Glacio en sitar tiu jaro, ankaŭ, vendrede posttagmezoj, Ni invitas iun 50 studentoj al tagmanĝo, kiu ajn ŝatus aliĝi nin, mi mem, kaj la bastonon, kaj niaj geamikoj el industrio kaj alums babili pri la vivo en la reala mondo kaj pretere dum ĝuanta bonan lunĉon. Ĉe la Hackathon volo vi vidos tian bildoj kiel tiuj, Inkluzivanta multajn candy-- kaj en 2014 por la unua time-- legomoj. [Aplaŭdo] Sed per 5:00 am, faras la scenon kutime aspektas iom io tiamaniere. Kaj tiam nur semajno aŭ tiel poste, estas la CS50 Foiro al kiu iuj 2000 Plus studentoj kaj personaro kaj fakultato membroj de trans kampuso kaj trans kampusoj tiu jaro venu vidi plezuron en la plenumoj de CS50 studentoj, kiuj Nun vi. Kaj efektive, dum ĉi jaro ni esti invitanta kaj Busing iu ĉe Yale kiu ŝatus veni supren al Kembriĝo tiu sabato por CS50 Puzlo Tago, kaj ni faros la ĝustan saman aferon en decembro por la CS50 Hackathon por ke Harvard kaj Yale studentoj egale partoprenas en ambaŭ de tiuj okazaĵoj. Ni ankaŭ teni CS50 foiroj en Kembriĝo kaj New Haven tiu jaro por ke studentoj en ambaŭ kampusoj kaj personaro kaj fakultato povas vidi ĉiu respektiva kampuso la realigo. Kaj tiuj plenumoj instigos tia memoro kiel tiu kaj tiu kaj finfine tiu, kiun ĉiu el vi eliri la klaso surhavis iom iu en kio vi espereble feliĉaj aŭ fiera diri ke mi prenis CS50. Sed antaŭ tio kaj antaŭ ni servi kuko, ni metis together-- danke al CS50 produktteamo kaj ian memo bastono, la okazo ke ni uzas tiaj aferoj for-- kiam ni sendis Ne nur ĉi tie por Kembriĝo sed ankaŭ al New Haven kolekti kelkajn hellos de la Kompreneble stabo kaj ĉiuj la homoj vi renkontos ambaŭ tie kaj en Nov Haven super la sekvantaj monatoj. Permesu al mi enkonduki kelkaj pli de CS50 bastonon. Mark Zuckerberg: Ĉu tiu trairigu? Ho, ĝi tuj. Ĝi tuj. Ooh. Yarr! [MUZIKO ludi ANDY Grammer, "HONEY, MI ESTAS  BONA "] MARY: Jen Caitlin. Jen Jay, kaj mi estas Maria. SATO: Saluton, knaboj. Mi Sato. MICHAEL G .: Saluton. Mia nomo estas Michael, G. DOUG LLOYD: Mi ne. Ne Mi Doug Lloyd. Mi ne povas kredi ke mi tenis selfie bastono nun. Parolanto 4: Saluton. Parolanto 5: Saluton. Parolanto 6: Saluton. Parolanto 7: Saluton. Parolanto 8: Hej. Ni pendis ĉe Yale. Ni estas vere ekscitita por ĉi semestro ĉar ĝi estas la unua tempo ĝi venas al Yale. Ĝi tuj estos terura! [MUZIKO Ludanta] JAKOB SCHERBA: Mia nomo estas Jakob Scherba. Mi estas ekscitita instrui CS50 ĉar mi pensas ĝi alportos komputiko al personoj en kaj alproksimigebla vojo. Parolanto 9: Mi vere ekscitita instrui CS50 ĉar mi prenis la klason pasintan jaron, kaj ĝi estas unu el la plej bonaj klasoj. Parolanto 10: Yeah. Mia konsilo estas vi devus preni CS50. JAKOB SCHERBA: Mi elektis CS ĉar Mi pensas ĝin estas amuza kaj kreiva maniero solvi problemojn en analiza maniero. Parolanto 11: Reen kiam mi estis malgranda unuajarulo kaj timas komputiko kaj timas fari inĝenierio kaj stuff, estis la unua malmola klaso mi prenis, kaj ĝi estis ankaŭ mia plej ŝatata klaso iam. DOUG LLOYD: Jen mia naŭa jaro instruado CS50. Kiu faras min sonas tiel maljuna! Ĉiam io nova. Ĉiam io ekscita. Ĉiam novaj defioj alfrontita de novaj studentoj, kaj ĝi estas amuza por helpi ilin kaj sperti tiujn defioj kun ili kaj helpi ilin solvi iliajn problemojn. Parolanto 12: Kiam mi unue lerninta kiel fari CS, ĝi estis kiel lernanta super potenco. Kaj vidi ke aliaj studentoj kaj helpi ilin tra tiu procezo estas unu el la plej rekompencanta aferojn mi havas iam. Parolanto 7: Mi elektis CS ĉar en la komencante, mi estis math concentrador kaj mi prenis CS50 kaj enamiĝis ŝin. Mi ankaŭ sentis, ke kun CS, mi povus konstrui aferojn. Kaj tio, mi pensis, estis vere malvarmeta aspekto. Parolanto 13: Kelkaj konsiloj por novaj studentoj estas iri al oficejo horoj kaj elpendi kun la timinda TFS. Parolanto 14: Komenci vian P-aroj Komence, iri al oficejo horoj, iĝi frends kun via TF. Parolanto 15: Yeah. Ĉiu ŝi diris. Parolanto 16: Ne timema peti helpon. Parolanto 17 Yeah. Parolanto 18: Komenci vian P-aroj frua. Parolanto 19: Estas granda socia sperto. Fari multajn amikojn tiamaniere. Parolanto 14: Iru al sekcio Ĝi estas amuza. Parolanto 11: Mi volas diri, iru por ĝi. Estas vere malfacile. Vi ricevos el ĝi kion vi metis en ĝin, sed ĝi estas vere amuza klaso speciale se vi estas pretas meti la tempon en ĝi, sed ĝi helpas se vi metis tempon en ĝin. Vi ricevos multe pli el ĝi pli poste. MIKE: Mi estas Mike. Camille: Mi estas Camille. HANYA: Mi Hanya. MATT: Mi estas Matt. PETER Mi, Petro. PHILLIP: Mi Phillip. PATRICK: Mi estas Patrick. ROB Bowden: mi estas Rob Bowden. BRIAN SCASSELLATI: Mia nomiĝas Scas kaj this-- ĈIUJ: --is CS50. Parolanto 20: Ĉe Yale. Parolanto 21: Ĉe Yale. [Ridante] DAVID Malan: Estas tio por CS50. Ni vidos vin de Yale sur Vendredo, Puzzle Tagon sabaton. Kuko estas nun servis. Ĉi tiu estas CS50. [MUZIKO Ludanta]