[Music kucheza] [Music kucheza] DAVID Malan: zote haki. Hii ni CS50. [MUSIC KUCHEZA Tritonal, Cash Cash,  "Untouchable"] [Music kucheza] SPIKA 1: Mimi nina kwenda Ufaransa, na wewe ni kwenda, pia. [Music kucheza] DAVID Malan: Hii ni CS50, kuanzishwa Chuo Kikuu cha Harvard kwa akili makampuni ya sayansi ya kompyuta na sanaa ya program-- na kwa mara ya kwanza katika historia, Chuo Kikuu cha Yale pia. Kwa kweli, iwe uko hapa katika Cambridge au katika New Haven au Miami au St. Louis au Amsterdam au mahali popote duniani kote kuchukua CS50, kompyuta sayansi E50, CS50x, CS50 AP, sisi wote ni kitu kimoja na hicho. Karibu CS50. Nini sisi have-- [Makofi] [Anacheka] [Makofi] Hivyo mimi alifanya makosa mwenyewe baadhi wakati iliyopita wakati mimi ilianza chuo. Na I got chuo, na niliamua kusema ukweli, fimbo ndani ya eneo la faraja yangu. Mimi kuishia kutangaza viwango, au kubwa, za serikali. Ant kwamba ilikuwa zaidi kazi ya me kuwa pretty ukoo na serikali au angalau historia au mimi kwa kweli walipenda sheria ya kikatiba katika shule ya sekondari. Na hivyo nilipofika hapa, mimi aina ya gravitated kuelekea mambo na ambayo nilikuwa tayari ukoo. Haki? Hasha mimi kufanya vibaya darasani. Mimi hakika alitaka kukaa ndani ya eneo la faraja yangu, na haikuwa mpaka mwaka sophomore kwamba mimi hatimaye aliamka ujasiri wa hatua ya mguu darasani aitwaye CS50. Na katika hatua hiyo, je, mimi hatimaye kutambua kwamba, Mungu wangu, kazi za nyumbani naweza kweli kuwa na furaha. Hakika, nilikuwa mmoja wa watoto wale kwamba siku ya Ijumaa jioni wakati P-seti itakuwa iliyotolewa, I aliamua kwenda nyuma ya chumba yangu na kupiga mbizi katika P-seti usiku. Na kwa ajili yangu, hiyo ilikuwa ni ishara kwamba hii ilikuwa ni uwanja kwa ajili yangu. Lakini nini ni muhimu zaidi ilikuwa ukweli kwamba mimi kupata up ujasiri huu kuchunguza maji usio wa kawaida kwangu na kupata zaidi ya zone yangu mwenyewe faraja na kusema ukweli, mimi tu alikuwa na uwezo wa kufanya hivyo sophomore mwaka kwa kuchukua darasa hili kupita / kushindwa. Hakika, ilikuwa ni siku ya mwisho kabisa kwamba Mimi hatimaye switched juu na hatimaye alitangaza CS kama mkusanyiko yangu, kuweka gov katika hatua hiyo nyuma yangu. Na hivyo sisi siyo kuweka nje katika Bila shaka hii kugeuka nyote katika CS majors au concentrators, lakini badala kukupa nafasi kwa hopefully kwenda zaidi ya dunia na ambayo wewe ni sasa ukoo na kuleta nyuma kutoka dunia hii ujuzi na maarifa na savvy kwamba unaweza kuomba kwa yako dunia mwenyewe, kama hiyo ni katika sanaa, sayansi ya jamii, sayansi ya asili, au zaidi. Hakika, kama wewe ni hisia kidogo intrepid juu ya kuwa katika chumba hiki achilia mbali katika darasa hili, kutambua kwamba kama historia ni ishara yoyote, 72% ya wewe hawajawahi kuchukuliwa shaka CS kabla. Hivyo ni kwa njia zote si kesi kwamba mwanafunzi ameketi upande wa kushoto au kulia au mbele au nyuma yenu anajua mbali zaidi kuhusu CS au programu hasa kuliko wewe. Hiyo si kweli kesi. Na hakika, kiasi cha muundo msaada kwamba tumekuwa kuanzisha katika hii Bila shaka katika kipindi cha miaka mingi imekuwa kwa hasa kwamba reason-- kwa kutoa juu ya njia panda kwamba bado exits tu kama usahihi mkubwa na tu kama juu kama ever-- lakini mteremko wa ambayo kuruhusu wanafunzi chini ya starehe na vizuri zaidi sawa ya kufanikiwa bila kujali wenye asili ya yake kabla. Hakika, nini hatimaye mambo katika darasa hili si sana ambapo wewe kuishia jamaa na wanafunzi wako lakini ambapo katika wiki 12 kuishia jamaa na wewe mwenyewe katika wiki sifuri, ambayo ni ambapo sisi ni hapa leo. Hakika na hii inaweza vizuri sana na pengine haina kuangalia kama Kigiriki kwa wengi wenu. Lakini wengine uhakika, kwamba huu na hivyo zaidi ni kwenda kuwa kabisa ndani yako kufahamu katika tu kidogo ya muda. Lakini leo hii, sisi kuzingatia baadhi ya kiwango cha juu ya mawazo kukupa ladha ya CS50 na sayansi ya kompyuta kwa maana ya kile wewe ni kusainiwa kwa ajili ya. Na hakika, sayansi ya kompyuta yapate distilled zaidi tu kama thinking-- computational kufikiri kama kompyuta, kama wewe. Na kuna mambo mengi tofauti viungo kwamba kwenda katika hiyo, lakini hebu kupendekeza tatu tu kwa leo. Kama lengo la daraja la hatimaye si kwa kufundisha wewe programu, si kufundisha C au PHP au SQL au idadi yoyote ya maneno na Vifupisho katika maelezo kozi ya, lakini badala ya kufundisha wewe kutatua matatizo kwa ufanisi zaidi na kufikiri methodically zaidi na algorithmically zaidi, hivyo kusema. Hebu angalia hasa hii inamaanisha nini. Hivyo napenda kupendekeza kwamba kufikiri computationally majipu chini kwa kutatua matatizo. Je, unahitaji kutatua tatizo? Unahitaji pembejeo kama pembejeo kwa problem-- unahitaji pato, ambayo ni hopefully ufumbuzi, na kisha unahitaji mchakato kwa ambayo kutatua tatizo hilo, ambayo tutaweza kuwaita algorithm seti ya maelekezo kwa ajili ya kutatua tatizo fulani. Lakini kwanza, hebu kuzingatia kwanza na mwisho wa haya pembejeo na mazao. Kompyuta baada ya yote, inaonekana tu anaelewa zeros na ndio. Lakini jinsi gani kwamba uwezekano kuwa? Hata kama wewe si ukoo wakati wote na nini chini ya Hood, pengine angalau kusikia kwamba kompyuta kuelewa binary-- zeros tu na ones-- lakini jinsi gani wewe pengine kufanya kitu chochote kuvutia? Naam, moja ya kaulimbiu ya darasa ni kwenda kuwa hii layering-- ambapo leo, tutaweza kuchukua mtazamo wa haraka katika ngazi ya chini kabisa maelezo, lakini kwa kila kupita siku, ambapo sisi safu au abstract juu ya wale maelezo kwa kweli kutatua ngazi za juu matatizo ya riba na sisi. Hivyo hapa ni nini sisi tupate kuwaita binary-- na tu alfabeti ya 0 na 1. Lakini sisi binadamu ni zaidi ukoo na decimal. Desemba maana 10. Bi maana mbili. Na hivyo katika decimal mfumo, tuna tatu 10 katika disposal-- yetu ya Bila shaka, sifuri kupitia tisa. Hivyo kama ukiangalia idadi kama hii, wengi wenu intuitively tu kufahamu kwamba ni 123. Kuna kitu ngumu kweli kweli juu ya hilo. Lakini ni kwa nini 123? Naam, kama wewe kufikiri nyuma daraja school-- au angalau njia Mimi kujifunza hii aina ya world-- wewe kukumbuka kwamba sisi kutibiwa hizi mambo katika nguzo, au maeneo. Hivyo tuna ndio nafasi ya juu ya haki. mamia mahali katikati. mamia mahali upande wa kushoto. Na kisha jinsi gani sisi kupata kutoka muundo huu symbols-- 1 2 3-- kwa kiwango hiki juu wazo kwamba sisi kujua kama 123? Naam, ni baadhi tu ya hesabu rahisi. Haki? moja kuna kimsingi ina maana kutupa mara 100 1 plus mara 10 2 plus 1 mara 3. Na bila shaka kama sisi kufanya nje math huko, ni 100 plus 20 plus 3-- inayojulikana kama 123. Hivyo kama wewe ni juu ya ukurasa huo huo kama haki kwamba sasa na ni starehe na kinachojulikana mfumo decimal kama binadamu, ni kweli vizuri ndani upeo wako wa faraja kufikiria sasa mfumo binary. Kuchukua porini guess-- hii inawakilisha, katika ulimwengu wa kompyuta katika binary-- idadi gani? Sifuri. Lakini kwa nini ni kwamba? Naam, zinageuka kuwa nguzo au maeneo here-- wao siyo nguvu za 10. 1, 10, 100, 1000, na kadhalika. Wao ni badala yake, kabisa tu, madaraka ya 2. Hivyo, 1, 2, 4, 8, 16, 32, na kadhalika. Na hivyo sasa sisi bila shaka kupata 0 hapa tu kwa sababu tuna mara 4 0 plus 2 mara 0 plus 1 mara 0, ambayo bila shaka inatupa 0. Lakini jinsi gani mimi kwenda kuhusu anayewakilisha namba 1? Nini mfano wa zeros na ndio kuiwakilisha idadi sisi binadamu kujua kama 1? 001. Na 2? 010. Na sasa mfano anaanza kurudia. Sasa ni 011. Na tena, 0 fours, moja 2, moja 1. Hivyo 2 plus 1. Hiyo ni 3. Na sasa kuiwakilisha 4, sisi si tu mabadiliko hayo 0 kwa 1. Wewe aina ya kuwa na kubeba, hivyo kusema, na nambari kuanza flipping kuzunguka tu kama katika dunia decimal. Hivyo hii ni 4. Hii ni 5. Hii ni 6. Hii ni 7. Na hivyo tumekuwa kuhesabiwa kama juu kama 7. Sasa wote sisi tu haja ni zaidi a bits-- zaidi zero na mtu. Na hakika "bits", kama wameweza aliposikia hayo term-- binary tarakimu. Kidogo ni wapi kwamba linatokana na. Na hivyo kama tunataka kuwakilisha idadi kubwa, tunahitaji bits zaidi. Lakini hebu kuondokana na slides sasa kwa kitu kidogo zaidi halisi. Tuseme kwamba tunataka kweli kuwakilisha jambo hili. Naam hebu tuangalie sasa katika maandamano kidogo. Hivyo hii ni mtandao msingi maombi kuwa moja ya CS50 ya mwenyewe, Michael G, kuweka pamoja hii majira ya kusaidia sisi elucidate hasa wazo hili. Na je mtu kama kujitosa juu ya hatua mbele ya wanafunzi wenzao yake yote? Haki pale mbele. Kuja juu juu. Wewe kuwa vizuri kwenye kamera na internet. Oh, haki hapa. SAWA. Tuko OK. Sawa. Kuja juu juu. Jina lako nani? Emily kuja juu juu. Hivyo hii ni Emily. mwaka Je, ni wewe? Freshman. Emily, vyema kukutana na wewe. David. Sawa. Hivyo up kwenye screen hapa, tuna screen hii kugusa ambayo ni kwenda kuruhusu sisi kweli kuingiliana na mpango huu, na ni tu browser. Ni Chrome full kupimwa kwa wakati huu, lakini ni wamekuwa iliyowekwa na Michael kwa kujibu kwa njia ambayo inaruhusu sisi kucheza karibu na tatu mapacha. Hivyo kwa mfano, hapa tuna si tatu lakini nane zeros bits-- na ndio. Hivi sasa, tuko kuangalia idadi 0. Na hakika, zeros zote nane katika decimal ina maana zero. Hivyo hiyo ni yote yale ambayo ni kuwa aligusia saa hapa. Hivyo kama wewe alitaka kuwakilisha idadi 8, nini mfano wa zeros na wale ambao unataka? Unaweza tu bomba juu au chini au namba wenyewe. Sawa. Hivyo kwamba bila shaka ni 8, kama unaweza kuona huko. Na kama sisi alitaka je 16, tunafanya nini? Yep, tu kugusa tena. 16. Sawa. Hivyo hii yote ni mzuri na mwema, bado ni kiwango cha chini sana. Tunahitaji njia katika ulimwengu wa kweli kwa Emily ya alimwakilisha mambo haya. Na hivyo tuseme kwamba sisi kugeuka hizi zeros na ndio, ambayo ni sana dhana, katika balbu halisi mwanga. Haki? kompyuta ni kimwili, mitambo, umeme kifaa. Na pembejeo zake angalau kama kuziba katika au malipo it-- ni kuwa na nguvu ya betri na elektroni inapita ndani na nje. Hivyo sasa, kwa nini sio sisi kuacha kufikiri kuhusu bits kama zeros na ndio, lakini kitu zaidi ya kimwili kama balbu mwanga hapa. Na kama Dan Armendáriz inaweza kujiunga na me kwa ajili tu moment-- kuja juu up-- tunakwenda foleni hadi maombi. Kuja juu juu, Emily. Sorry hii ni zaidi Awkward demo kwa ajili yenu milele. Kuja juu juu hapa. Tunakwenda foleni juu na shukrani kwa Dan Armendáriz, mwanachama mwingine wa wafanyakazi wetu, maombi inayojulikana kama bulb mapacha. Hivyo nini sisi hapa ni maombi iPad ambayo ina user zifuatazo interface juu ya screen kwa Emily. Ni tu got huo halisi UI kimsingi hiyo ni zaidi ya hapo. Na kama wewe sasa wanataka kuwakilisha idadi, wanasema 8, jinsi gani unaweza kwenda juu ya kufanya noticing hii katika haki, balbu mwanga kwamba sisi hapa? Ah-ha. Kichawi. Hivyo kama tunataka sasa upande huu katika kitu kidogo changamoto zaidi, na hebu kwenda mbele na kuchukua random idadi kama idadi 50 hapa. Pembejeo hii. Na kama unaweza sasa kuwa changamoto kuja na idadi 50, tutaweza kuwa tuzo fabulous kwa ajili yenu. EMILY: OK. Mungu wangu. DAVID Malan: Hesabu ni kweli ngumu mbele ya mamia ya wanafunzi wako. Lakini 50 imekuwa jibu hapa. [Makofi] Na hivyo sasa, hii ni maana ya kuwa demonstrative kwa Emily. Hivyo, katika hapa, ni baadhi ya mwanga balbu kabisa kama haya, lakini ni kweli kidogo magnetic bidragen. Na nini baridi kuhusu haya na sababu sisi kuzitumia katika CS50 ni kwamba wanaunga mkono kitu kinachoitwa API-- programu ya maombi interface, ambayo ni njia tu dhana ya kusema kwamba kile moja ya wafanyakazi wetu hakuwa juu ya jua ilikuwa kujenga maombi kutumika hapa kwamba mazungumzo juu ya mtandao kwa balbu mwanga zaidi ya hapa, ambayo ni wirelessly kushikamana na kifaa kingine. Lakini hii sasa ni chaguo kwa ajili ya miradi ya mwisho. Na hivyo Emily, kama wewe ungekuwa hivyo kama, mwishoni mwa muhula, unaweza kupamba Dorm chumba yako katika huo huo na wale. Asante kwa Emily vilevile. [Makofi] Lakini sasa, hebu kurejea usikivu wetu kwa nini ujumbe kwamba anaweza kuwa inaonekana kama, na ni kitu kidogo kama hii. Kwa kweli, hii ni mfano kama teaser ya nini kuja ya nini aitwaye ombi API. Na hivyo kile sisi hapa ni tu hasa aina ya ujumbe kwamba baada ya wiki chache wakati katika CS50, utasikia kuwa na uwezo wa kutuma kwa kitu haki ukoo kama kwamba kwa kweli kurejea kwao na mbali. Lakini hii yote ni mzuri na mwema. Haki? Tuna mfano wa akili hopefully kwa anayewakilisha idadi na zero na mtu. Na kutoka zeros na ndio, tunaweza kupata idadi kubwa kama 50, kama Emily tu alifanya, au sisi unaweza hoja juu na kwamba. Na mimi kudai kwamba tunaweza kuwakilisha mambo kama barua vilevile. Haki? Kompyuta ni mbali zaidi kuvutia zaidi kuliko idadi tu. Na hivyo jinsi gani unaweza kwenda kuhusu anayewakilisha maneno juu ya screen au barua pepe au insha au kama? Naam, ni zamu nje kwamba kompyuta tu abstract juu ya kiwango cha chini hawa maelezo, na binadamu baadhi ya wakati uliopita, alikuja juu na holela, lakini thabiti, ramani ya namba kwa letters-- hivyo kwamba wakati wowote unaweza kuona herufi kwenye kompyuta yako screen, ni tabia mbaya nini chini ya kofia ni mfano wa zeros na ndio kwamba kuwakilisha idadi, per chati hii, 65. Na zaidi kimwili ndani ya kompyuta yako, ni mamilioni ya mambo kuitwa transistors-- days-- haya ambayo ni tu swichi kama wewe, mambo ambayo yanaweza kwenda na mbali na hivyo kufikiria. Si nane ya hizi kubwa balbu mwanga lakini mamilioni ya hayo vidogo mwanga kidogo balbu, au swichi au transistors, ambayo inaweza kugeuka na mbali kulingana na jinsi wewe mpango yao. Na hivyo sasa tuna njia ya anayewakilisha barua vilevile. Kwa kweli, kama ningekuwa kutumia hii ramani hapa na kujaribu kweli Spell kitu nje, sisi ili kuangalia katika muundo huu wa tatu decimal sasa hivi. Hivyo sisi siyo kwenda hata kuzingatia binary tena. Hebu tu kufikiria haya kama idadi decimal 72, 73, 33. Lakini nini inaweza hii kuwakilisha? Mtu yeyote kuwa kutosha kumbukumbu ya picha kujua nini yameandikwa juu ya screen hapa? Yeah chache. Hivyo hi. H-I na kisha kumweka Moderators, ambayo ilikuwa si kweli juu ya screen. Lakini kwa kweli kuna ramani kwa kila barua kwa kila idadi kwamba unaweza kutaka aina kwenye keyboard yako. Lakini idadi huna kuwakilisha barua tu. Haki? Sote tunajua kuhusu picha na picha na mafaili ya redio na mafaili video na kadhalika. Hivyo ni wazi tunaweza kuwakilisha kiwango cha mambo ya juu bado. Na hivyo kile kompyuta gani ni tu kuchagua kutafsiri chati ya ndio zero tofauti kulingana na mazingira. Kama wewe bonyeza mara mbili Microsoft Word icon, unaweza kuona maneno juu ya screen badala ya rangi na picha kwa sababu neno anajua kwamba hii ni insha kwamba umefanya kweli typed. Kama wewe badala click mara mbili juu ya JPEG au GIF au PNG, ni kufungua na ni mfano kwa sababu PNG au docx au chochote file ugani ni na chochote programu unatumia anajua kutafsiri mfano wa zeros na ndio tofauti kulingana na kile madhumuni yake katika maisha ni. Hivyo kwa mfano, hii huo mlolongo wa idadi wanaweza kuwakilisha kiasi gani nyekundu kufanya wewe wanataka, ni kiasi gani kijani Unataka, na kiasi gani bluu kufanya unataka. Na hakika, kama wameweza milele kusikia RGB-- hivyo tu nyekundu kijani bluu. Na hivyo kama mimi kuona idadi kama, hii nipe 72 nyekundu, nipe 73 kijani, na 33 bluu, hii ni jinsi gani kompyuta kwa kutumia tatu ka ambapo Byte ni bits nane au 24 bits-- kitawakilisha kivuli pretty nasty ya kahawia au njano hapa. Na katika mazingira tofauti, naweza wale halisi chati hiyo katika zeros na ndio maana kitu kabisa tofauti pia. Hivyo tuna sasa njia ya anayewakilisha zeros information-- na ndio. Juu ya kwamba, sisi kupata barua. Juu ya kwamba, tuweze kupata rangi. Na hebu kudhani kwa leo tuweze kupata redio na video na mambo mengi zaidi kisasa kuliko hiyo. Lakini sasa hebu fikiria jinsi ya kutumia pembejeo wale na kuzalisha wale matokeo sasa kwamba tuna njia za kuwasilisha taarifa hiyo. Naam, tunahitaji kitu aitwaye algorithm. Tena, seti ya maelekezo kwa ajili ya kutatua tatizo fulani hatua kwa step-- na sahihi zaidi, bora. Na hivyo mfano na ambayo binadamu ni admittedly chini ya ukoo siku hizi, lakini hata hivyo bado ni na sisi katika programu, ni mchakato wa kuangalia up mtu katika kitabu cha simu. Sasa, chache na chache folks kujua kila Mwaka gani masalio hii kwa kweli ni hapa. Lakini nyuma katika siku yangu, hii ilikuwa kitabu cha simu na maelfu ya kurasa na idadi na majina ya watu kutoka kupitia Z. Na hata kama sisi ni aina ya cheating a bit-- hii ni zaidi ya kurasa njano. Pia kulikuwa na nyeupe kurasa wakati huo, ambayo alikuwa wote wa majina hayo na idadi ya binadamu halisi. Na kama mimi alitaka kuangalia mtu up katika kitabu cha simu kama leo hii, bila shaka, Mimi tu aina katika michache ya kwanza wahusika wa jina lake, na simu yangu imegundua kwamba habari. Lakini utaratibu ambao yako iPhone au Android simu au chochote ni kweli kutafuta mtu katika mawasiliano orodha yako ni kufanana na kile sisi binadamu pengine wamefanya kwa muda fulani. Sasa mimi naweza kuchukua hii tatizo, kama wewe, na pembejeo hapa si zeros na ndio. Wao ni pages-- kama, hebu sema kurasa 1,000. Na kama mimi alitaka kuangalia up mtu kama Mike Smith katika kitabu hiki simu, Mimi naweza kuanza mwanzoni na kuona kwamba mimi niko katika A kifungu cha na kisha kugeuka ukurasa mmoja muda, kuangalia na kuangalia kama mimi kufanya kwa B na C na D's na kadhalika kwa Mike Smith. Smith kuanzia na S, mimi itabidi hopefully hatimaye kumpata. Ni algorithm hii kwamba process-- sahihi? Yeah. Ni sahihi. Mimi utapata Mike kama yeye ni katika hapa, lakini nini caveat kwamba unaweza kutoa. Ni mwepesi. Haki? Najua Mike S ni aina ya kuelekea mwisho nusu ya kitabu cha simu. Kwa nini heck mimi kuanzia mwanzoni na kwenda ukurasa kwa ukurasa kwa ukurasa. Hivyo bila shaka, mimi naweza flip ni karibu na kuanza kutoka nyuma, lakini hiyo ni kwenda kupata me there kwa kiwango hicho, kama wewe willl-- ukurasa baada ukurasa baada ya ukurasa. Na si kwenda kufanya kazi kama nataka kutafuta mtu mwingine ambaye jina linatokana mapema katika alfabeti. Basi nini kama mimi kufanya nini mimi kujifunza katika shule ya daraja, tena, kufanya mambo si na ndio lakini wawili-wawili. Hivyo 2, 4, 6, 8, 10, 12, na kadhalika. Ni kwamba ni sahihi? Hakuna Ni aina ya sahihi. Lakini baadhi yenu ambao walikuwa wananung'unika hakuna, ambapo ni tatizo, au mdudu, makosa hivyo kusema. Yeah. STUDENT: Unaweza ruka juu ya kuingia haki. DAVID Malan: Yeah. Nipate ruka juu Mike Smith ni kwa sababu nimekuwa kuchukuliwa kurasa mbili kwa mara moja na yeye tu hutokea kwa kuwa ipo kati ya kurasa hizo mbili. Nipate kutambua kwamba Mimi nina juu ya kwa T kifungu cha wasiukute Mike Smith bado. Na hivyo kile inaweza fasta kuna kuwa? Naam, kama mimi kufanya kugonga Ts katika kitabu cha simu, Nipate haja ya mara mbili kuunga ukurasa mmoja au hivyo. Hivyo ni fixable, lakini siyo kabisa kama rahisi kama tu kwenda kwa wawili kuharakisha utendaji wangu. Lakini nini? Kuja juu. Je, ni yale ambayo wanadamu wengi ni kwenda cha kufanya na aina hii ya kitabu cha simu? Wewe ni kupewa kitabu cha simu. Unafanya nini? Nini kile? Kwenda katikati. Hivyo nikasikia kwenda katikati, na mimi kupata mwenyewe takribani katika M sehemu, hivyo kusema. Na sasa nini mimi nataka kufanya? Kazi nzuri. Jina lako nani? JAMES: James. DAVID Malan: James, sawa. Je, nini baada ya hapo? JAMES: Unaweza kwenda katika nusu ambayo ina S ya. DAVID Malan: zote haki. Mimi nina kwenda katika nusu kwamba ina S ndani yake kwa sababu, tena, stipulation hapa ilikuwa kwamba jambo hili ni Iliyopangwa. Ni pretty haina maana 1,000 kurasa kama Verizon haina kweli kutatua mambo haya kwa ajili yetu kupitia Z. Hivyo kama mimi kujua Mike pengine ni katika mwisho nusu ya kitabu cha simu, Naweza sasa. [Anacheka] Machozi tatizo katika nusu. [Makofi] Asante. Machozi tatizo katika nusu. Kwamba alikuwa kweli real-- kwamba mapambano. Hivyo machozi kitabu cha simu katika nusu, na kuacha mwenyewe na kimsingi tatizo moja. Lakini bila shaka, nusu kama kubwa. Na kama mimi kufuata James Ushauri tena, na mimi kwenda hapa. Nasema, loo sasa niko katika T sehemu. Na hivyo bila shaka, mimi unaweza machozi kitabu cha simu katika nusu ya wakati mmoja zaidi, na kuacha me na tatizo hilo sasa robo ya kawaida. Hivyo nimekuwa wamekwenda kutoka 1,000 hadi 500 250 kwa 125 na kadhalika. Ni anahisi kama mimi nina kuchukua kuumwa kubwa nje ya tatizo hili na kila iteration, au kila hatua katika hilo. Na hakika, wakati mimi nina kwenda kutumia kutafuta Mike Smith katika mfano huu ni kiasi kidogo kwa sababu hatimaye mimi nina kwenda whittle hii kitabu pone chini kwa lone ukurasa mmoja tu. Na kama Mike ni juu ya ukurasa huo, mimi nina kwenda mbele na kumpa wito baada ya kupatikana kwake. Lakini tu jinsi bora zaidi ni kwamba algorithm kwamba kuthubutu kusema Intuitive algorithm kuliko wale sisi ilianza na ambayo tuko linear-- sana kushoto na right-- kwa kasi ya 1 au 2x? Naam, hebu njama hii. Hatuna wasiwasi sana kuhusu math au namba katika kesi hii hapa. Sisi tu kuangalia njama. Kadhalika x, au usawa mhimili, ni ukubwa wa problem-- jinsi kurasa nyingi ni pale. On y, au wima mhimili, ni muda kiasi gani ni kwenda kuchukua yangu ya kulitatua. Na labda hiyo ni wangapi ukurasa zamu, sekunde ngapi, jinsi wengi baadhi kitengo cha hatua. Na nimekuwa inayotolewa nyekundu mistari moja kwa moja hapa kwa sababu kama kila ukurasa ziada ya kitabu cha simu, mimi zinahitaji kufanya hatua moja ya ziada. Hivyo kama Verizon anaongeza moja zaidi ukurasa mwaka ujao, Nipate kuwa na flip zaidi ukurasa mmoja kupata mtu kama Mike Smith. Wakati huo huo, algorithm ya pili, ambayo Nilikwenda wawili-wawili, ni umbo moja. Bado ni linear sana, kushoto sana haki, kuchukua ka sawa kila wakati, lakini mteremko ni chini kidogo. Kwa mfano, ikiwa na ukubwa wa Tatizo walikuwa takribani hapa na mimi kutumika algorithm yangu ya kwanza, Mimi inaweza kuishia njia yote utafutaji juu ya mstari kwamba nyekundu. Lakini kama mimi badala yake kutumia kwa twosies mbinu, line njano unaonyesha kwa sababu ni ya chini, kwamba ni kwenda kuchukua me muda kidogo kutatua. Lakini nini sura ya tatu algorithm tena, arguably wengi Intuitive algorithm? Naam, inaonekana kidogo kitu kama hiki. Ni curved, au logarithmic, katika sura. Na hata kama ni kamwe aina ya kunasiliba nje, ni asymptotically inches juu na juu na juu lakini sana polepole dhidi ya kila kitu kingine. Na nini kuchukua? Naam, sisi kuiita logi n. Lakini ni nini kwamba kweli maana? Naam kama Verizon mara mbili idadi ya kurasa katika kitabu cha simu mwaka ujao kutoka 1,000 hadi 2,000. Jinsi hatua zaidi wengi ni yangu algorithm kwanza kwenda kuchukua? algorithm yangu ya kwanza. Labda 1,000 hatua zaidi. Kama wao mara mbili kitabu cha simu, mimi nina kwenda kuwa na flip kupitia mwingine 1,000 kurasa kupata Mike. Bila shaka, kama pili algorithm, labda 500 kwa sababu mimi nina kwenda mara mbili kwa haraka. Lakini kama Verizon maradufu idadi ya kurasa kati ya mwaka huu na ujao, na wa tatu yangu algorithm mgawanyiko na kushinda kwamba James mapendekezo, kwenda katika nusu na nusu na half-- hatua jinsi wengi zaidi mapenzi ni kuchukua yangu mwaka ujao kuwa na kitabu cha simu ya kawaida 2,000? Moja tu. Kwa sababu kwa bite moja, siwezi kuchukua, nje ya tatizo hilo, nusu ya kurasa mbali. Na kama unadhani kuhusu hili kidogo crazily now-- kama kitabu cha simu hana na 1,000 au 2000 ukurasa, lakini hebu sema bilioni 4 pages-- ni simu kubwa book-- jinsi mara nyingi au jinsi hatua nyingi ni kwenda kuchukua mimi kupata Mike Smith katika kitabu cha simu na kurasa bilioni 4. Unaweza aina ya kuanza kufanya math. Sawa. bilioni 4 kugawanywa na 2. Hivyo hiyo ni bilioni 2 kugawanywa na 1. Hiyo ni bilioni 1. Kisha nusu bilioni. Kisha 250-- hivyo unaweza kufanya hivyo tena na tena lakini si kwamba mara nyingi kabla ya kupata ukurasa mmoja. Na hakika, hata kama simu kitabu ni bilioni 4 kurasa muda mrefu au database wewe ni kutafuta ni bilioni 4 rekodi kwa muda mrefu, ni kwenda kuchukua wewe kutoa au kuchukua hatua 32 tu kupata Mike Smith. Na kama wewe mara mbili kitabu cha simu ijayo mwaka kutoka bilioni 4 kwa bilioni 8, hatua 33 badala ya 32 tu. Na hii ni ushahidi kwa moja ya mawazo tupate kukumbatia katika kompyuta sayansi kwa ujumla zaidi, ambayo ni fikra hii computational na inakaribia tatizo kusema ukweli kwa kutumia zana kutoka chombo yako tayari ukoo kit-- dunia yako halisi na ambayo wewe ni ukoo, lakini kuimarisha mawazo hayo kwa kweli kutatua matatizo. Lakini tunahitaji kurasimisha yetu ufumbuzi wa matatizo haya. Na hivyo basi mimi kuanzisha kwa muda kitu tunachoweza kukiita pseudocode. Mengi ya muhula, tutaweza kutumia kutumia halisi code kwa lugha kama C na PHP na JavaScript na SQL na kadhalika. Lakini kwa sasa, hebu tu kuangalia katika kitu haki angavu kama Kiingereza. Nipate distill kwamba algorithm ambayo Nimeona Mike katika hatua kama hii. Pick up kitabu cha simu Open katikati ya kitabu cha simu Angalia katika jina la Kama Mike ni miongoni mwa jina la Wito Mike Mwingine kama Smith ni mapema katika kitabu Open katikati ya kushoto nusu ya kitabu Mwingine kwenda kujipanga 3 Mwingine kama Smith ni baadaye katika kitabu Open katikati ya nusu haki ya kitabu Kwenda kujipanga tatu kingine Kata tamaa Na kuna sifa chache sasa hiyo ambayo ni thamani ya kusema. Hivyo moja, mistari yote Nimekuwa yalionyesha katika njano tunakwenda kuanza wito kauli au kazi au taratibu. Wao ni vitendo tu kufanya huu, na kuna si kwamba tofauti zote mengi ya hayo. hatua ya pili hapa ingawa, ni haya conditions-- kama, mwingine, mwingine kama, mwingine. Na haya ndiyo inaitwa hali au matawi, na wao uko pointi uamuzi. Nao kuruhusu sisi kufanya kitu kwa masharti. Na kwa kweli, hebu kuchukua haraka tuangalie labda face-- ukoo tutaweza kumwita Bill-- na nini hali hizi hasa, jinsi haya inaweza kutumika. BILL GATES: Watu kufanya maamuzi kila siku. Kwa mfano, kabla ya kwenda nje wewe aina ya kuwa kama taarifa kwamba anasema, kama ni mvua, basi mimi Unahitaji kupata koti langu. Na kompyuta ni ajabu mara moja kuamua aina wale wa kauli waweze reliably nitafanya mambo hayo kwa kasi ya ajabu. Na hivyo programu ya kompyuta kweli ni kidogo ya math na baadhi kama kauli ambapo uamuzi anapata alifanya. DAVID Malan: Hivyo sasa hebu lengo juu ya lines-- chache tofauti wale nimekuwa yalionyesha katika njano hapa. Na ni zamu huko nje ni tofauti njia za kueleza wazo hili. Lakini intuitively nini mistari yetu 8 na 11 kwamba nimepata yalionyesha hapa nawaambia kufanya? Ndiyo, kwenda kujipanga 3, lakini kile tabia ni kwamba kweli inducing? Ni aina fulani ya kitanzi au mzunguko, na unaweza aina ya kuona. Haki? Kama kwenye mstari 8, wewe kwenda nyuma ya mstari 3, na kisha kugonga line 8 tena, unaweza kwenda nyuma ya mstari wa 3, nyuma ya mstari wa 3, nyuma ya kujipanga 3. Kuna aina hii ya mzunguko au kitanzi. Na hakika, hiyo ikiwa katika line 11 uwezekano vilevile. Na hii ni msingi programu kujenga vilevile. Unaweza si unataka tu kufanya kitu kwa kauli au kufanya kitu kwa masharti na hali au tawi. Unaweza kutaka kufanya kitu cyclically na kitanzi. Na tutaweza kuwa na mtu mwingine ambaye unaweza kuwa familiar-- tutaweza kumwita Mark-- kuelezea dhana hii hapa. Mark Zuckerberg: One Jambo kwamba kompyuta ni mzuri katika ni kurudia amri. Kama mtu, wewe Ningependa kupata kweli kuchoka kama wewe alikuwa na kufanya kitu kimoja kura ya mara katika mstari, lakini iliyokaa na unaweza kufanya kitu kimoja mamilioni au hata mabilioni ya mara na si kupata kuchoka na kuwa na uwezo kubeba kwamba nje vizuri. Hivyo kwa mfano, kama mimi kuwatakia kila mtu katika Picha furaha ya kuzaliwa na kuwapeleka email, inaweza kuchukua mimi zaidi kuliko karne ya kweli kuandika nje yote ya barua pepe wale kwa kila mtu. Lakini mistari na chache tu ya kificho, naweza kuwa na mfumo tuma barua pepe kwa kila mtu katika Picha wanaotaka nao furaha ya kuzaliwa. Hivyo kwamba ni nini loops ni na nini wao uko thamani na kitu kwamba kompyuta anaweza kufanya vizuri sana. DAVID Malan: Wengi shukrani kwa marafiki zetu katika code.org kwa ajili ya filamu hizo mbili. Na tu wiki iliyopita, unaweza kuwa na kuonekana kwamba Mark Zuckerberg na Facebook zilizowekwa tangazo hili, ambayo ni kwamba wao tu imepita muhimu hatua kwa mara ya kwanza kabisa. Watu bilioni 1 kutumika katika Picha siku moja, hasa Jumatatu iliyopita. Moja kwa binadamu saba Duniani inaonekana watumiaji katika Facebook. Naam, hii inaonekana fursa nzuri kuangalia nyuma juu ambapo Facebook ilianza, na sisi akaenda kwa njia ya CS50 ya mwenyewe nyaraka kwa sababu ni zamu nje mwaka 2005, Mark alitoa hotuba mgeni katika CS50. Utaona kwamba maadili ya uzalishaji hawakuwa kabisa nyuma moja basi katika suala la teknolojia inapatikana, na utasikia pia kuona kwamba uwepo ya hii hotuba mgeni haikuwa lazima pique maslahi ya mwanafunzi mwili, watangulizi yako, kama vile ni kuwa na miaka michache baadaye. Hivyo basi tuangalie katika Sayansi Center C. SPIKA 2: Tafadhali kujiunga na mimi, na kuwakaribisha. [Makofi] Mark Zuckerberg: Yo. Sawa. Cool hii ni mara ya kwanza nimekuwa milele wamekuwa na kushikilia moja ya mambo haya. Hivyo mimi nina kwenda tu ambatisha kweli haraka. Sawa. Je, unaweza kusikia? Je, hii ni nzuri? Je, hii ni alijiinua wakati wote? Sawa. Tamu. Hivyo, hii ni kama moja ya nyakati wa kwanza Nimekuwa na hotuba katika Harvard, but-- DAVID Malan: Hivyo hatimaye Sayansi Center alifanya kuvuta video, lakini si kabla ya ukamataji huu excerpt ambapo Marko kuzungumza, ambayo yeye kujadiliwa yake roommate, Dustin, ambaye alitaka kukopesha mkono na hii tovuti inayoitwa Facebook.com na kubaini kuwa Mark ni kuhusu kutaja na programu languages-- mtu mmoja aitwaye Perl, moja aitwaye PHP-- kama yeye kujadili Asili ya mchango Dustin. Mark Zuckerberg: Mimi kuanza mbio tovuti na ilizindua hiyo kwa Harvard mwezi Februari, 2004. Kwa hiyo mimi nadhani karibu miaka miwili iliyopita sasa. Na ndani ya wiki kadhaa, a watu elfu chache alikuwa saini up, na sisi kuanza kupata barua pepe baadhi kutoka kwa watu katika vyuo vingine kuuliza kwa sisi kuzindua ni katika shule zao. Na nilikuwa kuchukua 161 wakati huo. Hivyo mimi sijui kama wewe guys kujua sifa bila shaka kwamba, lakini ilikuwa ni aina ya nzito. Ilikuwa shaka kweli ni furaha, lakini hakuwa na kuondoka na muda mwingi kufanya kitu kingine chochote na Facebook. Hivyo roommate yangu Dustin, ambaye mimi nadhani alikuwa tu kumaliza CS50, ilikuwa kama, hey. Nataka kusaidia nje. Nataka kufanya upanuzi na kusaidia wewe kufikiri jinsi ya kufanya mambo ya ajabu. Hivyo mimi nilikuwa kama, hiyo ni pretty baridi, dude. Lakini wewe si kweli kujua yoyote PHP au kitu kama hicho. Hivyo mwishoni mwa wiki kwamba alikwenda nyumbani, kununua kitabu Perl for Dummies, akarudi na ilikuwa kama, sawa. Mimi niko tayari kwenda. Mimi nilikuwa kama, dude, tovuti Imeandikwa katika PHP si Perl, lakini hiyo ni cool. Hivyo yeye ilichukua PHP juu ya siku kama wachache kwa sababu mimi ahadi kwamba kama una background nzuri katika C, PHP ni jambo rahisi sana kuchukua. Naye aina tu ya alikwenda kazi. Kabla ya sisi kuangalia sasa katika ambapo bila shaka ni kwenda, naomba kukaribisha baadhi tu ya wafanyakazi SC50 ya juu kwa hatua. Baadhi yao ni ununuzi kozi yao wenyewe. Lakini kama wale TFS na CAS na shaka vichwa ambao ni hapa inaweza kuja juu juu na kujiunga na mimi kwa hodi haraka. Naomba kuanzisha hasa, Hanna, Maria, Daven, na Rob, Bila shaka CS50 anaongoza hapa katika Cambridge. [Makofi] DAVID Malan: Kwa hakika, ushahidi wa msaada muundo kwamba bila shaka ina kujengwa nje katika kipindi cha miaka mingi, CS50 wafanyakazi mwaka huu idadi karibu 100, na kwamba hapa katika Cambridge peke yake. Wakati huo huo, katika New Haven, je, kuna baadhi 40 TFS na CAS na wanachama wa wafanyakazi huko kuendesha kozi kama vile. Kuruhusu sisi kuanzisha kwanza, Rob Bowden. Rob BOWDEN: Hi. Mimi nina Rob. Huu ni mwaka wangu sita TFing katika mwendo. Hivyo, njia yote nyuma katika wangu mwaka Freshman, sikuweza kuchukua CS50. freshman yako fall-- unaweza kuwa na mazoea kwamba unaweza tu kuchukua kozi nne na kuna wengi kozi leo. Kwa hiyo mimi nina kama, eh. Mimi alichukua AP CS mwaka wangu mwandamizi wa shule ya sekondari ilikuwa ni ya kutisha. Kwa hiyo, mimi nina kama, eh. Kompyuta sayansi ni si kwa ajili yangu. Hivyo basi ni juu ya mwendo wa freshman yangu kuanguka, kwamba mimi alikuwa na rafiki katika CS50, na Nadhani walihudhuria hotuba moja na yake. Ni kama, loo, hii ni aina ya bora kuliko kile alikuwa katika shule ya sekondari. Na juu ya zamu ya mwaka, nilikuwa na yangu mwenyewe seti tatizo katika kozi Mimi kwa kweli kuchukua. Lakini mimi sikuona kuwa wakati mimi alitaka akhiri juu ya hizo, Napenda kurudi nyuma kwa CS50 na kuangalia baadhi ya mambo ambayo. Hivyo, yeah. Mimi nina baridi. Mimi uajizi na coding. Hivyo basi ni mwishoni mwa kuanguka kwamba mimi kutambua, hey, sayansi ya kompyuta ni pretty cool. Mimi kuishia kuchukua CS51. Katika muhula ujao, Mimi kuishia kuchukua CS61. Na yote kutoka huko, basi mimi kuishia kutangaza sayansi ya kompyuta, ambayo nilikuwa kabisa hakuna nia ya kufanya nilipofika katika chuo. Na sasa niko hapa. Hivyo bila shaka ni nini kufanya yake. Natumaini kufurahia. [Makofi] DAVID Malan: Asante kwa Rob. Na sasa Maria, yetu kichwa shaka msaidizi. MARIA: Hey guys. Jina langu ni Maria. Mimi nina sophomore katika Cabot House, kuja kutoka Bulgaria, na mimi nina super msisimko kuwa sehemu ya wafanyakazi mwaka huu. Mimi alichukua CS50 kama freshman mwaka jana, na mimi kamwe hata mawazo kuhusu CS kabla. Hivyo mimi upendo kabisa bila shaka, na mimi hope wote kupenda kama vile mimi. Na, yeah. Karibu CS50. DAVID Malan: Asante kwa Maria. [Makofi] Sasa Hanna, mafundisho kichwa wenzetu. HANNA: Hi, mimi nina Hanna. Mimi nina mwandamizi katika Cabot kusoma sayansi ya kompyuta. Mimi alichukua CS50 kama freshman na alikuwa imekuwa TFing-- hii utakuwa na mwaka wangu wa tatu. Hivyo mimi itakuwa furaha kushiriki katika CS50 kwa miaka minne, na mimi nina kuangalia mbele kufanya kazi na wewe wote. DAVID Malan: Asante kwa Hanna. [Makofi] Na Mwisho, Daven, precepter yetu. Daven: Hey guys. Mimi nina amri juu katika sayansi ya kompyuta hapa. Hii utakuwa na mwaka wa nne mafundisho yangu. Mimi pia kusaidia kusimamia bila shaka. Hivyo mimi nina uhakika utaona yangu karibu, hasa katika masaa ya ofisi. Mimi nina daima katika masaa ya ofisi. Hivyo kama unaweza kuona mimi kutembea kote, dhahiri kuja kusema hi. Mimi upendo kukutana kila mtu. Vinginevyo, kuwa na furaha, na mimi itabidi kuona wewe karibu. DAVID Malan: Asante kwa Daven vilevile. Hivyo itabidi kukutana yote ya folks hizi kabla ya muda mrefu. Lakini bila ya zaidi ado, kama wewe guys ingekuwa kama na kuanza viti yako kutoka mapema. Naomba kuanzisha kutoka mbali sasa baadhi ya marafiki zetu kutoka New Haven, katika vichwa hasa kozi ya nani itabidi kuwa kusimamia CS50 there-- Profesa Brian Scassellati, Yasoni, na Andi, ambao just-- hivyo kwamba hatukuwa kumjaribu hatma na yoyote FaceTime au like-- tu waliotutuma dakika iliyopita video zifuatazo ambazo wanasema hodi kutoka ukumbi katika Yale, ambapo hotuba ni kuwa streamed hivi sasa. Hivyo marafiki zetu kutoka Yale. BRIAN SCASSELLATI: Hi, David. Hi, kila mtu katika Harvard. Sisi ni hivyo msisimko kuwa na kuleta CS50 kwa Yale muhula huu. Jina langu ni Brian Scassellati, lakini kila mtu tu anataka mimi Scas. Na mimi niko hapa leo kuanzisha na wewe wafanyakazi CS50. [Wakishangilia] Na muhimu zaidi, mimi nina hapa kwa kuanzisha pamoja yote ya wanafunzi katika Yale ambao kama ya leo asubuhi kuwa alifanya hii maarufu Bila shaka katika Yale wanafunzi CS50. [Wakishangilia] Hivyo sisi ni msisimko sana kuwa kuona wewe hapa siku ya Ijumaa na Jumamosi kwa Puzzle Day na kuwa hotuba kubwa. Bye. [Makofi] DAVID Malan: Kwenye screen hapa ni majina ya baadhi ya wafanyakazi 140 wanachama ambao wakisubiri wewe juu ya kozi ya semester-- baadhi yao hapa katika Cambridge, baadhi wao hapa katika New Haven. Na hakika itabidi fursa hii ya Jumamosi, kama Scas maelezo, kwa kuhudhuria CS50 Puzzle Siku. Unaweza kuwa na kuonekana vipande puzzle kidogo slipped chini ya doorways yako hivi karibuni. Tuna extras chache hapa baadaye wakati wewe kuwepo. Kama wewe kukusanyika yote puzzle nne vipande na kuunganisha vikosi pamoja na vyumba lenu jirani katika yako nyumba au Dorm, wao itabidi kukusanyika katika QR code-- au mbili dimensional bar code, kwamba mara moja walikutana na scanned na simu yako nitakuongozeni kwa baadhi ya tuzo fabulous or-- nadhani unaweza tu kupiga picha hii sasa vilevile. Lakini kupata vipande wale puzzle hata hivyo ili kushinda kwamba tuzo Fabulous. Na hakika moja ya mila katika SC50-- ah, polepole mno. Moja ya mila katika CS50 ni kutumikia keki baada ya hotuba ya kwanza. Na hivyo kweli kweli, dakika chache kutoka sasa, kutakuwa na keki aliwahi nje wote hapa na New Haven vilevile. Lakini first-- sisi decorated yao wenyewe. Lakini first-- na hopefully kutakuwa na kutosha. Lakini kwanza, haraka kuangalia. Hivyo mihadhara ni kweli itakuwa zikitengenezwa hapa katika Cambridge. Lakini kila mwezi, tutaweza hop chini ya Yale na timu ya uzalishaji CS50 na mkondo Bila shaka katika reverse mwelekeo pamoja ili kama kuleta vyuo vikuu hizi mbili kweli kwa mara ya kwanza katika historia kama karibu pamoja iwezekanavyo kama moja katika mwendo huo. Katika suala la muundo msaada kwamba ni wamekuwa alisimama hapa katika Cambridge pamoja kama katika New Haven, ni sehemu. Hakika, kama baadhi yenu may kujua, tuna nyimbo tofauti ndani ya kozi kwa wale chini starehe, vizuri zaidi, na mahali fulani katika kati ili bila kujali background yako kabla, unaweza hatimaye kufanikiwa katika darasa. Ofisi ya masaa wakati huo huo, ni nafasi juu ya Jumatatu na Jumanne na Alhamisi jioni kufanya kazi zote mbili hapa na katika New Haven juu ya kozi yetu ya tatizo seti na kadhaa wa wafanyakazi kozi ya karibu na wewe. Tatizo seti wakati huo huo, ni mkono na mambo tunaita walkthroughs, ambayo ni video makao tutorials kwamba kweli kujibu Maswali ya wapi kuanza changamoto wiki. Na postmortems kutembea wewe kupitia ufumbuzi iwezekanavyo ili mwisho wa tatizo kuweka pia, wewe kujua hasa ni nini wangefanya tofauti au kabisa vinginevyo. tatizo seti wenyewe kuja katika matoleo mawili, toleo la kawaida kwamba tunatarajia na kukaribisha zaidi ya class-- baadhi 90% plus do-- na kinachojulikana toleo hacker ambayo kila ukurasa ni emblazoned toleo hacker, hacker toleo, toleo hacker, hivyo kwamba una kuwa karma kama wewe, kwa mbizi katika matoleo ya juu zaidi ya seti tatizo kozi ya kwamba cover zenye vifaa hivyo lakini pamoja na mbinu za kisasa zaidi na kutokana na historia ya ziada wakati mwingine vishawishi. Wakati huo huo, kuna siku tisa marehemu kwamba unaweza kuomba kwa tatizo kozi ya seti kama vile alama ya chini, ambayo sisi kuacha katika suala mwisho. Lakini watapata nini? Naam, ladha ya tatizo seti katika mkono siku ya Ijumaa na wiki ijayo ambapo sisi dabble kwa siku chache tu katika kitu aitwaye Scratch, programu graphical lugha zilizotengenezwa na marafiki zetu katika MIT Media Lab ya kwamba utapata mpango ama kwa mara ya kwanza au katika mazingira mapya kabisa kutumia Drag na kuacha aina ya mazingira. Ambapo vipande puzzle tu interlock pamoja kama inafanya hisia mantiki ya kufanya hivyo. Wakati huo huo katika tatizo kuweka mbili mwaka jana kwa mfano, hatukufanya kuanzisha darasa la katika ulimwengu wa cryptography, sanaa ya encrypting au scrambling habari. Hakika, huu maandishi hapa ikiwa decrypted, kwa kweli kusababisha wewe na baadhi ya marudio ya kujifurahisha. Na katika tatizo kuweka, nini tulikuwa wanafunzi kufanya ni kutekeleza hasa wale aina ya things-- algorithm, au seti ya maelekezo kwa ajili ya scrambling na scrambling habari. Na katika toleo hacker ya tatizo kuweka kwamba huo, hatukufanya changamoto wanafunzi kuchukua encrypted faili kutoka kompyuta ya kawaida mfumo kwa kura ya majina ya watumiaji na nywila encrypted na ufa passwords-- wale kweli kufikiri kile walichokuwa bila kujua chochote priori kuhusu nywila wale halisi. Wakati huo huo, kufanya sisi mpito katika tatizo seti ya basi kuangalia ulimwengu wa graphics. Na kwa kweli, unaweza kufikiria sasa kwamba hii inaweza labda kuwa njia rahisi ya kuwakilisha nyeusi na nyeupe picha. pixel nyeupe, au mraba, kama utafutaji juu haki pale, inaweza kuwa kuwakilishwa na 1 na mraba nyeusi inaweza kuwa kuwakilishwa na 0. Na tu kwa kutumia bits zaidi kama sisi mapendekezo ya awali na 72 na 73 na 33, tunaweza kuwakilisha rangi saizi vilevile. Na nini cha kufanya wakati wa kuweka hii tatizo ni ujumla kuchukua stroll kuzunguka chuo na kamera digital, kuchukua picha ya watu, maeneo, na vitu. Kisha kwa namna fulani kila muhula, tunaonekana ajali kufutwa au rushwa kadi ya kumbukumbu juu ya ambayo yote ya picha hizo ni, na hivyo ni changamoto na kisha kuandika programu na ambayo kupona JPEGs wale kutoka nakala ya kadi ya kamera yetu. Wakati huo huo, je, sisi mkono wewe baadaye katika mrefu kamusi ya maneno ya Kiingereza ambazo zina maneno 143,000, na wewe haja ya kuja na njia smart ya upakiaji yao katika kumbukumbu, au RAM hivyo kusema, kujibu maswali ya aina hii si kauli, hii si kauli, kutekeleza kasi Spell kusahihisha kwamba unaweza, hata wanaweka mwenyewe uwezekano dhidi wanafunzi kuona ambayo ya wewe anatumia kiasi angalau ya muda wakati wa mbio kanuni yako na hata kiasi mdogo wa kumbukumbu. Baadaye katika muhula kufanya wewe kweli kutekeleza mtandao yako mwenyewe server. Hivyo si tu tovuti katika lugha inayoitwa HTML na zaidi, lakini mtandao wa kompyuta ambayo kwa kweli anasikiliza maombi kwenye mtandao na anaitikia kwao. Na hakika, hii ni jinsi sisi kuziba dunia yetu ya C na ambayo utasikia kuwa ukoo wiki ijayo na PHP na HTML na JavaScript na CSS na kadhalika. Kwa sababu moja ya mtandao wa kwanza msingi mradi sisi kufanya baadaye katika muhula ni ya kihistoria CS50 Fedha. Etrade.com style tovuti ambayo inaruhusu wewe kununua na kuuza hisa karibu wakati pia kuandika kanuni kuzungumza na Yahoo Finance kupata nusu muda halisi ya hisa ananukuu ili update kwingineko yako mwenyewe. Lakini mwisho bila shaka, ni project-- mwisho nafasi ya kufanya kitu chochote zaidi ya riba na wewe ili kutatua tatizo hapa au zaidi ya riba na wewe hiyo ni kwa namna fulani aliongoza na masomo ya kujifunza darasani. Na darasa, kama unaweza kujua, unafikia upeo katika kile kinachoitwa CS50 Hackathon na CS50 Fair na idadi yoyote ya matukio mengine ya kiutamaduni katika muhula kwamba kuruhusu kujihusisha na kila mmoja na wafanyakazi kozi. Kwa mfano, katika Moto na Ice katika Sitar mwaka huu, vizuri, siku ya Ijumaa mchana, sisi kuwakaribisha baadhi ya 50 wanafunzi kwa chakula cha mchana, yeyote wangependa kujiunga na sisi, mwenyewe, na wafanyakazi, na marafiki wetu kutoka sekta na alums kuzungumza kuhusu maisha katika ulimwengu wa kweli na zaidi ya wakati kufurahia chakula cha mchana nzuri. Wakati Hackathon mapenzi unaweza kuona picha kama hizo kama haya, ikiwa ni pamoja na mengi ya candy-- na kama ya 2014 kwa ajili ya time-- kwanza mboga. [Makofi] Lakini kwa 05:00, je eneo la tukio kawaida kuangalia kitu kidogo kama hii. Na kisha tu wiki au hivyo baadaye, ni CS50 Fair ambayo baadhi ya 2000 wanafunzi na wafanyakazi na kitivo wanachama kutoka katika chuo na hela ya vyuo vikuu mwaka huu kuja kuona na furaha katika mafanikio ya CS50 wanafunzi, ambazo sasa ni wewe. Na hakika, wakati mwaka huu tutaweza kuwa kuwakaribisha na busing mtu yeyote katika katika Yale ambao wangependa kuja Cambridge Jumamosi hii kwa CS50 Puzzle Siku, na tutaweza kufanya exact kitu katika Desemba kwa CS50 Hackathon ili Harvard na Yale wanafunzi sawa twapokea katika wawili wa matukio hayo. Sisi pia itafanya CS50 maonyesho katika Cambridge na katika New Haven mwaka huu ili wanafunzi juu ya wote vyuo vikuu na wafanyakazi na kitivo unaweza kuona kila husika chuo ya accomplishment. Na mafanikio hayo kushawishi kumbukumbu hizo kama hii na hii na hatimaye huu, ambamo nyote kujinasua darasa amevaa kidogo kitu katika ambayo walikuwa hopefully furaha au fahari kusema kwamba mimi alichukua CS50. Lakini kabla ya hapo na kabla ya sisi kutumika keki, tumekuwa kuweka together-- shukrani kwa CS50 ya timu ya uzalishaji na kujitegemea fulani fimbo, tukio moja kwamba sisi kutumia mambo kama hayo for-- wakati sisi Wajumbe si tu hapa Cambridge lakini pia kwa New Haven kukusanya hellos chache kutoka wafanyakazi kozi na wote wa folks atakutana na wote hapa na katika New Haven kipindi cha miezi zifuatazo. Naomba kuanzisha chache zaidi ya wafanyakazi CS50. Mark Zuckerberg: Je kwamba kufanya hivyo ni kwenda? Oh, ni kwenda. Ni kwenda. Ooh. Yarr! [MUSIC KUCHEZA Andy Grammer, "HONEY, Mimi nina  GOOD "] MARY: Hii ni Caitlin. Hiyo ni Jay, na mimi nina Mary. SATO: Hi, guys. Mimi nina Sato. MICHAEL G .: Hi. Jina langu ni Michael, G. DOUG LLOYD: Sina. Hakuna Mimi nina Doug Lloyd. Siwezi kuamini kwamba mimi nina kufanya selfie fimbo hivi sasa. SPIKA 4: Hi. SPIKA 5: Hi. SPIKA 6: Hello. SPIKA 7: Hi. SPIKA 8: Hey. Sisi ni kunyongwa nje katika Yale. Sisi ni kweli msisimko kwa muhula huu kwa sababu ni mara ya kwanza ni kuja Yale. Ni kwenda kuwa kushangaza! [Music kucheza] JACOB SCHERBA: jina langu ni Jacob Scherba. Mimi nina msisimko kufundisha CS50 kwa sababu nadhani ni kuleta sayansi ya kompyuta kwa watu katika na njia ya kumkaribia. SPIKA 9: Mimi kwa kweli msisimko kufundisha CS50 kwa sababu mimi alichukua darasa mwaka jana, na ni moja ya madarasa bora. SPIKA 10: Yeah. Ushauri wangu ni unapaswa kuchukua CS50. JACOB SCHERBA: Nilichagua CS kwa sababu Nadhani ni furaha na ubunifu njia kutatua matatizo kwa njia za uchambuzi. SPIKA 11: Nyuma wakati mimi nilikuwa kidogo freshman na hofu ya sayansi ya kompyuta na hofu ya kufanya uhandisi na mambo, ilikuwa ni darasa la kwanza kwa bidii mimi alichukua, na pia ilikuwa darasa langu favorite milele. DOUG LLOYD: Hii ni yangu mwaka wa tisa mafundisho CS50. Hiyo inanifanya sauti hivyo zamani! Daima kuna kitu kipya. Daima kuna kitu kusisimua. Kuna daima changamoto mpya zinazowakabili wanafunzi wapya, na ni furaha ili kuwasaidia na kwa uzoefu wale changamoto pamoja nao na kuwasaidia kutatua matatizo yao. SPIKA 12: Wakati mimi kwanza kujifunza jinsi ya kufanya CS, ilikuwa ni kama kujifunza nguvu super. Na kuona kwamba katika wanafunzi wengine na kuwasaidia kupitia mchakato kwamba ni moja ya wengi mambo kuridhisha nimekuwa milele. SPIKA 7: Nilichagua CS kwa sababu katika mwanzo, nilikuwa math concentrator na mimi alichukua CS50 na akaanguka katika upendo na hayo. Mimi pia waliona kuwa na CS, mimi naweza kujenga mambo. Na kwamba, mimi mawazo, alikuwa kweli ya baridi kipengele. SPIKA 13: Baadhi ya ushauri kwa mwezi wanafunzi ni kwenda masaa ya ofisi na hutegemea nje na TFS kutisha. SPIKA 14: Anza yako P-seti mapema, kwenda masaa ya ofisi, kuwa frends na TF yako. SPIKA 15: Yeah. Kila kitu alisema. SPIKA 16: Je, si kuwa hofu ya kuomba msaada. SPIKA 17: Yeah. SPIKA 18: Anza yako P-seti mapema. SPIKA 19: Ni big uzoefu kijamii. Kufanya mengi ya marafiki kwa njia hii. SPIKA 14: Nenda kwenye sehemu Ni furaha. SPIKA 11: I mean, kwenda kwa hayo. Ni kweli ni vigumu. Itabidi kupata nje yake nini kuweka ndani yake, lakini ni kweli na furaha darasani hasa kama wewe ni tayari kuweka muda ndani yake, lakini inasaidia kama wewe kuweka muda ndani yake. Utasikia kupata mengi zaidi nje ya hiyo baadaye. MIKE: Mimi nina Mike. CAMILLE: Mimi nina Camille. Hanya: Mimi ni Hanya. MATT: Mimi nina Matt. PETER: Mimi ni Peter. PHILLIP: Mimi ni Phillip. PATRICK: Mimi ni Patrick. Rob BOWDEN: Mimi ni Rob Bowden. BRIAN SCASSELLATI: My jina ni Scas, na Haya ALL: --is CS50. SPIKA 20: Wakati Yale. SPIKA 21: Wakati Yale. [LAUGHING] DAVID Malan: Hiyo ni kwa CS50. Tutawapitisheni kutoka Yale juu ya Ijumaa, Puzzle Day siku ya Jumamosi. Keki ni sasa aliwahi. Hii ni CS50. [Music kucheza]