web-dev-qa-db-fra.com

Journée carrière à la maternelle: comment démontrer la programmation en 20 minutes?

Question d'origine

J'ai été invitée au groupe de maternelle de ma fille aînée pour parler et répondre aux questions des enfants sur ma profession. Il y a 26 enfants de 4 à 6 ans dans le groupe, plus 3 enseignants qui ont assez peur de tout ce qui concerne la programmation et l'informatique eux-mêmes, mais assez audacieux pour apprendre de nouvelles astuces. J'aurais environ 20-30 minutes, sans projecteur ou quoi que ce soit. Cependant, ils ont un vieil ordinateur, qui de par son apparence peut être un 486, et je ne suis même pas sûr qu'il fonctionne (mise à jour: ce n'est pas le cas).

Ma recherche a révélé d'excellentes discussions antérieures, avec de nombreux bons conseils:

Ma situation est cependant différente de chacune des précédentes: ces dernières concernent les enfants plus âgés, tandis que la première concerne le fait de parler à un seul enfant (ou une personne âgée) - un groupe de 20 est un entier défi différent.

Comment puis-je enseigner aux enfants et à leurs professeurs la programmation de manière ludique?


Plan basé sur les réponses

Merci pour toutes les réponses incroyables, les gars :-) Je ne pense pas qu'il soit logique d'accepter une seule réponse, mais j'aime le plus Jim, tout comme la majorité des SOers apparemment. Cependant, beaucoup d'autres réponses contiennent des astuces et des idées utiles (dont certaines que j'utiliserai sûrement lors des futures journées de carrière à l'école ...).

J'ai élaboré un plan approximatif:

  1. Expliquez brièvement ce qu'est la programmation, comme dans cette réponse .
  2. Dites que les ordinateurs sont partout et collectez des exemples avec les enfants (comme suggéré dans plusieurs réponses ci-dessous).
  3. Faites Présentation de Jim avec les sandwichs .
  4. Si le temps le permet, construisez-le davantage:
    • expliquer que la force des ordinateurs est qu'ils se souviennent exactement de ce qui leur a été enseigné (et le démontrent en préparant un deuxième sandwich, en répétant tous les défauts de la première tentative)
    • avoir un deuxième tour en essayant de corriger les bugs dans le processus
    • expliquer le concept des boucles: vous pouvez faire préparer des sandwiches n avec une seule instruction

C'est mon plan - je suis sûr que cela se passera très différemment, alors j'improviserai en fonction de la situation. La présentation est prévue dans environ 2 semaines - je mettrai à jour le message après et dirai comment cela s'est réellement passé ...


Résultats

Enfin le jour de la présentation est arrivé aujourd'hui ... bref, tout s'est bien passé et ce fut un énorme succès :-)

Le groupe s'est avéré assez agité et énergique cette fois, donc la conversation est parfois devenue un peu chaotique. J'ai dû couper court et me rendre au Big Sandwich Maker Show. Tout comme Jim l'a décrit, les enfants ont adoré ça.

Il y avait cependant un effet secondaire imprévu: après que la première tranche de pain se soit enfin préparée, tout le monde voulait manger! Donc pendant un certain temps - pendant lequel j'ai essayé de maintenir la conversation et d'expliquer davantage la programmation - nous avons dû installer une sorte de ligne de service d'urgence avec les enseignants de la maternelle pour produire d'immenses quantités de pain à la marmelade et nourrir la foule affamée (c'était la moitié une heure après le petit déjeuner, pour mémoire :-). Ensuite, nous avons manqué de pain, ce qui signifiait clairement la fin de la présentation. Le plus grand éclat de rire a éclaté quand après avoir nettoyé le gâchis, les enfants ont remarqué que le pauvre ordinateur a marché sur un patch de marmelade qui a ruiné sa chaussette :-)

Les enseignants eux-mêmes ont également été très positivement impressionnés - à en juger par les commentaires, ce fut la journée de carrière la meilleure et la plus drôle de ce groupe jusqu'à présent. Merci encore à vous tous pour les bonnes idées!

Choses qui pourraient être améliorées (la prochaine fois):

  • Quand j'ai demandé "pensez-vous que les ordinateurs sont intelligents?", À ma grande surprise, la plupart d'entre eux ont répondu "non". J'ai ensuite demandé qui pense que les ordinateurs sont intelligents et pourquoi. Cependant, j'ai négligé de demander qui pense que les ordinateurs sont stupides et pourquoi - donc je pense que j'ai raté des réponses potentiellement intrigantes.
  • Inviter les enfants à venir autour de la table les a impliqués activement ... mais parfois un peu trop activement. Des tranches de pain ont commencé à disparaître de la table et une partie du public a imité l'ordinateur aussi près que plongeant leurs propres doigts dans le beurre et la marmelade :-) Il est donc préférable de garder une certaine distance.
  • Pour garder la foule affamée sous contrôle, les enfants doivent être clairement informés à l'avance: "vous pouvez manger tout le pain, mais seulement après la démonstration!"

Mais dans l'ensemble, je suis assez satisfait du résultat. Et je suis sûr que les enfants ont reçu le message principal: en tant que programmeur, si vous évitez de créer un gâchis, vous pouvez faire votre pain (même avec de la marmelade: -)

186
Péter Török

Je l'ai déjà fait auparavant.

J'ai posé beaucoup de serviettes en papier sur une table et j'ai sorti une miche de pain (bon marché), un petit pot de beurre, un petit pot de gelée et un couteau à beurre en plastique.

J'ai dit aux enfants: "Combien d'entre vous pensent que les ordinateurs sont intelligents?" La plupart d'entre eux ont levé la main. J'ai dit: "Les ordinateurs sont vraiment stupides. Les gens sont intelligents. Vous devez dire à un ordinateur tout. Il ne sait pas comment faire quoi que ce soit. Je vais vous montrer ce que je veux dire. Je vais prétendre que je suis aussi stupide qu'un ordinateur, et vous me dites comment faire un sandwich. "

Et quand le premier enfant a dit "ouvrez le sac de pain!" J'ai déchiré le sac et laissé tomber le pain au hasard sur la table. Cela a eu beaucoup de rires. J'ai continué à prendre les enfants au pied de la lettre jusqu'à ce qu'ils apprennent à donner des commandes courtes et spécifiques, et finalement nous nous sommes retrouvés avec un sandwich au beurre et à la gelée. Il y a eu beaucoup de rires mais ils sont revenus en comprenant, au moins un peu, ce qu'un programmeur fait dans la vie.

(Je dois noter que j'ai également fait cette démonstration avec des adultes dans une classe "introduction à la programmation", et cela fonctionne tout aussi bien avec eux.)

276
Jim Kiley

Que diriez-vous de faire une version kinesthésique de Logo?

Disons que vous avez deux enfants côte à côte. Peuvent-ils comprendre comment changer de place en utilisant uniquement les commandes Avancer, Reculer, Tourner à gauche de 90 degrés et Tourner à droite de 90 degrés? Je suis sûr qu'il existe d'autres jeux comme passer par un labyrinthe, etc.

Je pense que vous garderiez leur attention si vous pouviez les faire bouger. Cela va spark l'intérêt. Ils découvriront plus tard que le travail est sédentaire.;)

47
John

N'essayez pas de leur montrer quoi que ce soit sur l'ordinateur. Regarder quelqu'un d'autre est ennuyeux pour les adultes. Pour les enfants de 5 ans, c'est une recette pour l'anarchie.

Au lieu de cela, rendez-le interactif. Une certaine forme de "Simon dit", mais les avoir être le programmeur.

28
Anon

Je n'ai jamais essayé ça, mais ça pourrait être amusant.

Démontrer physiquement un algorithme en utilisant un attribut de chaque enfant comme données d'entrée.

Par exemple, demandez-leur de former une ligne (dans l'ordre dans lequel ils vont initialement), côte à côte. Cela pourrait mieux fonctionner dans un demi-cercle afin qu'ils puissent se voir faire l'exercice, mais il doit y avoir une rupture quelque part. Ensuite, en commençant à une extrémité de la ligne, demandez-leur de faire à tour de rôle "si le camarade de classe sur votre gauche est plus grand que vous, changez de place; sinon, restez sur place". Le jeu se termine lorsque vous passez par la ligne et que personne ne change de place. Faites-leur observer les résultats. (Indice: tri par bulles!)

11
Jon Seigel

Pour transformer les enfants en programmation, vous vous rendez au jardin d'enfants dans votre Rolls Royce et entrez avec votre magnifique autre.

Si vous n'êtes pas Bill Gates, vous devrez simplement expliquer que vous vous assoyez dans des réunions ennuyeuses pendant 4 heures par jour, imprimez des pages de couverture pour les rapports TPS pendant 2 heures et regardez des choses stupides écrites par des programmeurs désemparés précédents pour le autres 6 heures. (Inutile de mentionner qu'alors vous répondez aux appels de personnes qui maintiennent votre dernier programme et qui pensent que VOUS êtes le gars désemparé précédent).

Non, je ne suis pas amer, pourquoi demandez-vous?

Sérieusement, (je suis sûr que je plagie inconsciemment à partir de l'un de ces 3 fils), demandez-leur de jouer "donnez-moi des instructions sur la façon de faire Y", avec vous faisant les choses à la manière de Génie - tout est faux à moins que les instructions ne soient très précises et clair. En fait, mentionnez le génie comme un bon exemple en supposant que les enfants ont vu Aladdin.

; ^)

7
DVK

Faites-leur écrire des programmes courts pour que vous puissiez faire des choses simples (comme entrer dans la salle et prendre place), puis exécutez-les littéralement pour démontrer les "bugs" - où ils n'étaient pas assez spécifiques ou ne prenaient pas en compte quelque chose, donc que vous ferez mal les choses. Essayez de ne pas vous blesser dans le processus. Cela devrait être drôle et leur donnera une assez bonne idée de ce qu'est un algorithme.

7
MK.

Je pense que vous pourriez faire la démonstration suivante en 20 minutes. C'est peut-être plus adapté aux enfants plus âgés. Je ne sais pas vraiment de quoi les maternelles sont capables. J'éviterais personnellement d'essayer d'expliquer la programmation et décrirais plutôt un problème que nous, en tant que programmeurs, résolvons. Par exemple, s'il y a suffisamment d'enfants, vous pouvez leur montrer Internet de manière interactive.

Partie I: Comment ça marche

Décrivez-leur d'abord, de préférence avec des accessoires, comment fonctionne Internet. Apportez un ordinateur portable connecté par un câble (pour un effet visuel) à un routeur domestique. Expliquez comment les programmeurs informatiques fabriquent toutes sortes d'appareils, y compris les programmes sur l'ordinateur portable, le programme dans le routeur et les applications dans d'autres appareils connectés à Internet, comme les téléphones portables.

Expliquez comment les ordinateurs ne sont pas connectés directement les uns aux autres, car il est impossible de connecter un câble de chaque ordinateur du monde à chaque ordinateur. Vous auriez besoin d'un milliard de câbles dans votre maison. Donc, à la place, les ordinateurs se connectent aux routeurs. Et les routeurs transmettent des paquets de données (par exemple, des courriers électroniques, des photos ou des vidéos) à d'autres routeurs jusqu'à ce qu'ils parviennent finalement à l'autre ordinateur.

Décrivez les règles permettant à un ordinateur de parler à un autre:

  1. Un ordinateur ne peut donner qu'un paquet à son routeur.

  2. Un routeur peut transmettre un paquet aux ordinateurs qui lui sont connectés ou au routeur le plus proche.

Cette explication doit être très courte, mais insister sur les règles. Vous devriez probablement assimiler les paquets avec des e-mails ou des images.

Partie II: Temps interactif

Demandez ensuite à 3 enfants de se porter volontaires pour devenir routeurs. Tout le monde est un ordinateur et répartissez-les uniformément. Il serait utile d'avoir des cartes colorées qu'ils peuvent contenir. Comme la personne qui détient la carte bleu foncé, le routeur peut parler à toutes les personnes détenant des cartes bleu clair. Disons que vous distribuez des cartes bleues, rouges et jaunes.

Disposez les "routeurs" en ligne, bleu, puis rouge, puis jaune. Le routeur bleu devra alors donner un paquet au routeur rouge pour le donner au routeur jaune. Regroupez les autres enfants autour de leurs routeurs.

Apportez des "paquets" pour chaque enfant. Mélangez-le avec des photos, des lettres, une impression de tic-tac-toe pour symboliser un jeu, ou autre chose. Commencez par envoyer un seul ordinateur rouge à un ordinateur jaune.

"Ashley, choisis un ordinateur jaune auquel tu veux envoyer ta photo. OK, pour envoyer la photo à Brian, tu dois la donner à ton routeur, Kelly. Dis à Kelley qui devrait la prendre. Kelley, tu es bleu, donc vous ne pouvez pas donner la photo à Brian. Vous devez la donner à Timmy. Dites à Timmy qui devrait obtenir la photo. Timmy est rouge, donc il ne peut pas la donner à Brian. Il doit la donner à Renee. Renee , vous pouvez donner la photo à Brian car il est un ordinateur jaune et vous êtes le routeur jaune. "

Ensuite, demandez à chacun de penser à une personne à qui envoyer son "paquet" et regardez votre réseau impromptu en action.

Partie III: Retour à la programmation informatique

Pour conclure, demandez aux routeurs s'il était facile d'être un routeur, ou difficile car il y avait beaucoup de gens qui essayaient de vous donner des photos en même temps. Indiquez où les choses ont mal tourné et reliez-les à de vrais problèmes que nous résolvons.

"Je pouvais voir que Timmy était surchargé de paquets parce que tout le monde devait envoyer leur paquet par lui. En tant que programmeurs informatiques, nous devons résoudre des problèmes comme celui-ci tous les jours. Une façon de le résoudre est de donner des armes à Timmy 4. Ou peut-être d'ajouter un autre routeur de sorte que si Timmy a trop de paquets à livrer, vous pouvez le donner à un autre routeur. " Ou "Peut-être que nous voulons que les images soient distribuées plus rapidement, afin que nous puissions demander au routeur de livrer l'image avant de livrer tout autre paquet."

4
indiv

Pour emprunter aux autres idées déjà publiées, un jeu de Simon Says pourrait être le chemin à parcourir. Cependant, vous pouvez souligner comment les ordinateurs feront exactement ce que vous leur demandez de faire. Donc, si les enfants sont Simon, et ils disent: "Simon dit de s'asseoir." alors vous vous asseyez sur le sol (pas dans une chaise proche ou quoi que ce soit). Suivez les instructions à la lettre et non à l'esprit. (Bien sûr, cela peut être difficile d'amener les enfants à donner des instructions ambiguës, mais je suis sûr que vous pouvez trouver quelque chose.)

En dehors de cela, vous pouvez également parler de jeux vidéo ou d'autres "choses" informatiques que les enfants ont pu utiliser et vous pouvez dire que des programmeurs, comme vous, les créent. Et puis peut-être sauter dans le Simon Says pour montrer comment cela fonctionne. Bien sûr, cela pourrait faire en sorte qu'un groupe d'enfants grandit en pensant que vous passez toute votre journée de travail à jouer à Simon Says avec un ordinateur ...

3
JasCav

Lorsque j'essaie d'expliquer la programmation en peu de temps à des gens qui ne sont pas familiers avec la programmation, je l'explique en utilisant Legos. Avec Legos, vous avez un tas de pièces simples, c'est comme le langage de programmation. Ensuite, vous pouvez les assembler comme bon vous semble et faire tout ce que vous pouvez imaginer tant que vous avez les bonnes pièces.

Pour les adultes et les enfants, il s'agit probablement d'une analogie très intéressante et cela démontre toujours le concept de programmation.

De plus, vous pourriez même mal construire une voiture Lego, puis afficher également une voiture Lego avec un design très agréable, et leur montrer que la programmation est exactement comme ça. Vous pouvez programmer des voitures ou des robots ou tout ce que vous pouvez imaginer, mais il n'y a pas qu'une seule façon de le faire, il y a plusieurs façons de le faire. certains mieux que d'autres.

J'ai amené tant de gens à commencer la programmation et même à changer leurs majors avec cette analogie. :)

3
Kenny Cason

Je considère parfois mon travail comme jouer avec des briques Lego. Vous commencez avec un ensemble de briques de différentes tailles, formes et couleurs, et à partir de là, vous construisez des choses plus grandes. Vous pouvez construire des châteaux ou des robots star wars en utilisant le même ensemble de briques.

Et, c'est à peu près autant de plaisir!

3
user180326

L'un des principaux avantages de la programmation est la possibilité de créer des choses. Pour que les rêves deviennent réalité. Je ne pense pas que cela plaira beaucoup aux jeunes enfants qui n’ont aucun problème à laisser libre cours à leur imagination. Qu'est-ce que les ordinateurs apportent à la table?

Au lieu de cela, vous pourriez probablement les intéresser à la résolution de problèmes, aux puzzles. Le genre de réflexion nécessaire à la programmation. Je n'utiliserais probablement pas d'ordinateur du tout; laissez-les plutôt résoudre un puzzle mathématique captivant. Cela ne doit pas être difficile, mais cela devrait impliquer une pensée créative.

3
Konrad Rudolph

Expliquez à quel point la programmation informatique est omniprésente - elle guide les compagnies aériennes, les téléphones, les voitures, la façon dont vous achetez vos billets en ligne, etc.

Ensuite, apprenez-leur à écrire symboliquement un programme simple - 1. Tracez une grille sur le tableau noir.
2.Dessinez du fromage à une extrémité et une souris à l'autre extrémité. 3.Demandez-leur de "programmer" les moues pour obtenir le fromage!

Expliquez-leur leurs échecs en classe, peut-être que la souris tombe dans des pièges ou quelque chose dans la grille. Ils en ressentiraient le frisson.

2
Core

Je pense que je commencerais par parler pendant 2-3 minutes des ordinateurs, et qu'ils suivent les instructions sur ce qu'il faut faire.

Ensuite, je démontrais avec un robot LEGO Mindstorms préconstruit et le programmais plusieurs fois et l'exécutais, juste pour leur montrer qu'il suit le programme. La programmation de Mindstorms est assez visuelle et simple à comprendre.

Enfin, j'essayerais d'expliquer qu'il y a des ordinateurs qui exécutent des programmes presque partout, même dans les feux de circulation, les fours à micro-ondes et leurs jouets préférés.

2
Guge

Comment enseigner aux enfants ce qu'est la programmation?
Eh bien, la première étape impliquera probablement des vaches!
Téléchargez un jeu de programmation simple (comme IQ Marathon ) sur l'ordinateur portable et connectez-le à un projecteur. Pendant que vous faites cela, vous pouvez parler de la façon dont être programmeur signifie souvent travailler avec une technologie récente (et ainsi donner une démonstration de ce que vous faites).

Une fois que vous l'avez installé (pratique pour pouvoir le faire fonctionner en 5 minutes ou moins), vous pouvez utiliser le jeu pour montrer très visuellement (et avec des vaches!) Comment l'ordinateur ne fait exactement ce que vous lui dites, et comment vous (le programmeur) devez déterminer quelles instructions sont nécessaires pour le faire faire ce que vous voulez. Lorsque vous faites les choses correctement, tout le monde est si heureux de votre succès qu'il y a des vaches dansantes!
De là, vous pouvez répondre à toutes les questions, ou peut-être simplement laisser les enfants essayer de programmer eux-mêmes les vaches. Partout où ils veulent aller, vraiment.

Vaches!

2
Task

Donnez à chaque enfant une forme découpée; cercles, carrés, triangles, différentes couleurs, etc. Expliquez comment la programmation donne des instructions dans un ordre spécifique. Montrez une image d'un visage souriant et expliquez aux enfants comment le construire. Cercle jaune, point noir, point noir, arc. Montrez ensuite une image plus compliquée et demandez aux enfants de venir dans l'ordre en fonction de vos instructions. Vous pouvez même faire une erreur (comme placer le cercle jaune sur les points noirs) pour montrer comment les "bugs" se glissent dans un programme.

1
WombatPM

Montrez un robot lego mindstorm simple et son organigramme correspondant. Vous n'aurez alors pas à montrer n'importe quel code et ils pourront voir le résultat final de votre logique en regardant le lego exécuter votre programme.

1
Athens Holloway

Les enfants aiment les choses qui "font quelque chose" et les lumières clignotantes.

Pour l'anniversaire de mon fils, j'ai fait un coffre-fort (boîte avec serrure électrique et beaucoup de leds) qui était connecté au PC.

Ils avaient des questions à répondre et chaque réponse donnait lieu à des voyants clignotants (vert pour les bonnes réponses et rouge pour les mauvaises réponses). S'ils ont répondu correctement à suffisamment de questions, les leds ont commencé une animation simple qui s'est terminée par un "clonk" bruyant. Le coffre-fort était maintenant ouvert et ils pouvaient récupérer leurs récompenses.

C'était amusant à construire et les enfants ont adoré.

1
Toon Krijthe

Vendez-les sur la valeur de l'automatisation sans surveillance. Demandez à un enfant de marcher devant la salle et de montrer à la classe ce qu'il fait chaque soir quand il se brosse les dents. Demandez ensuite au même enfant de vous montrer ce qu'il ferait pendant cette période s'il n'avait pas à se brosser les dents.

Ensuite, dites à cet enfant que vous savez comment déplacer cette brosse sur ses dents pendant qu'il fait cette autre chose qu'il préfère faire, et dites-lui qu'il ne le ressentira même jamais. Ses dents seront simplement magiquement propres la prochaine fois que sa mère ira les inspecter.

Ensuite, écrivez peut-être un pseudocode sur le tableau noir qui montre l'API Brush accédant à la ressource Tooth dans un fil d'arrière-plan derrière l'activité favorite.

0
lance