[Música tocando] COLUNA 1: É CS50, Universidade de Harvard. [Música tocando] DAVID J. MALAN: [inaudível] é provavelmente na segunda metade do livro de telefone, Agora eu posso rasgar o problema pela metade. Isso foi realmente real, essa luta. [Música tocando] COLUNA 2: Vocês humanos são tão fáceis de bater. DAVID J. MALAN: Tudo bem, isso é CS50. Este é o início e o final de semana 12. E você pode recordar que na semana zero, este é a mensagem com a qual começamos, que não importa onde você termina -se em relação a seus colegas de classe, mas onde você hoje, e talvez apenas algumas semanas a partir de agora, final -se em relação a si mesmo algumas semanas atrás. E, na verdade, nós esperamos que depois de tanto muitos conjuntos de problemas, e assim por muitas horas, e um par de quizzes, e ainda com o projeto final, que você sente particularmente orgulhoso tendo vindo todo o caminho de semana uma onde esta foi, talvez, a primeira das lutas, se na edição padrão ou a edição de hackers destes. E eu gostaria de propor, que em algum momento em seu tempo livre, que você vai para trás e ver o seu PHP, seu JavaScript, e veja se você não pode implementar essa medida, muito mais rapidez e conforto do que você era uma vez fez atrás. De fato, depois disso, lembro que você fez criptografia, você fez o jogo de 15, você fez forenses desafios, você fez o feitiço mais rápido verificador que você poderia, você fez CS50 finanças, o CS50 mash-up, e, em seguida, agora, em última análise, seu próprio projeto final. E assim, hoje, nós tentar obter o fechamento, e olhar para onde nós viemos, e para onde estamos indo. E só para tranquilizar também, que uma vez todas as rodinhas restantes sair, você praticamente tem muitas ferramentas suficientemente em seu kit de ferramentas para Agora, sair e fazer mais qualquer coisa no mundo da programação. Certamente a considerar tomar algumas maior curso de nível pode ser de vantagem. Mas percebo também que, mesmo que este seja o último curso CS que você toma, perceber que no Mac OS, não há tantas ferramentas diferentes que você pode usar independente de ter usar algo como o IDE CS50. Quase não existem as mesmas ferramentas para Windows para o Linux, e muito mais. E, de fato, um dos objetivos CS50 em usando esta mangueira de incêndio de línguas, C, e PHP, e Sequel, e JavaScript e HTML e CSS, é para realmente ter certeza de que você não sair este curso pensando, eu aprendi c, mas sim que você aprendeu a programar, e que você entenda um pouco algo sobre ciência da computação si. Na verdade, mesmo que nós não olhei Em todos os seguintes idiomas, é divertido agora a entrar nesta comunidade de pessoas que acham humor geeky engraçado. E mesmo que algumas das idiomas que você está prestes a ver pode não ser totalmente familiar, você vai, pelo menos, obter algumas risadas de, pelo menos, uma linguagem familiar, JavaScript. Esta foi uma palestra de um particular programador bem versado há algum tempo atrás direito, Wat. E nós pensamos que seria dar-lhe uma vislumbre de como os cientistas da computação tendem para pensar, ou pelo menos falar. GARY BERNHARDT: Todos bom direito. Vocês sabem o que significa wat? Wat. Exatamente, exatamente. Vamos falar sobre Ruby. Em Ruby, se você faz referência um variável indefinida, é claro ele NameErrors, como seria de esperar. E se você tentar atribuir a uma b com eles indefinido, é claro ele NameErrors, como você esperaria. E o que acontece se você tentar atribuir um a um, com um indefinido? AUDIÊNCIA: Nil. GARY BERNHARDT: Correto, nil. Wat. [RISO] Vamos falar sobre Ruby. Ruby, ao contrário de alguns outros dinâmico línguas, não tem palavras nuas. Então você não pode simplesmente digitar palavras, e ter cordas sair a menos que você definir um method_missing especial que faz a coisa certa. E então, se você digitar palavras nuas, de repente, Ruby suporta palavras nuas. E, de fato, ele mesmo irá apoiar palavras nuas com franja neles. E isso não é merecedor de wat. Esta é realmente uma consequência de como impressionante Ruby é. Mas se você nunca realmente fazer isso, então, wat. [RISO] Vamos falar sobre JavaScript. Alguém sabe, em JavaScript, o que matriz mais matriz é? Bem, deixe-me perguntar-lhe isto em primeiro lugar, o que deve ser matriz mais variedade? AUDIÊNCIA: array vazio. GARY BERNHARDT: array vazio, eu também aceitar tipo de erro. Isso não é o que matriz mais matriz é. Errado, errado, matriz mais matriz é uma string vazia. [RISO] Obviamente, eu acho que é óbvio para todos. Agora, o que seria matriz mais ser objeto? Esta deve, obviamente, ser do tipo erro, porque esses são completamente tipos distintos. Alguém sabe o que é isso? AUDIÊNCIA: False. GARY BERNHARDT: Não, perto, não, longe. AUDIÊNCIA: É objeto. GARY BERNHARDT: É de objeto. Sim, certo, bem feito. Agora, é claro, é porque este Além disso, você pode inverter os operandos ea mesma coisa sai. Então, se nós fazer-- o quê? Não, isso é só um objeto. Se você fizer objeto de matriz mais você deve ter exatamente a mesma coisa. Que, como você pode ver, você faz. [RISO] E, finalmente, o único dos estes que é realmente verdade é-- porque você adicionar matrizes e você começa string vazia, não faz sentido. Mas um objeto além de um objeto é na verdade, não é um número, tecnicamente. [RISO] Então este é realmente certo. Exatamente, direita, como o que é ainda acontecendo neste lang-- eu só, Eu nem sequer entender o que pessoa com um cérebro em sua cabeça poderia pensar que qualquer isso é uma boa idéia. [RISO] OK, OK, o suficiente tomada de diversão de línguas que sugam. Vamos falar sobre JavaScript. [RISO] Se eu disser matriz dot novo 16, ou apenas a matriz (16), Eu obter uma matriz de 16 coisas, que ela representa 16 como vírgulas, o que é óbvio. Se eu, em seguida, juntar-se aqueles com uma corda, então eu começo a seqüência de 16 vezes. Esta é realmente a única linha neste apresentação inteira que é razoável. Agora, se eu tomar essa seqüência e, em seguida, adicionar um 1 a ela, que interpreta a 1 as-- lança a 1 para uma cadeia, e então nós começamos a wat1 monte de vezes, tudo bem. Alguém sabe o que vai acontecer se eu subtrair 1 a partir da cadeia? [RISO] Eu estou supondo que ninguém faz. Vamos me-- eu vou te dar uma dica. Será que isso ajuda? Alguém sabe? [RISO] Watman. [RISO] Isso é tudo que eu tenho. Obrigado, gente. [Aplausos] DAVID J. MALAN: Vamos dar uma olhada rápida em algumas das coisas pela frente para você. Assim, o CS50 é Hackathon este épico todo-noite, durante o qual você e seus colegas de classe de Yale, irá mergulhar into-- mas espero que não begin-- seu projeto final. A noite terá início às 19:00. Primeiro jantar será mais ou menos às 9:00. Segundo o jantar será às 01:00. E, em seguida, para aqueles ainda de pé, café da manhã será servido no IHOP em torno de 05:00. Você pode ver cenas como esta. Como prometido, na semana zerar este ano, vamos tem não só comida e jantar, e doces, mas também para a segunda vez na história, legumes. Mas cerca de 3 ou 4 horas da manhã, cenas como este não é de todo incomum. De fato, vemos o nosso quinhão de travesseiros sendo trazido para o Hackathon, que é bom também. E então o clímax do curso é o chamado fair CS50. Há um tanto aqui, e em New Haven uma semana depois. A um em Harvard é Segunda-feira 7 de dezembro, durante a tarde no noroeste da Ciência. E na chegada, você check-in. E você vai ver essas coisas como pipoca e balões, e, em última análise, a partir do último ano, mais de 2000 pessoas vindas para ver o seu projecto final, alunos, funcionários e professores do outro lado do campus e até mesmo fora do campus. E se não fosse incentivo suficiente para vir vê-lo a si mesmo, perceber que o seu amigos podem ser encorajados para vir para ver Asana, e eBay, e Facebook e Google, e Microsoft, e Palantír, e Quora, e outros, recrutadores e ex-alunos a partir destes para várias empresas falar sobre a vida no mundo real, oportunidades tanto tempo integral e Verão na indústria real. E se isso não foram raciocinar o suficiente para vir vê-lo, seus amigos podem ser encorajados a entrar no sorteio em que, no momento da chegada, você como os alunos irão cada ser entregue um monte de cara do smiley adesivos. E os participantes, como os seus amigos, serão tratadas um pequeno cartão sorteio à chegada. E para cada pessoa que bate-papo, eles serão entregou, por você, um cara etiqueta smiley. Cada um dos quais representa uma entrada em uma rifa com prémios fabulosos, entre eles um Xbox, um Wii, e uma todo monte de outras coisas divertidas, alguns dos quais já vimos aqui na sala de aula. Portanto, fique atento para isso. Mas, em última análise, é inteiramente sobre as realizações neste semestre, ea expressões, e emoção que você vai agitar em os presentes. Onde, em última análise, são vestindo seu muito own-- isso, Tomei CS50 camisetas como que aqui. Portanto, incentivar o seu amigos para ir a este URL aqui, que irá enviar-lhe a todos os detalhes para os mesmos. Enquanto isso, se você está pensando em outra olhar para a ciência da computação na Primavera deste ano, ou além, perceber que este é o mesmo handout-- embora atualizado desde semana zero-- que nós entregues. E se você vai para o meio desta booklet-- há cópias no transepto outside-- perceber isso você mostra via setas exatamente o que cursos que você pode ir off para explorar esta primavera, próximo queda, verão, e além. Então faça dar uma olhada no gráfico nele para ter uma noção das coisas. E se você gostaria de obter envolvido em outras funções, sei, se você não já, que o Colégio Board-- que você pode ter alguns não memórias gostam tanto de-- tem, no entanto, apenas a criação de um novo estrutura curricular chamado Computer AP Princípios de ciência. Algo que você pode ter tomadas, ou pelo menos ouviu falar, um curso de CS existente em escolas secundárias chamados APCSA, que é uma forma justa classe mundana que se concentra de forma demasiada sobre a linguagem Java e a mecânica dos mesmos. Princípios APCs, enquanto isso, ser mais sobre idéias, e mais sobre a resolução de problemas. E para este fim, nós, um bando de nossos amigos da UC Berkeley, na co.org, e algumas outras entidades ao redor do mundo estão a criar currículos que irá satisfazer princípios APCs. O que significa dizer que CS50 AP ser um equivalente AP que estudantes em várias escolas de ensino médio em todo o mundo pode tomar a partir deste próximo outono 2016. E se você gostaria de se envolver no ensino secundário, e envolvidos neste outreach, não chegar até nós lá, se você é um TF, um CA, ou simplesmente interessados ​​em educação em geral. E, de fato, se você gostaria para se juntar a própria equipe do CS50, perceber que, tão logo prazo termina, nós vamos começar a recrutar de Ensino Fellows, assistentes do curso, assim como os muitos que artistas fazer este curso possível Por trás das cenas, criando seus ativos on-line, a sua em pessoa oportunidades, e muito mais. Assim, se qualquer uma dessas funções aqui apelar, deixe-nos saber neste URL aqui. Agora a pouco, vamos recorrer, assim como fizemos na semana zero, um pedaço de bolo. Desta vez vai ser no térreo no pub. Assim cabeça lá mais tarde. Mas eu queria apenas ter um momento a reconhecer realmente o que este bolo aqui representa, ou talvez mais canonicamente, o que esta aqui face-off representa. Foi realmente uma honra, honestidade, com a parceria com os nossos amigos abaixo da estrada em Nova Haven neste semestre. É certamente sido um estranho coisa, uma coisa incomum, ouso dizer que um número sem precedentes coisa para dois colégios estar vindo junto, oferecendo um curso no mesmo, em dois campi e trazendo diferentes estes dois órgãos estudantis junto. Mas tem sido tal honra trabalhar com Andi, com Scass, e com Jason em New Haven, ea totalidade dos nossos 44 funcionários pessoa de assistentes de ensino, e Assistentes de curso em New Haven, que, pela primeira vez, em A história de Yale, eram em sua maioria si alunos de graduação. Na verdade, até este ano, queda 2015, Yale não fez, na verdade, têm uma tradição ou um subsídio para alunos de graduação seções principais e servindo como companheiros de ensino muito como temos desfrutado aqui dentro ciência da computação em Harvard por algum tempo. E assim que sozinho tem sido um oportunidade extraordinária para nós a parceria com eles em que a iniciativa, e trazê- para o rebanho líderes como Andi e outros professores lá no campus. E permita-me chamar a atenção também, para este homem no meio. Mesmo que ele agora vive em Nova Haven-- em grande parte porque o enviou há-- tudo isso é o resultado de Jason Hirschhorn ter sido Ensino Fellow para CS50 para bastante alguns anos aqui, formou no ano passado, Kirkland House. E eu acho que ultimately-- recebi um telefonema de mim em um ponto que muito muito reduzida para, hey, você se importaria de se mudar para New Haven após a graduação? Isso tudo foi porque estávamos tentando levantar-se a esta iniciativa, e nós queremos ter certeza de que há Era do conhecimento institucional para baixo lá em New Haven porque estávamos construir algo a partir do zero. E se-- Jason, se você pudesse talvez apenas venha se desajeitadamente em direção palco, para que possamos, pelo menos, ver tudo Jason Hirschhorn em pessoa. [Aplausos] Certamente, sem Jason, Yale 50 não teria sido possível. Assim, nossos agradecimentos a Jason Hirschhorn. E também, temos uma enorme equipe que nós não vai chamar a atenção pessoal para todos aqui, mas mais de 100 pessoas aqui em New Haven que fazer este curso possível. E você pode apenas ver seu próprio Ensino Fellow nesta lista, se aqui ou um New Haven. E assim se pudéssemos, um enorme salva de palmas para a totalidade do pessoal docente. [Aplausos] E deixe-me desenhar alguns especiais a atenção para algumas das pessoas aqui, especialmente Hannah, e Maria, e Daven, e Rob, que, como os cursos de cabeça, fazer tudo correr aqui em Cambridge. Claro, Colton Ogden, que começa mais de nossas palestras ali na música. Doug Lloyd, who-- este é CS50 AP, que estava liderando a nossa iniciativa AP. Dan Armendariz, sem os quais não teria um IDE CS50 este ano. Aliess, que faz tudo possível nos bastidores, incluindo a execução do luzes como retratado aqui. E, em seguida, por último, mas não menos importante, Equipe de produção do CS50. Basta dizer, é Equipe de produção do CS50 que capacita muitos de nós para dormir na parte da tarde, e se envolver com o curso de Material realmente de forma assíncrona. E isso é muito mais um dos as metas de design do curso. Como você sabe, nós desfrutar é-- agora uma oportunidade para permitir a inscrição simultânea. Nós temos uma oportunidade para estudantes, certamente, para assistir a esses cursos- materiais on-line, mesmo em tempo real ao vivo agora. E isso é totalmente por causa de a equipe de produção que você vê, ou até mesmo não ver ao redor você, e atrás de você aqui. Por exemplo, este foi algumas cenas baleado por Jordan no ano passado, apenas para falar com o tipo de arte o que se passa nos bastidores. Isto, naturalmente, é foho no Quad. E só para lhe dar um olhar para trás na semana zero, este foi o imaginário com que começou na primeira semana. [Música tocando] Essa foi a partir da própria Jordan do CS50. E também nos bastidores aqui hoje é Ramon, e Ian, e Scully, e Dan Coffey. Dan Coffey, que dirige Equipe de produção de CD50. E, na verdade sobre o passado vários anos-- este é meu nono ano envolvido com o course-- realmente tem Dan Coffey, com a produção equipe, tomada CS50 para outro nível. Não só disparar o Claro que agora em 4K, por assim dizer, no próximo ano vamos também ser capaz de derrubá-la em 6K. Bem como na realidade virtual, em parte porque é cool-- em parte porque é legal, mas também como você sabe, temos uma comunidade on-line muito considerável. Pessoas que, por várias razões, não podia viajar, ou não puderam comparecer um lugar como Harvard e Yale. E um dos objetivos é pedagogicamente para experimentar novas formas de tecnologia para que possamos, através de proxy, e através de você tudo, dar aos alunos on-line em todo o mundo uma oportunidade para ver, e sentir, e ouvir o que um lugar como Harvard ou Yale sente. Assim, em breve, no outono de 2016. E agora, para levá-lo abaixo de um entalhe, isso está prestes a ser horrível. Mas você deve se lembrar que a maioria dos vídeos de palestras deste ano, ou todos os outros, termina com uma espécie de aparentemente estranho clipe de Seinfeld, inspirado por algum episódio real re-implementado pela produção do CS50 equipe, que foram incrivelmente gracioso e criativo. E eu pensei que eu vou lhe mostrar um dos as inspirações, um segundo grampo 30, a partir de um real show de Seinfeld que inspirou um deste semester's-- Estou told-- clipe favorito. Então, primeiro, um clipe real de Seinfeld. ELAINE: C'mon que está dançando? Quer que eu a-- quer que eu começar com isso? Vou começar com isso. Tudo bem, woo! [Música tocando] [RISO] Woo! Vamos lá pessoal, qual é a espera? GEORGE: extravagante doce Moisés. [RISO] DAVID J. MALAN: Então, muitas vezes, falar sobre empurrando estudantes além de suas próprias zonas de conforto. Eu, agora, vou para rastrear -se em uma bola e soluço como nós jogamos para você esta re-implementação do presente, graças à equipe de produção do CS50. [SEINFELD música tema] Tudo bem, quem está dançando? Vamos lá, que está dançando? Você quer que eu começar com isso? Vou começar com isso. Woo! [Música tocando] DOUG LLOYD: extravagante doce Moisés. [Aplausos] DAVID J. MALAN: E agora alguns coisas especiais para uma aluna que agora está fazendo seu doutorado apenas a estrada aqui em Harvard. E quem poderia ser muitas vezes visto nesta forma no horário de expediente, tanto em Cambridge, e em New Haven. Na verdade, se nós enhance-- uma grande rodada de palmas para do CS50 próprio, Zamyla. E agora, uma palavra de equipe CS50 em ambos os locais que faria gostaria de oferecer alguns de despedida palavras de seu próprio. ANNALEAH ERNST: Não há nenhum outro curso em que todos os que trabalham para o curso é tão animado para estar lá, e ser envolvido nela, como CS50. Eu não sei, é como se isso realmente responsabilidade importante e especial, e tipo de uma experiência incrível. E eu estou muito feliz por eu chegar a ser uma parte da educação das pessoas. COLUNA 3: CS50, na minha opinião, é incrível. Eu amo isso. Eu adorava quando eu estava tendo uma aula. E eu amo-o ainda mais como um TA. JORDAN HAYASHI: CFing é um monte de trabalhar, mas é muito gratificante porque você começa a ensinar tanto. Você realmente começa a conhecer seus alunos. Você começa a conhecer o material você mesmo. E você começa a vê-los apenas tornar-se cientistas da computação. COLUNA 4: Meus alunos são o destaque da minha semestre. [Música tocando] DAVID J. MALAN: E este é CS50. DAVID McPeek: Eu apenas nunca me senti tanto como um líder no campus, como eu tenho neste semestre. SAM LEVATICH: Este é um dos únicas oportunidades no campus de Yale Para começar realmente investido no ensino. COLUNA 5: É muito legal CS50 ver a partir do outro lado. NICK JOSÉ: Fiquei surpreso com como todos os alunos foram animado. ARIANNA Benson: É também bom quando as pessoas recuperar uma imagem de Rick Astley, e são como, quem é esse? DAVID ARMENTA: Eu queria dar- de volta porque eu tenho um monte de apoio quando eu era um estudante. MARY FARNER: Tudo que você precisa é de entusiasmo e um amor de ensino, ou CS, ou qualquer um dos acima, e você vai ser capaz de fazê-lo. SAM LEVATICH: All my alunos me manter Rickrolling. [Música tocando] ANNALEAH ERNST: Tem sido muito divertida de ensinar sobre essa coisa que eu realmente amo, e acho que é muito divertido, e tentar outras pessoas animado sobre isso também. Estou Annaleah Ernst, e este é CS50. [CHEERING] [Música tocando] DAVID J. MALAN: E agora, você pode recordar que começou este semestre falando em última análise, sobre o pensamento computacional na resolução de problemas independentes de linguagens de programação reais. E nós pensamos ver apenas até que ponto este se afundou em uma tentativa por exercício não fizemos na semana zero, mas nós pensamos tentar algumas vezes aqui na semana 12, para os quais Preciso de um voluntário que é confortável chegando aqui no palco. Vamos lá para cima. Qual o seu nome? Yahong: Yahong. DAVID J. MALAN: Yahong, vamos lá para cima, desta forma. E se tudo, se você tem uma folha de papel a partir de nós ou uma folha de papel em branco de seu própria, vá em frente e tirar isso neste ponto. Bom te conhecer. Tudo bem, o objetivo da Yahong aqui vai ser o seguinte, Tenho aqui um desenho que só ela vai ser capaz de ver. Venha até aqui no médio, se você gostaria. E deixe-me dar-lhe um microfone aqui. E seu objetivo aqui é vai ser a descrever, em detalhes tão precisos quanto possível, o que você vê. E essas pessoas aqui, como o tipo implementadores de computador deste, precisa desenhar exatamente o que você diz. E então, o que eu vou fazer é pegar um algumas amostras aleatórias da platéia e vamos ver o quão precisamente isso funcionou. Yahong: Então eu descrever este. DAVID J. MALAN: Você descreveu este. Você dizer a seus colegas centenas de aqui exatamente o que desenhar, ir. Yahong: OK, então na própria meio da folha de papel, existem duas formas, um em cima do outro, mas não se tocam, mas quase se tocando. Portanto, há um círculo no superior, e um quadrado na parte inferior, e eles são quase do mesmo tamanho. Eles são o tipo de médio, pequeno. E dentro do círculo, existem dois-- há três praças. Portanto, há um pequeno quadrado dentro de um praça maior, dentro de um quadrado maior. E dentro do quadrado no inferior, existem três círculos. Um pequeno círculo dentro de um maior círculo, dentro de um círculo maior. DAVID J. MALAN: Entenderam? AUDIÊNCIA: Não. DAVID J. MALAN: Então por que não fazer você-- eu vou andar por aí. Eu vou pegar um pouco, e se você quiser repescagem para aqueles que precisam de uma segunda via. Yahong: OK, você precisa me explicar isso de novo? OK, tudo bem, assim, no meio da folha de papel existem duas formas. E é uma em cima da outra, mas eles são aproximadamente do mesmo tamanho. Existe um pequeno círculo médio em cima de um quadrado pequeno médio. OK, por isso é tipo como na parte superior, pensar em colocar-lo como um boneco de neve, mas com duas formas diferentes em vez de dois círculos. E, em seguida, em as-- dentro do círculo, há é uma pequena caixa, dentro de outro pequena caixa, dentro de uma outra pequena caixa. E dentro da praça, há um pequeno círculo, dentro de outro pequeno círculo, dentro de outro pequeno círculo. Será que isso faz sentido? DAVID J. MALAN: Sim. Yahong: Muita pressão. DAVID J. MALAN: Tudo bem, Eu volto já. Atravessar o público aqui, OK, muito agradável. Obrigado, nós temos OK tem que tomar essa. Tudo bem, isso parece ser uma boa amostra aleatória, obrigado. Tudo certo. Yahong: Awesome. DAVID J. MALAN: Então agora-- também? Yahong: Awesome. DAVID J. MALAN: Oh, impressionante, OK. Tão impressionante, ficar ali. Eu estou indo para ir em frente e revelar a você o que alguns de seus colegas aqui fizeram. Então aqui nós temos este aqui. OK, ele tipo de apenas manter indo e indo. Aqui, um pouco de interpretação diferente. OK, aqui, vamos ver, obtendo mais perto, embora menor, muito agradável. Embora, eu só tinha que pegar um presente. [RISO] Qual foi a resposta real? Vamos dar uma olhada aqui. O que ela estava descrevendo era esta imagem aqui. Então man-- alguns de-- muitos de vocês aqui em cima as que eu olhei, se obter este direito. Vamos em frente e vamos chamá-show-- alguém para cima e ver o quão facilmente, ou com o nível de dificuldade que eles podem fazê-lo. Muito obrigada. Como cerca de um outro voluntário um pouco mais para trás. OK, eu vi isso em primeira mão, vamos lá para cima. Qual o seu nome? Oh, desculpe? MARCY: Marcy. DAVID J. MALAN: Marcy, venha em cima, bom te conhecer. Tudo bem, temos aqui um microfone para você. Deixe-me pegar um desenho. E por isso, se você quer apenas usar o outro lado dessa folha, ou alguma outra folha de papel, eu sou indo para ir em frente e dar Marcy um diferente aqui que apenas ela agora pode see-- que só ela pode ver opaquely, OK. MARCY: OK. DAVID J. MALAN: Ir. MARCY: Empate 16 pouco dots tudo em uma grade. Assim, quatro filas de quatro pontos cada. E os pontos são ocas, de modo eles são como pequenos círculos pequenos. Oh, existem cinco deles. OK, é cinco. É cinco fileiras de pontos pretos. Cinco fileiras de cinco pontos, e, em seguida, começando no topo OK corner-- esquerda, assim cinco fileiras de cinco pontos, e os pontos são ocas, por isso eles são como pequenas pequenos círculos na verdade. Então eles são branco no interior. AUDIÊNCIA: OK. MARCY: OK, então cinco fileiras de cinco pontos. E então, você começa a partir do topo do ponto esquerdo, e, em seguida, desenhar uma linha até o próximo ponto para baixo, e, em seguida, chamar uma outra linha para um à direita do que um. Então, isso é duas linhas até agora. E, em seguida, desenhar uma linha para baixo para a seguinte para baixo. OK, então isso é três linhas, baixo, direita, e, em seguida, para baixo. E, em seguida, à esquerda. E, em seguida, para baixo. OK, então repescagem, é o primeiro é down-- OK, você está começando do canto superior esquerdo corner-- e, em seguida, para baixo, e depois à direita, e, em seguida, para baixo, e depois à esquerda, e depois para baixo, e depois à direita, e depois à direita, e depois à esquerda. OK, então estamos cerca de metade completamente. DAVID J. MALAN: Você disse direita, depois à esquerda. MARCY: Oh, gritos, OK. DAVID J. MALAN: Não é fácil. MARCY: Vamos começar de novo. Vamos começar de novo a partir de no canto superior esquerdo. DAVID J. MALAN: Só mais uma passagem. MARCY: Sim, OK, baixo, direita, para baixo, esquerda, baixo, direita, direita, baixo, direita, cima, direita, cima, esquerda, esquerda, para cima, para cima, direita, baixo, direita, para cima, e você deve estar no canto superior direito. ESTÁ BEM. DAVID J. MALAN: Tudo bem, e se você fez isso corretamente, você deve agora tem este em seu folha de papel. Então deixe-me ir pegar um par. OK, obrigado, obrigado, obrigado, OK, eu acho que você não quer isso. OK, oh amo isso, obrigado. Desculpe a chegar, uau, aw, eu estou OK vai levar apenas essa. Tudo bem, isso é bom, isso é muito bom. Tudo bem, então vamos ver o que temos aqui. Então, observe, tentar fazer uma imprint mental desta. Deixe-me voltar para a projeção aqui. E isso é muito danado bom aqui, muito bem feito. Este, um pouco menor, mas Eu acho que é no caminho certo bem, muito bem feito. OK, este que eu sinto como se eu não deve colocar isso na internet, então vamos me-- este tem um número de telefone, por algum motivo. [RISO] Obrigado. E então, por que não vamos acabar com este um e agora-- thank you so much-- temos tempo para mais um exemplo aqui. Desta vez, como sobre a à esquerda lá, vamos lá para cima. Yup, com as mãos, sim. Todos vêm a direita em cima, vamos lá para cima. Desta vez, porém, vamos lá para cima. Qual o seu nome? DANIEL: Daniel. DAVID J. MALAN: Daniel, Neste momento, porém, estamos vai apimentar este up um pouco, e estamos vai ter você vem sobre a tela sensível ao toque. Então, agora, desta vez, eu vou mostrar todos vocês todo o desenho. E no sistema de honra, você não pode mover os olhos sempre tão ligeiramente acima aqui para ver o que a imagem é real. Então você só manter um-- apenas para a frente. E então você vai desenhar na tela o que seus colegas descrevem a você. E eu vou tentar resumir verbalmente por isso é alto o suficiente. Tudo bem, então sistema de honra aqui, olhar para a frente única, e todos vocês passo-a-step-- não ao contrário a manteiga de amendoim e geléia example-- vamos tentar descrever isto. Primeira instrução por favor. AUDIÊNCIA: Desenhe um grande círculo. DAVID J. MALAN: Desenhe um grande círculo. [RISO] Tudo bem, isso eu vou desfazer. AUDIÊNCIA: Desenhe uma vara figura sem braços. DAVID J. MALAN: Eu ouvi, desenhe um boneco sem braços. [Aplausos] OK, tudo bem segunda instrução,. AUDIÊNCIA: Braço esquerdo no quadril. DAVID J. MALAN: Braço esquerdo no quadril. AUDIÊNCIA: Angular, angular. DAVID J. MALAN: Angular, OK, temos a-- deixe-me dar-lhe a borracha. Vamos apagar. OK, mais uma vez. AUDIÊNCIA: cotovelo Pointy. DAVID J. MALAN: cotovelo Pointy. Cotovelo pontudo. AUDIÊNCIA: cotovelo ligeiramente aguda. DAVID J. MALAN: cotovelo ligeiramente aguda. [Aplausos] DAVID J. MALAN: Tudo bem, o que mais? Terceira instrução. AUDIÊNCIA: Agora gire as-- DAVID J. MALAN: Agora gire as-- AUDIÊNCIA: Gire 90 graus. DAVID J. MALAN: Gire 90 graus. [RISO] [Shouting] O quê? Braço direito é um v. Braço direito é um v. AUDIÊNCIA: Lá você vai. DAVID J. MALAN: Nice. [CHEERING] Tudo bem, e última etapa, última etapa. AUDIÊNCIA: Linha longe da cabeça. DAVID J. MALAN: Uma linha distância a partir da cabeça. Nenhuma parte superior esquerda, sim. [Shouting] AUDIÊNCIA: ângulo de 45 graus. DAVID J. MALAN: ângulo de 45 graus. Ah não. [Shouting] Sim. Não. AUDIÊNCIA: A partir do canto superior esquerdo de sua cabeça. DAVID J. MALAN: From, a partir de canto superior esquerdo da sua head-- AUDIÊNCIA: Não conectado à cabeça. DAVID J. MALAN: Não ligado a sua cabeça. Sim. [Shouting] Isso é bom, isso é bom. AUDIÊNCIA: Escreva, Hi. DAVID J. MALAN: Escreva, Hi. Escrever, Hi. AUDIÊNCIA: Superior. DAVID J. MALAN: Superior. Audiência: No final da linha. DAVID J. MALAN: No fim da linha write-- AUDIÊNCIA: Pouco i. Não. [Shouting] DAVID J. MALAN: i Minúsculas. Ouvi, minúsculas. Sim. [Aplausos] Tudo bem, isso foi incrível, muito obrigado. Tudo bem, então temos tempo por apenas mais um exercício. Você pode se lembrar o seguinte tema musical que, perceber que nós temos tomado algumas liberdades com as regras do seguinte jogo, porque no conjunto de problemas oito, pedimos-lhe um monte de perguntas que eram, essencialmente, sob a forma de perigo. E só depois de p-set oito que decidimos, bem, talvez fosse na verdade, ser um pouco mais divertido de jogar outra coisa em seu lugar. [Family Theme FEUD MUSIC] Para isso, vamos precisar de quatro membros do corpo docente. Quatro membros do pessoal docente, e quatro estudantes, como sobre um, dois, como cerca de três, quatro. Venha, venha para baixo. Tudo bem, Nós também estamos vai need-- também somos vai precisar de um student-- se os funcionários gostaria de ir aqui à esquerda, estudantes aqui direita-- precisamos de alguém que é realmente bom em aritmética sob pressão. OK, aqui mesmo ser voluntário [Inaudível] vamos lá para cima. Então você vai usar a tela de toque aqui. Qual o seu nome? MICHAEL: Michael. DAVID J. MALAN: Michael, vamos lá para cima. Então, nós vamos dar-lhe instruções em apenas um momento. Mas se você quer apenas escrever equipe à direita e estudantes na esquerda para igualar o placar, deixe- me ir em frente e deixar que cada um de vocês se apresentar para sua classe neste último dia. JAMES: Eu sou James, eu sou um calouro. AARON: Oi, eu sou Aaron. MAYA: Eu sou Maya. KATHERINE: Eu sou Katherine. DAVID J. MALAN: E Agora, o pessoal docente. JACK: Eu sou Jack. Abby: Abby TIM: Oi, eu sou Tim. MARIA: Maria. DAVID J. MALAN: Então, nós tem de antecedência, chegar com uma série de perguntas, algumas das cujas respostas que tipo de confeccionados, mas outros cujas respostas são com base em estatísticas reais a partir de suas próprias apresentações de problema definir oito, e outros conjuntos de problemas. Assim, em geral, cada um desses respostas teremos pesquisados, digamos 100 pessoas, colocaremos os quatro ou cinco ou seis melhores respostas no tabuleiro, cada um dos quais tem uma pontuação associada com ele. O que vamos fazer é ajustar as regras um pouco. Então ao invés de dar o controle para uma equipe ou de outra, estamos simplesmente indo para usar os Staples botões fáceis para permitir que cada equipe a zumbir no menor. E quem guesses-- atinge o botão em primeiro lugar, e recebe uma pergunta certa, irá, potencialmente, obter que muitos pontos. Nós vamos continuar, nós vamos continuar, e, em seguida, Qualquer equipe termina a bordo, será obter todos os pontos computados até o momento. Então, o que você vai querer que é a contagem dos pontos como nós vamos para cada pergunta respondida certa. E, em seguida, uma vez que a rodada termina, você é vai pôr do total, quer aqui, ou aqui. MICHAEL: Então eu concordância em minha cabeça. DAVID J. MALAN: Ou na tela na frente de todos, sim, ou no seu telefone, que está de volta ao que parece. Tudo bem, então vamos orientá-lo através deste. Não há necessidade de fazer nada ainda. A primeira coisa que os alunos e os funcionários precisam fazer é atingido suas respectivas botões o mais rápido depois de eu começar a ler a pergunta e você quer propor uma resposta. Faz sentido? Tudo bem, aqui vamos nós. Nomeie uma função declarada em stdio.h. Funcionários. Abby: Printf. DAVID J. MALAN: Mostra-nos printf. Muito bom. Então, basta anotar 68, ou manter o controle em sua mente de 68. Agora vamos seguir em frente. Assim que eu vou ler a pergunta novamente, você não pode buzz em até depois Eu repeti a pergunta. Nomeie uma função declarada em stdio.h. Mesma pergunta JAMES: Qual é sprintf. DAVID J. MALAN: Qual é sprintf. Mostra-nos sprintf. Não, eu vou ler novamente. Uma função declarada em stdio.h. Funcionários. TIM: Scanf. DAVID J. MALAN: Scanf, nos mostrar. Duas greves. Uma vez mais, uma função declaradas em stdio.h. Alunos. JAMES: fopen. DAVID J. MALAN: fopen, muito agradável. Eu vou apenas continuar a repetir a pergunta, uma função declarada em stdio.h. Funcionários. TIM: Fclosed. DAVID J. MALAN: Fclosed, bom trabalho. Bom, temos duas respostas à esquerda na da placa, número dois e número 5 para esta rodada. Uma função declarada em stdio.h. Alunos. KATHERINE: Fread. DAVID J. MALAN: Mostra-nos fread. Muito bom. Quem agora-- qualquer equipe responde a quinta e última resposta, recebe todos os pontos. Então você deve adicionar todos estes números para cima, e quem recebe este, recebe esse total. Existe um erro? Não existe um número seis. Sem número seis, não implementado. Nomeie uma função declarada em equipe stdio--. TIM: Fright. DAVID J. MALAN: Mostra-nos medo. JACK: Isso explica muito. DAVID J. MALAN: Vamos tentar mais uma vez. Nome um-- citar função declaradas em stdio.h. Tim. TIM: fseek. DAVID J. MALAN: fseek. Sobre mais uma tentativa, nomear uma função declarou em F-- em stdio.h. MARIA: fgetc. DAVID J. MALAN: fgetc. Assim, ninguém recebe os pontos. Colton, quer mostrar-nos o número cinco era? OK, Matlock não está em stdio.h. Jason Hirschhorn todos. Tudo bem, vamos seguir em frente à segunda questão. Primeira pessoa a zumbir aqui, para esta questão, um programa que você usar durante a programação. Funcionários. TIM: Clang. DAVID J. MALAN: Clang. Very nice, número dois resposta. Mais uma vez, o nome de um programa você usar durante a programação. Alunos. JAMES: GDB. DAVID J. MALAN: GDB. Então, neste momento, 38 seria total, mas ninguém é chegado nenhum ponto ainda. Tudo bem, o nome de um programa utilizado durante a programação. TIM: Valgrind. DAVID J. MALAN: Valgrind. Tudo bem, o nome de um programa você usar durante a programação. Alunos. AARON: PHP. DAVID J. MALAN: Nome PHP uma programa que você usa durante a programação. Funcionários. MARIA: Facebook. DAVID J. MALAN: Show nós, nos mostram Facebook. [Aplausos] Temos seis melhores respostas na placa, três para ir. Nome de um programa que usar durante a programação. Funcionários. TIM: Google. DAVID J. MALAN: Google. Brow-- tudo bem. AUDIÊNCIA: Boo. DAVID J. MALAN: Boo. Tudo bem, nome-- dois Nome respostas left-- um programa que você usa durante a programação. MAYA: CS50 Discutir. DAVID J. MALAN: CS50 Discutir. Mais uma tentativa, um programa você usar durante a programação. Ouvi alunos. Alunos. AARON: CS50 IDE. DAVID J. MALAN: CS50 IDE. E último, um programa você usar durante a programação. TIM: Check50. DAVID J. MALAN: Check50. Não, vamos revelar a resposta. O número seis foi Spotify. Tudo bem, eu acho que nós temos tempo para apenas um ou dois mais. Complete a seguinte frase, não há pontos para uma ou outra equipe ainda. É zero a zero, vencedor levar a todos em breve, bom trabalho. Complete a seguinte frase, Eu nunca estou gonna-- Staff. TIM: Dê-lhe para cima. DAVID J. MALAN: Dê-lhe para cima. Agradável. Alunos. JAMES: deixar você para baixo. DAVID J. MALAN: deixar você para baixo. Eu nunca gonna- MARIA: Corrida à volta e abandonar. DAVID J. MALAN: Run volta e abandonar. Corrida à volta do deserto, OK. Alunos. AARON: Nunca vai fazer você chorar. DAVID J. MALAN: fazer você chorar. Funcionários. TIM: Diga adeus. DAVID J. MALAN: Eu não posso acreditar que este é a pergunta que você está recebendo tudo certo. Diga adeus, sim, ea última. Alunos. KATHERINE: Você feriu. DAVID J. MALAN: Diga uma mentira e te machucar. Os alunos recebem 100 pontos. Isso é para entendermos que é isso para CS50, bolo é agora servido. [SEINFELD música tema] [Música tocando] DAN ARMINDARIZ: Você está louco? O que você pensa que está fazendo? COLUNA 6: Eu estou tentando entrar no elevador. DAN ARMINDARIZ: O que do que você está falando? Você não me viu esperando aqui? COLUNA 6: Eu não vi você está esperando o homem. DAN ARMINDARIZ: Se você não fez veja me esperando, então por que você colocar o seu carrinho em como esse? COLUNA 6: Porque é isso como eu entrar no elevador. DAN ARMINDARIZ: [inaudível] COLUNA 6: Obter out-- deixar ir!