Pergunta original
Fui convidada para o grupo de jardim de infância da minha filha mais velha para conversar e responder às perguntas das crianças sobre minha profissão. Há 26 crianças de 4 a 6 anos no grupo, além de 3 professores que têm bastante medo de qualquer coisa relacionada à programação e à TI, mas corajosos o suficiente para aprender novos truques. Eu teria cerca de 20 a 30 minutos, sem projetor ou qualquer coisa. No entanto, eles têm um computador antigo, que por sua aparência pode ser um 486, e nem tenho certeza se está funcionando (atualização: não está).
Minha pesquisa revelou excelentes tópicos anteriores, com muitas boas dicas:
- Como você explicaria seu trabalho a uma criança de 5 anos?
- Dia da carreira: como faço para que “programador de computador” pareça legal para crianças de 8 anos?
- Que coisas posso ensinar a um grupo de crianças sobre programação em um dia?
Minha situação é diferente de cada uma das opções acima: as últimas se preocupam com crianças mais velhas, enquanto a primeira é sobre conversar com uma única criança (ou pessoa mais velha) - um grupo de 20 é um desafio totalmente diferente.
Como posso ensinar as crianças e seus professores sobre programação de uma maneira divertida?
Planejar com base em respostas
Obrigado por todas as respostas incríveis, pessoal :-) Não acho que faça sentido aceitar uma única resposta, mas eu gosto mais de Jim, assim como a maioria dos SOers aparentemente. No entanto, muitas outras respostas contêm dicas e idéias úteis (algumas das quais eu certamente usarei nos próximos dias de carreira na escola ...).
Eu montei um plano aproximado:
- Explique brevemente o que é programação, como nesta resposta .
- Diga que os computadores estão em toda parte e colete exemplos com as crianças (como sugerido em várias respostas abaixo).
- Faça a apresentação de Jim com os sanduíches .
- Se o tempo permitir, construa-o ainda mais:
- explique que a força dos computadores é que eles se lembram exatamente do que foram ensinados uma vez (e demonstram isso preparando um segundo sanduíche, repetindo todas as falhas da primeira tentativa)
- ter uma segunda rodada tentando corrigir os erros no processo
- explique o conceito de loops: você pode fazer o computador preparar
n
sanduíches com uma única instrução
Este é o meu plano - tenho certeza de que tudo sairá de maneira muito diferente, por isso vou improvisar de acordo com a situação. A apresentação está agendada para daqui a duas semanas - atualizarei a postagem posteriormente e contarei como ela realmente foi ...
Resultados
Finalmente chegou o dia da apresentação hoje ... em resumo, tudo correu bem e foi um enorme sucesso :-)
O grupo acabou sendo bastante inquieto e enérgico dessa vez, então a conversa às vezes ficava um pouco caótica. Eu tive que abreviar e chegar ao Big Sandwich Maker Show. Assim como Jim descreveu, as crianças adoraram .
Houve um efeito colateral imprevisto: depois que a primeira fatia de pão finalmente ficou pronta, todo mundo queria comer! Então, por um tempo - durante o qual tentei manter a conversa e explicar mais sobre programação - tivemos que instalar uma espécie de linha de serviço de emergência com os professores do jardim de infância para produzir quantidades imensas de pão de marmelada e alimentar a multidão faminta (isso era metade uma hora depois do café da manhã, para constar :-). Depois ficamos sem pão, o que claramente significava o final da apresentação. A maior explosão de risada explodiu quando, depois de limpar a bagunça, as crianças notaram que o pobre computador pisou em um pedaço de marmelada que arruinou sua meia :-)
Os próprios professores também ficaram muito impressionados - a julgar pelo feedback, este foi o melhor e mais engraçado dia de carreira neste grupo até agora. Obrigado novamente a todos pelas ótimas idéias!
Coisas que poderiam ser melhoradas (da próxima vez):
- Quando perguntei "você acha que os computadores são inteligentes?", Para minha surpresa, a maioria deles respondeu "não". Então perguntei quem acha que os computadores são inteligentes e por quê. No entanto, deixei de perguntar quem pensa que os computadores são burros e por quê - portanto, acho que perdi algumas respostas potencialmente intrigantes.
- Convidar as crianças a virem à mesa os envolveu ativamente ... mas talvez às vezes seja um pouco ativo demais. Fatias de pão começaram a desaparecer da mesa e parte da platéia imitou o computador tão bem quanto mergulhou os dedos na manteiga e na geléia :-) Portanto, é melhor manter alguma distância.
- Para manter a multidão faminta sob controle, as crianças devem ser avisadas com antecedência: "você pode comer todo o pão, mas somente após a demonstração!"
Mas, no geral, estou muito feliz com o resultado. E tenho certeza de que as crianças receberam a mensagem principal: como programador, se você evitar criar confusão, pode fazer seu pão (mesmo com marmelada :-)
Respostas:
Eu já fiz isso antes.
Deitei muitas toalhas de papel em uma mesa e peguei um pedaço de pão (barato), uma pequena banheira de manteiga, um pequeno pote de geléia e uma faca plástica de manteiga.
Eu disse às crianças: "Quantos de vocês acham que os computadores são inteligentes?" A maioria deles levantou as mãos. Eu disse: "Os computadores são realmente idiotas. As pessoas são espertas. Você precisa contar tudo ao computador . Ele não sabe fazer nada . Vou mostrar o que quero dizer. Vou fingir que estou". sou burro como um computador, e vocês me dizem como fazer um sanduíche. "
E quando o primeiro garoto disse "abra o saco de pão!" Rasguei a bolsa e deixei o pão cair aleatoriamente por toda a mesa. Isso deu muitas risadas. Continuei levando as crianças literalmente em suas palavras até que elas aprenderam a dar comandos curtos e específicos e, finalmente, acabamos com um sanduíche de manteiga e geléia. Houve muitas risadas, mas elas acabaram entendendo, pelo menos um pouco, o que um programador faz para viver.
(Devo observar, também fiz essa demonstração com adultos em uma aula de "introdução à programação" e funciona da mesma forma que eles.)
fonte
Que tal fazer uma versão cinestésica do Logo?
Digamos que você tenha dois filhos lado a lado. Eles podem descobrir como trocar de lugar usando apenas os comandos Avançar, Recuar, Vire à esquerda 90 graus e Vire à direita 90 graus? Tenho certeza de que existem outros jogos como passar por um labirinto etc.
Eu acho que você manteria a atenção deles se pudesse mantê-los em movimento. Isso despertará o interesse. Eles descobrirão depois que o trabalho é sedentário. ;)
fonte
Não tente mostrar nada a eles no computador. Observar alguém digitando é chato para adultos. Para crianças de 5 anos, é uma receita para a anarquia.
Em vez disso, torne-o interativo. Alguma forma de "Simon Says", mas que eles sejam o programador .
fonte
Eu nunca tentei isso, mas pode ser divertido.
Demonstre fisicamente um algoritmo usando algum atributo de cada criança como dados de entrada .
Por exemplo, faça com que eles formem uma linha (na ordem em que forem inicialmente), lado a lado. Isso pode funcionar melhor em um semicírculo para que eles possam se ver fazendo o exercício, mas deve haver uma interrupção na linha em algum lugar. Então, começando no final da linha, faça com que eles se revezem fazendo "se o colega à sua esquerda for mais alto que você, troque de lugar; caso contrário, fique parado". O jogo termina quando você passa pela linha e ninguém muda de lugar. Faça com que eles observem os resultados. (Dica: tipo de bolha!)
fonte
Para transformar as crianças em programação, você dirige até o jardim de infância em seu Rolls Royce e entra com seu lindo e significativo outro.
Se você não é Bill Gates, basta explicar que se sente em reuniões chatas por 4 horas por dia, imprime folhas de rosto para relatórios TPS por 2 horas e fica olhando para coisas estúpidas escritas por programadores sem noção anteriores para o programa. outras 6 horas. (Não é preciso mencionar que você recebe ligações de pessoas que mantêm seu último programa e que pensam que VOCÊ é o cara sem noção anterior).
Não, eu não sou amargo, por que você pergunta?
Sério (tenho certeza de que estou plagiando inconscientemente de um desses três tópicos), peça para que eles joguem "me dê instruções sobre como fazer Y", com você fazendo as coisas da maneira Genie - tudo errado, a menos que as instruções sejam muito precisas e Claro. Na verdade, mencione o gênio como um bom exemplo, assumindo que as crianças viram Aladdin.
; ^)
fonte
Faça-os escrever programas curtos para você fazer coisas simples (como entrar na sala e sentar-se) e depois executá-los literalmente para demonstrar os "bugs" - onde eles não eram específicos o suficiente ou não levavam em conta, então que você fará coisas erradas. Tente não se machucar no processo. Deve ser engraçado e fornecerá a eles uma boa idéia do que é um algoritmo.
fonte
Eu acho que você poderia fazer a seguinte demonstração em 20 minutos. Talvez seja mais adequado para crianças mais velhas. Eu realmente não sei do que os educadores de infância são capazes. Eu pessoalmente evitaria tentar explicar a programação e, em vez disso, descreveria um problema que nós, como programadores, resolvemos. Por exemplo, se houver filhos suficientes, você poderá demonstrar a Internet de forma interativa.
Parte I: Como Funciona
Primeiro, descreva para eles, de preferência com adereços, como a Internet funciona. Leve um laptop conectado por um cabo (para efeito visual) a um roteador doméstico. Diga como os programadores de computador fabricam todos os tipos de dispositivos, incluindo os programas no laptop, o programa no roteador e aplicativos em outros dispositivos conectados à Internet, como telefones celulares.
Explique como os computadores não estão conectados diretamente um ao outro, porque é impossível conectar um cabo de todos os computadores do mundo a todos os computadores. Você precisaria de um bilhão de cabos em sua casa. Então, em vez disso, os computadores se conectam aos roteadores. E os roteadores fornecem pacotes de dados (por exemplo, e-mails, fotos ou vídeos) a outros roteadores até que finalmente cheguem ao outro computador.
Descreva as regras para um computador falar com outro:
Um computador pode apenas dar um pacote ao seu roteador.
Um roteador pode dar um pacote aos computadores conectados a ele ou ao roteador mais próximo.
Essa explicação deve ser muito curta, mas enfatize as regras. Você provavelmente deve equiparar pacotes com email ou fotos.
Parte II: Tempo Interativo
Em seguida, faça com que 3 crianças sejam voluntárias como roteadores. Todo mundo é um computador e os divide igualmente. Seria bom ter cartões coloridos que eles possam segurar. Como a pessoa que segura o cartão azul escuro é um roteador que pode conversar com todas as pessoas que possuem cartões azuis claros. Digamos que você dê cartões azuis, vermelhos e amarelos.
Organize os "roteadores" em uma linha azul, depois vermelha e amarela. O roteador azul precisará atribuir um pacote ao roteador vermelho para entregá-lo ao roteador amarelo. Agrupe as outras crianças em torno de seus roteadores.
Traga "pacotes" para cada criança. Misture tudo com fotos, cartas, uma impressão de jogo da velha para simbolizar um jogo, ou o que seja. Comece enviando um único computador vermelho para um computador amarelo.
"Ashley, escolha um computador amarelo para o qual você deseja enviar sua foto. OK, para enviar a foto para Brian, você deve entregá-la ao seu roteador, Kelly. Diga a Kelley quem deve tirar a foto. Kelley, você é azul, então você não pode dar a foto para Brian. Você tem que dar para Timmy. Diga a Timmy quem deve tirar a foto. Timmy é vermelho, então ele não pode dar para Brian. Ele tem que dar para Renee. Renee , você pode dar uma foto a Brian, pois ele é um computador amarelo e você é o roteador amarelo ".
Depois, peça a todos que pensem em uma pessoa para enviar seu "pacote" e assista à sua rede improvisada em ação.
Parte III: Relacionar de volta à programação de computadores
Para concluir, pergunte aos roteadores se foi fácil ser um roteador ou se é difícil, porque muitas pessoas tentaram tirar fotos de uma só vez. Indique onde as coisas deram errado e associe-as a problemas reais que resolvemos.
"Pude ver que o Timmy estava sobrecarregado com pacotes porque todos tinham que enviar seus pacotes através dele. Como programadores de computador, temos que resolver problemas como esse todos os dias. Uma maneira de resolver isso é dar armas ao Timmy 4. Ou talvez acrescentar outro roteador para que, se Timmy tiver muitos pacotes para entregar, você possa entregá-lo a um roteador diferente. " Ou "Talvez desejemos que as fotos sejam entregues mais rapidamente, para que possamos pedir ao roteador que entregue a foto antes de entregar outros pacotes".
fonte
Para pedir emprestado as outras idéias já postadas, um jogo de Simon Says pode ser o caminho a percorrer. No entanto, você pode enfatizar como os computadores farão EXATAMENTE o que você manda. Então, se as crianças são Simon, e dizem: "Simon diz, sente-se". então você apenas se senta no chão (não em uma cadeira próxima ou algo assim). Siga as instruções da letra e não do espírito. (Claro, isso pode ser complicado para as crianças darem instruções ambíguas, mas tenho certeza que você pode inventar alguma coisa.)
Fora isso, você também pode falar sobre videogames ou outras "coisas" de computador que as crianças podem ter usado e você pode dizer que programadores, como você, as criam. E então talvez pule para o Simon Says para mostrar como ele funciona. Claro, isso pode resultar em um monte de crianças crescendo pensando que você passa o dia inteiro no trabalho jogando Simon Says com um computador ...
fonte
Às vezes, considero meu trabalho brincar com peças de Lego. Você começa com um conjunto de tijolos de diferentes tamanhos, formas e cores e, a partir disso, constrói coisas maiores. Você pode construir castelos ou robôs de guerra nas estrelas usando o mesmo conjunto de tijolos.
E, é sobre a mesma quantidade de diversão!
fonte
Uma das principais vantagens da programação é a capacidade de criar coisas . Para realizar sonhos. Eu não acho que isso atraia muito as crianças pequenas que não têm problemas para deixar sua imaginação se libertar de qualquer maneira. O que os computadores trazem para a mesa?
Em vez disso, você provavelmente poderia interessá-los na solução de problemas, quebra-cabeças. O tipo de pensamento necessário para a programação. Eu provavelmente não usaria um computador; em vez disso, deixe-os resolver um enigma matemático envolvente. Não precisa ser difícil, mas deve envolver pensamento criativo.
fonte
Quando tento explicar a programação em pouco tempo para pessoas que não estão familiarizadas com a programação, explico-a usando Legos. Com o Legos, você tem várias peças simples, é como a linguagem de programação. Depois, você pode juntá-las da maneira que desejar e fazer qualquer coisa que puder imaginar, desde que possua as peças corretas.
Para adultos e crianças, isso provavelmente é uma analogia muito interessante e ainda demonstra o conceito de programação.
Além disso, você pode até construir um carro Lego com pouca qualidade, exibir também um carro Lego com um design muito bom e mostrar a eles que a programação é assim. Você pode programar carros ou robôs ou o que puder imaginar, mas não há apenas uma maneira de fazê-lo, há muitas maneiras de fazê-lo. alguns melhores que outros.
Eu consegui tantas pessoas para começar a programar e até mudar de curso com essa analogia. :)
fonte
Acho que começaria falando por 2-3 minutos sobre computadores e que eles seguem instruções sobre o que fazer.
Em seguida, eu demonstrava com um robô LEGO Mindstorms pré-construído e o programava algumas vezes e o executava, apenas para mostrar a eles que segue o programa. A programação do Mindstorms é bastante visual e simples de entender.
Finalmente, eu tentaria explicar que existem computadores executando programas em quase todos os lugares, mesmo em semáforos, fornos de microondas e seus brinquedos favoritos.
fonte
Fale sobre o quão difundida é a programação de computadores - ela orienta linhas aéreas, telefones, carros, como você compra seus bilhetes on-line etc.
Depois, ensine-os a escrever um programa simples simbolicamente: 1. Desenhe uma grade no quadro-negro.
2. Desenhe queijo em uma extremidade e um mouse na outra extremidade. 3.Have "programa" os moues para obter o queijo!
Conduza-os através de suas tentativas fracassadas em classe, talvez faça o mouse cair em armadilhas ou algo no grid. Eles ficariam emocionados com isso.
fonte
Como ensinar às crianças o que é programação?
Bem, é provável que o primeiro passo envolva algumas vacas!
Baixe um jogo de programação simples (como o IQ Marathon ) no laptop e conecte-o a um projetor. Enquanto você faz isso, pode falar sobre como ser um programador geralmente significa trabalhar com tecnologia recente (e, portanto, demonstrar isso).
Depois de configurá-lo (pratique para que possa funcionar em 5 minutos ou menos), você poderá usar o jogo para mostrar visualmente (e com vacas!) Como o computador faz exatamente o que você pede, e como você (o programador) precisa descobrir quais instruções são necessárias para fazer o que você deseja. Quando você acertar, todo mundo fica tão feliz com o seu sucesso que há vacas dançando!
A partir daí, você pode responder a quaisquer perguntas, ou talvez apenas deixar as crianças tentarem descobrir como programar as próprias vacas. Onde quer que eles querem ir, realmente.
Vacas!
fonte
Dê a cada criança uma forma recortada; círculos, quadrados, triângulos, cores diferentes etc. Explique como a programação está dando instruções em ordem específica. Segure a foto de um rosto sorridente e ensine as crianças a construí-lo. Círculo amarelo, ponto preto, ponto preto, arco. Em seguida, mostre uma imagem mais complicada e peça às crianças que se organizem de acordo com suas instruções. Você pode até cometer um erro (como colocar o círculo amarelo sobre os pontos pretos) para mostrar como 'Bugs' se infiltram em um programa.
fonte
Demonstre um robô lego mindstorm simples e seu fluxograma correspondente. Você não precisará mostrar nenhum código e eles poderão ver o resultado final da sua lógica, assistindo o lego executar seu programa.
fonte
As crianças gostam de coisas que "fazem alguma coisa" e luzes piscantes.
No aniversário dos meus filhos, fiz um cofre (caixa com fechadura elétrica e muitos leds) conectado ao PC.
Eles tinham algumas perguntas a responder, e cada resposta resultou em leds intermitentes (verde para boas respostas e vermelho para respostas erradas). Se eles respondessem a perguntas suficientes, os leds iniciavam uma animação simples que terminava com um "clonk" alto. O cofre estava aberto e eles poderiam receber suas recompensas.
Foi divertido construir e as crianças adoraram.
fonte
Venda-os pelo valor da automação autônoma. Peça a uma criança que caminhe até a frente da sala e mostre à classe o que ele faz todas as noites quando está escovando os dentes. Depois, peça ao mesmo garoto que lhe mostre o que ele faria durante esse período se ele não tivesse que escovar os dentes.
Depois diga a esse garoto que você sabe como mover essa escova entre os dentes enquanto ele está fazendo a outra coisa que ele preferiria fazer, e diga a ele que ele nunca sentirá. Seus dentes ficarão magicamente limpos na próxima vez que sua mãe for examiná-los.
Em seguida, talvez escreva algum pseudocódigo no quadro de giz que mostra a API do Brush acessando o recurso Tooth em um encadeamento em segundo plano atrás da atividade Favorite.
fonte