[MUZIEK - RANDY ROGERS BAND, "Tonight's  NIET DE NACHT (Goodbye) "] DAVID Malan: Hello world. Dit is CS50 Live and dit is onze seizoensfinale. Maar jongen hebben we een goede aflevering voor u vandaag, in het bijzonder, de laatste in beeldstabilisatie, robo voetbal, en uiteindelijk, een kijkje terug op CS50 Levende zelf. Nu kunt u zich herinneren dat bureaulampen hebben dit jaar een beetje een ding geweest. In feite was dit soort spontane inleiding tot CS50's week nul afgelopen najaar 2013. Gewoon een dag of zo voor de zeer eerste lezing afgelopen najaar, Ik besloot dat het wel leuk zou zijn kunnen binaire visualiseren - nullen en enen - en dus ik koerste Favoriete winkel CS50's, Target, en pakte deze bureaulampen hier. Nu, aan het einde van de lezing, Ik vond dat ik niet echt moeten deze lampen voor een ander jaar. En zelfs als ik het deed, het zou een oude bit soort in 2014, dus ik bood hen tot studenten in het publiek. Nu, sindsdien natuurlijk, we zijn ontvangen van een flink aantal e-mails, Facebook berichten en tweets verzoeken deze zelfde CS50 bureaulampen nationaal te sturen en internationaal. En dat deden we. En dat we terug waren deze zeer mooie nota van CS50-speler Luigi Morelli in Rome, Italië die ons dit schreef. "En hier ben ik! Dankzij CS50 personeel. He, kijk naar die vier boeken achter me. " In feite, als je kijkt daar op de bovenste plank, zal je vier boeken te zien. En als we verbeteren, zult u zien dat het een canonieke reeks van de informatica boeken door een zeer gerenommeerde computer wetenschapper bekend als Donald Knuth die schreef, De kunst van het programmeren. Dus als je jezelf op zoek waren om te bouwen uw eigen collectie van de informatica canon, ga je gang en neem een kijken naar The Art of Programming. Nu, ondertussen, als we een kijkje nemen op video's die een aantal van je klasgenoten hebben ingediend, zullen we zien de eerste van Rian uit India. Hi. Ik ben Rian [onverstaanbaar] uit India. En ik neem CS50 online [onverstaanbaar]. En de reden dat ik wil de lamp is in principe want ik heb geen lamp helemaal en ik heb echt een nodig als ik doe [onverstaanbaar] voor [onverstaanbaar] en al deze spullen. En ik heb geen bureau lamp of iets dergelijks. Dus het zou echt geweldig zijn als jullie mij zou sturen. Ik ben Rian [onverstaanbaar], en dit is CS50. DAVID MALAN: Nu, uw volgende klasgenoot, Mauricio, u zich wellicht herinnert uit een vorige video. Maar deze keer, Mauricio besloten om het op een inkeping en daadwerkelijk leveren zijn eigen lezing voor week nul. MAURICIO RADA: Dus dit is CS50. Mijn naam is Mauricio Rada, en 73% nog geen ervaring in de informatica, in tegenstelling tot wat je zou denken. Dus vandaag, we dachten dat we zouden chip weg bij dat gebrek aan vertrouwdheid, maar geven je ook een gevoel van, voor degenen onder u met meer comfort, wat richtingen die je kunt dit semester gaan. Dus laten we beginnen met deze. Ik heb deze kleine bureau lampen hier, dus - oh. We hebben geen bureaulamp hier. We kunnen niet doorgaan. Dus je zal moeten om dit lab hier eindigen. Dit is niet CS50. Bij de volgende CS50 - DAVID Malan: En tot slot, is Sid, ook uit India, die eigenlijk besloten om scheppen voor ons zijn eigen lied. SID: Hoi, ik ben Sid, en ik kom uit India. Ik wil een bureaulamp, omdat - Zal ik het zo zeggen. [Muziek] Het is wel grappig hoe het leven kan veranderen als je eenmaal CS50 in een kwestie van dagen. Dus ik ben het maken van deze video om jullie te laten zien waarom Ik verdien een gloednieuwe bureaulamp. Dus het gaat als volgt. Ik krijgen schreeuwde elke avond voor niet het uitschakelen van de lichten. SPEAKER 2: Doe het licht uit, man! SID: Gewoon een tweede. Of ik ben het schrijven van teksten of codering sommige [onverstaanbaar]. SPEAKER 2: Dude, ik ben het uitschakelen van de lichten. SID: Vijf minuten. Slechts vijf minuten. Een liefde voor CS50. Een liefde voor de bureaulampen. One love. Als ik niet krijgen, zal ik niet overleven. Dus geef me een bureaulamp. Duisternis maakt me in mijn broek. Geef me een bureaulamp. Bureaulamp is alles wat ik nodig heb. Ik hoop dat je het leuk vindt. DAVID Malan: Nu opdat ik beschaamd worden op het internet, het is CS50 dat is een inleiding tot de intellectuele bedrijven van computer wetenschap en de kunst van het programmeren. Maar Professor Donald Knuth boeken, als je zou willen naar Google en je vindt ze, zijn de Art of Computer Programming. Nu kunt u dat CS50 onlangs herinneren deel aan deze, een 48 uur durende film project waarin CS50 gehad slechts 48 uur te maken een korte film met een enkele vereiste elementen. Nu, een van de scènes uit die film was deze hier waarin Daven was wanhopig langs de Charles River vlakbij Harvard proberen om gewoon hallo te zeggen. Nu, wat u misschien niet hebben gerealiseerd dat is uitgevoerd voor beide waren eigenlijk drie jongens. In feite, hier afgebeeld is een aantal van CS50's team. En als we inzoomen, zie je Ian de camera, Patrick houden Ian, en Dan de leiding van de scène. Nu, in alle eerlijkheid, als we inzoomen uit, zie je eigen Ramon CS50's Galvan die net liep. Nu, wat Ian was houden met de camera was dit apparaat hier die iets presteert genaamd beeldstabilisatie die de technologie waarmee waren we houden dat schot langs de rivier dus relatief gestage ook al waren die jongens alle lopende achteruit. Nu, zou jij dit soort van technologie van weleer. In feite, als je bent opgegroeid de zogenaamde gyro kom, die een beetje leek zoiets als dit, dit is een heel eenvoudig apparaat dat draait hoofdzakelijk op drie assen zodat je wat ontbijtgranen binnenkant van deze schaal, in theorie, het mag nooit vallen uit omdat de handgrepen zal altijd houden de kom zelf rechtop. Nu, ik had onlangs een gelegenheid om tijd door te brengen met CS50 eigen Dan Coffey, die ging in meer technische details over de wijze waarop moderner beeldstabilisatie werkt. Dus ik ben hier met CS50's eigen Dan Coffey, joggen langs de Charles River op de campus van Harvard. Nu als Dan werden alleen met behulp van een camera om dit te schieten, het beeld vrij zou zijn wankel, zeker niet stabiel. Hij gebruikt een techniek genaamd afbeelding stabilisatie die moeten, hopelijk, stabiliseren de afbeelding. Kunnen we de rest van dit binnen schieten? OK. Beeldstabilisatie. Wat is het? Hoe werkt het? DAN COFFEY: Dus voor vele jaren, de TV en filmindustrie hebben geprobeerd om meer dynamiek te krijgen schoten door de invoering van de beweging, maar het is een uitdaging om houd ze gestabiliseerd. Je hebt gezien The West Wing misschien waar ze het lopen en praten schot? En eigenlijk wat ze gebruiken daarvoor is een stabiel nok, dat is een grote vrachtwagen die je draagt. Het is een vest met een arm die isolaten de camera van de gebruiker en de teller evenwicht met een aantal gewichten. Maar het duurt een echt lange tijd in te stellen en het is erg ingewikkeld daadwerkelijk te gebruiken. Er zijn nieuwe ontwikkelingen in de software die je kunt gebruiken waar je kunt maken aanpassingen in Mac of een pc waarop soms werken, soms ook niet. Maar een van de nieuwste ontwikkelingen is eigenlijk dit. Dit is de Movi M10. Het is echt een heel nuttig stuk gereedschap van onze vrienden bij Freefly Systems. En principe, gebruikt een reeks cardanusring assen om uw camera te stabiliseren. DAVID Malan: Wat is een cardanische? DAN COFFEY: Dus een gimbal is een set van ringen die elk draait om zijn eigen as en isoleert in principe elke richting, ofwel de x, y, of z. En eigenlijk maakt het alleen zeer soepel en vloeiend. Dus dit M10 is een grote cardanische en drie assen op het - men hier voor de kanteling, het heeft een op de de rug voor de rol, en een up top de pan. En ik kan je eigenlijk zien als je willen zien hoe deze eigenlijk werken. DAVID MALAN: Ja, zeker. DAN COFFEY: Dus als je kijk hier in de software, dit is hun Freefly Configurator. En het is eigenlijk het uitvoeren diagnostische informatie op dit moment. Maar je ziet hebben we motor tilt, motor roll, en de motor pan. En zoals ik eigenlijk pan de camera, je gaat aan de blauwe lijnen te zien gaan op en neer gaan. DAVID Malan: OK. Zodat vertegenwoordigt het - DAN COFFEY: Het is de weerstand van de motor terug te duwen tegen mij omdat de M10 altijd wil om terug te komen te rusten in dezelfde positie. DAVID Malan: OK. Dus groter, hoe lager de balk, des te meer weerstand. DAN COFFEY: Ja, hoe meer intensiteit dat de motor met behulp van met mij vechten. Als ik kantelen, zie je de rode lijn hetzelfde te doen. En dan rollen - DAVID Malan: De groene lijn op en neer. DAN COFFEY: Dus dit zijn de drie assen we stabiliseren tegen. En dus dit is niet normaal hoe zou je het nog, toch? Dus als ik eigenlijk halen deze omhoog - en hier, waarom ga je eigenlijk niet op te hangen aan het. DAVID MALAN: Ja, zeker. Dank u. DAN COFFEY: En nu kun je zien hoe weinig de camera beweegt wanneer u de rand raken. Het venster, als je wil, het begint te schuiven met je. Dat is eigenlijk in de software ook. DAVID Malan: Ik zie. DAN COFFEY: Maar er is ander echt leuk detail. Als je in een meer gecompliceerde schieten, kunt u op deze afstandsbediening, hebben een tweede camera operator eigenlijk doen de Nitty Gritty controle. Dus ik kan nu verschuiven, flex deze controle. Ik kan kantelen en ik kan eigenlijk rollen. Dus in deze set-up, zou je eigenlijk worden de ene de camera zich fysiek verplaatsen en ik zou een verbinding draadloze video zender naar de camera, zet een ontvanger hier op een monitor, en dan kon ik eigenlijk, net als een videospelletje, bedienen de camera voor u. DAVID Malan: Nice. DAN COFFEY: Dus ik zet het terug in enkele operator-modus, maar je kunt een gevoel van te krijgen hoe glad het eigenlijk is. DAVID MALAN: Ja, nee, absoluut. En ik heb een idee. Wil je mij volgen? DAN COFFEY: Zeker. DAVID Malan: OK. Dus we zijn hier in de badkamer om te testen een aantal feitelijke beeldstabilisatie voor, nou ja, de enige spiegel hebben we. En ik dacht dat het zou interessant zijn zien hoeveel de camera beweegt wanneer Ik heb eigenlijk bewegen mijn armen omhoog, omlaag, links en rechts. DAN COFFEY: Dus laten we zie de pan, tilt, roll. DAVID Malan: Oke. Hier gaan we. Ik ben echt bewegen. DAN COFFEY: Dus ik zie een kleine beetje beweging, maar ik bedoel, zou je nooit te werken, dat wil ook niet. DAVID MALAN: Nee, zeker niet. DAN COFFEY: Oke. Dus David, even serieus deze keer. We zullen een test waarbij je doet eigenlijk ga de trap en ik zal je leiden met de gestabiliseerde movi, en Andrew ook daadwerkelijk kom naast me. Come on over Andrew. En we zullen zien wat het lijkt side-by-side. DAVID Malan: Hebbes. DAN COFFEY: OK. Hier gaan we. Klaar om de trap op drie, twee, een, ga. Hi Shelley. Oke, David, waarom doe je dit niet doen? Neem alles wat je hebt geleerd vandaag en zet het samen en we zullen de laatste schot te krijgen. DAVID Malan: Oke. Hier gaan we. DAN COFFEY: En nu, 60 seconden van gimbals. SPEAKER 3: Uh-oh. Kijk uit! Laten we eerlijk zijn. Kinderen morsen stuff. Maar nu, de ouders kunnen tot rust komen wanneer kinderen snack. De invoering van de GyroBowl, 's werelds eerste ooit snack kom die draait en spins en spullen blijft binnen De GyroBowl is 100% totaal, absoluut, kid-proof! Vul de GyroBowl en je bent klaar om te gaan. SPEAKER 4: De magie zit in het midden. De GyroBowl werkt net als een kom. SPEAKER 3: GyroBowl innerlijke kom draait 360 graden en magisch blijft open kant naar boven, wat er ook gebeurt! Dus de GyroBowl houdt al uw snacks binnen, maar je stuiteren, swing, of vliegen! Nu kunnen kinderen gebruik maken van de geweldige GyroBowl als een super snack ding. Vul het met rozijnen of ontbijtgranen en rev up van de actie! SPEAKER 5: Kids houdt van de verbazingwekkende GyroBowl omdat het leuk is en het morsen nooit! SPEAKER 3: pak crackers en druiven en gaan met de jacht! En als mama drives naar de winkel, GyroBowl houdt de snacks van de vloer. DAVID MALAN: Nu, u kan herinneren, heb ik onlangs bracht tijd door met zijn CS50 eigen Colton Ogden. En deze man hier, de NAO robot die werd uitgeleend aan ons door CS50's vriend Professor Radhika Nagpal in de groep robotica. Nu, natuurlijk, robots niet allemaal dit formulier. Sterker nog, onlangs zagen we deze man hier voetballen met president Barack Obama. Maar het blijkt dat zelfs voetballende robots kunnen komen in verschillende vormen. In feite, hier afgebeeld zijn twee op maat gemaakte robots door professor Radhika Nagpal onderzoek groep, met wie wij onlangs ging zitten om beter te begrijpen hoe zij en kunt u uw eigen voetballende bouwen robots en pit ze in concurrentie tegen elkaar in een internationale RoboCup competitie. Radhika nagpal: Mijn naam Radhika Nagpal. Ik ben een professor aan de Harvard University. En ik doe bio-geïnspireerde robotica. Dus ik ben echt geïnteresseerd in hoe groepen samen kunnen werken echt goed. ERIC SCHLUNTZ: Dus mijn naam is Eric Schluntz. Ik studeer elektrische engineering aan de Universiteit van Harvard, KATE DONAHUE: Ik ben Kate Donahue. Ik ben een tweedejaars aan Harvard College en concentreren in wiskunde en natuurkunde. Dus ik ben onderdeel van RFC Cambridge. Het is een gezamenlijke Harvard / MIT-team. We hebben eigenlijk bouwen robots die voetballen. Radhika nagpal: Dus de uitdaging van de RoboCup competitie - en het is een internationale wedstrijd die werd gestart door mensen in de VS en Japan eigenlijk - is om een ​​team te creëren van robots die kunnen spelen en eventueel winnen tegen de wereld kampioenen op het WK. KATE DONAHUE: Er zijn teams van over de hele wereld. En omdat we zo ver verspreid uit, het is echt moeilijk voor ons krijgen om de robots te testen tegen elkaar. Dus het is eigenlijk gewoon een soort van als een voetbalwedstrijd. Er zal enige round robin zijn games en dan een finale wedstrijd. En het is een kans om te zien hoe onze robots stapelen tegen anderen en gewoon ideeën uit te wisselen. Radhika nagpal: Als u denkt over kleine kinderen voetballen en ouder mensen voetballen en denken over het verschil, net als alle dingen die een klein kind kan niet dat een oudere persoon kan doen, informatica heeft dat hele gat te vullen. ERIC SCHLUNTZ: Dus u kon zeggen, ik wil de robot te gaan achter de bal op te zetten voor een schot. Maar wat je echt om de computer te vertellen te doen is het vinden van de vector tussen de bal en het doel en gaan er, minus franchise. En je moet echt de computer science mensen om jezelf te uiten op een manier dat de robots kunnen begrijpen. KATE DONAHUE: We werken allemaal op zeer verschillende delen van de robot, maar we echt nodig om te coördineren. Het is een grote uitdaging en het is geweldig als we allemaal werken aan iets samen. Dus we bouwen de mechanische deel van het, en vervolgens de elektrotechnici zal de printplaten te maken, en de informatica mensen zullen hun simulaties gedaan hebben en dan proberen erachter te komen hoe kunnen ze dat combineren en maken de robot deze zelfs. Radhika nagpal: Ik denk echt robotica gaat vaak over iteratie. Je doet een stap naar voren. Je neemt twee stappen terug. Je probeert een ding beter te maken. Het maakt iets anders erger. ERIC SCHLUNTZ: Op de computer science team, hebben we veel vooruitgang geboekt op onze kunstmatige intelligentie. We gooiden alles uit de oude strategie code en hebben het maken van iets dat veel meer aanpassen aan hoe het andere team speelt. Dus aan defensie, we dingen als doen rangschikking van de meest gevaarlijke spelers en ze te bedekken in een man aan de mens verweer op basis van dat. En dan is onze overtreding, genereren we deze kaarten over het hele gebied van hoe goed de plek is en vervolgens toewijzen onze robots deze dynamisch. Radhika nagpal: Ze moeten kunnen zien. Ze moeten in staat zijn om begrijpen van de wereld. Ze moeten in staat zijn om te bewegen snel en draaien en manipuleren. Ze moeten in staat zijn om merken dat hun teamgenoten en te begrijpen wat ze doen. Ze moeten een strategie hebben. En ze moeten passen hun strategie, omdat hun tegenstander zal dingen te doen de hele tijd. En dus kun je niet hebben een vooraf bepaald plan. Je moet in staat zijn zich aan te passen. KATE DONAHUE: Sinds competitie van vorig jaar, we hebben veel van voorschotten gedaan, vooral in het wiel ontwerp. We hebben de motoren verschoven naar beneden en maakte alles veel compacter, die toegestaan wij onze zwaartepunt verplaatsen naar beneden, waardoor we sneller gaan en ook zet in een dribbelaar, dat is iets we wilden voor een lange tijd maar gewoon nog niet in staat geweest om fit te maken tot nu toe. ERIC SCHLUNTZ: Dus elke van de printplaten op de robot heeft een ander doel. De vier groten, daar, daar, en er, elk controle een van de motoren. Dus dat duurt in principe een signaal van de computer, bepaalt hoe snel het wiel moeten draaien, en stuurt de juiste spanning de wielen om dat te doen. Dus als deze raad hier stuurt deze motor en deze Hier controleert deze motor. We hebben ook deze twee planken in het midden. Deze hier regelt het opladen deze grote condensatoren voor de kicker. Dit bord hier regelt wanneer de robot kicks met deze lichtsensor recht hier om te zien wanneer de bal is aan de voorkant ervan. Het controleert ook de dribbelaar hier die we gebruiken om backspin op de bal zetten dus we kunnen achteruit verplaatst. KATE DONAHUE: Het is niet gewoon je probeert te winnen. Het is dat je probeert om kennis te vergroten. En zo werk je aan welke werk je aan en dan moet je een paper te zeggen vrijgeven precies wat je deed, dat is zo cool, en hoe andere mensen dat kunnen doen en ze kunnen bouwen op uw werk. En dus als er iets zo gevorderd dat iemand komt met, iedereen kan soort putten uit die. U kunt dat hebben voor een jaar en misschien niemand anders kan het voor dat jaar. Maar dan het volgende jaar, iedereen zal het hebben aangepast en hebben hetzelfde gedaan. Dus het is eigenlijk gewoon vooruit rijden en niet blijven op dezelfde plaats. ERIC SCHLUNTZ: Ik wil zeker werken aan robotica in mijn carrière. Ik denk dat er gewoon een heleboel geweldige dingen dat kan automatiseren dingen, om auto's veiliger te maken, gewoon echt alles te laten werken automatisch, zodat mensen niet hoeven om dingen die gevaarlijk of saai zijn doen. Er is gewoon zoveel dingen die robots kunnen beter dan mensen. En ik denk dat we als maatschappij nodig om te beginnen met het doen van die mensen te bevrijden up naar meer interessante dingen te doen. DAVID Malan: Dit is inderdaad ons seizoen finale en onze 10e van 10 afleveringen. En het is echt opmerkelijk hoe in slechts 10 afleveringen hoeveel fouten die we hebben gemaakt. In feite, CS50 eigen Shelley Westover - wie u zich wellicht herinnert van dergelijke films als - onlangs ging door uren beeldmateriaal van zowel live-afleveringen en repetities daarvan te vinden een aantal van onze favoriete herinneringen om ze te delen met u. Hello world. Dit is CS50 Live. Dus als je me zien struikelen, als je ziet me misspeak, als je me verpest, dat alles is letterlijk gebeurt nu in Cambridge, Massachusetts. Oh, hallo wereld. Tromgeroffel. Persp - uh, persec - de video te pauzeren als je zou willen. [Onverstaanbaar]. [STOTTEREN] Is Mark Zunkerburn favoriete pa - om onze nucleaire raketten te beschermen. Een oogje zoals gewoonlijk. Bugle zelf. Gaggles. Goed episude voor u. Het is eigenlijk heel - Ah, het eindigt. U herinnert zich misschien. Ga hier op deze UR. SPEAKER 6: Dit is CS50. Ah. DAVID Malan: En nu ik maakte de blooper reel. Fantastisch. SPEAKER 7: Moeten we opnieuw het einde? Hoe moeten we doen het einde? DAVID Malan: Foto's van Jason Hirschhorn gekleed als een punmpkin. SPEAKER 8: Oh, jongen. Ik weet niet of ik wil mensen om te zien dat. DAVID Malan: Nee. Nu is het foto's van Jason Hirsch verkleed als jongen. SPEAKER 9: En als je geïnteresseerd bent, Ik kan je eigenlijk zien hoe - DAVID MALAN: Ja, absoluut. SPEAKER 9: Hij is een beetje off-balance vanochtend. Hij heeft nog niet zijn koffie had. SPEAKER 10: Whoa! Oh god. DAVID Malan: Van - waar komt hij vandaan? SPEAKER 11: Recht over - precies daar waar mijn arm is, je kunt zien als de witte tekens. Er is de paal. DAVID Malan: Ze weten niet dat is het - je moet hier wijzen. SPEAKER 11: Oh. DAVID Malan: Kun je me horen, wereld? RAMON GALVAN: Hello world. Welkom bij CS50 Live. Ik ben Ramon Galvan. DAVID Malan: En - en ik ben David Malan. RAMON GALVAN: En vandaag, Ik hosting de aflevering van vandaag. DAVID MALAN: Nou, met mij. RAMON GALVAN: OK. OK. Oh, [BLEEP] SPEAKER 12: Zeg niet [BLEEP] op de lucht! RAMON GALVAN: Oh, [BLEEP] Hij zal zijn de Robin om mijn Batman, de Andy Richter aan mijn Conan, de Cheech mijn Chong vandaag. Dit is zeker een serieuze Wat we vandaag doen. Dit is geen grap. Dropbox heeft nogal een gedoe de laatste tijd want ik weet niets van. Waar gaat dit over? Dat was alles boven me. En dit is iets wat ik niet weet. We een rondleiding nemen ook derde glas - derde deg - DAVID Malan: Precies daar. Het staat u toe om krediet te vegen kaarten op je iPhone in orde om betalingen te verwerken. RAMON GALVAN: Ik heb een flip-telefoon. Laten we spelen de clip. Een, twee - DAVID Malan: Dat was de eerste ooit. RAMON GALVAN: Wat? DAVID Malan: Dat was de eerste ooit. RAMON GALVAN: OK. Ooit gastheer van de eerste - DAVID Malan: Ik was in graduate school op het moment. RAMON GALVAN: En ik was in de vierde klas. Hoewel ik hou Zamyla, I zou veel liever niet uitgeven - DAVID Malan: Breng de helft zo veel tijd met haar. RAMON GALVAN: Precies. DAVID Malan: Kom naar buiten, Zamyla! Dit was CS50, en deze angstaanjagende was. RAMON GALVAN: Dit is angstaanjagend. Maakte een beetje sissen roll te kapselen de losbandigheid die plaatsvonden. DAVID Malan: Ik hou van je. Aww. RAMON GALVAN: Ik hou van je. In tegenstelling tot David, die je omcirkelt. DAVID Malan: Waar zijn mijn dia's? Oh. Dat is het voor CS50 Live. Heel erg bedankt voor deze Medewerkers week, om alle achter camera, en dank u voor u voor het afstemmen op deze hele seizoen. Dit was CS50. [MUZIEK - Semisonic, "SLUTINGSTIJD"]