Merci pour ce retour ! C'est super d'en arriver à parler du tout premier programme ! (et bien sur, de lier ce programme à la machine qui devait l'exécuter).
Quel age ont les enfants ? Peux-tu nous en dire plus sur le contexte ? (dans une école, dans vos locaux, formation des groupes… tout quoi :-) car du coup cela pique ma curiosité Le 29 mars 2016 à 22:01, Nicolas Decoster < [email protected]> a écrit : > Bonjour, > > Avec un peu de décalage par rapport à la discussion, je vous fais un > retour sur notre expérience sur le sujet. > > Donc, lors de nos ateliers nous avons voulu également aborder ces notions. > Nous l'avons fait avec des enfants qui avaient une expérience pratique (un > dizaine d'ateliers Scratch). Voici ce que nous avons fait (et en rédigeant > ce mail j'ai un peu complété le déroulé). > > * On rappelle d'abord que cela fait pas mal de temps qu'on "code", qu'on > fait de la "programmation", qu'on parle d'"algorithme", de "code", etc. > Mais qui sait ce que tout ça veut dire exactement ? Et parmi ce qu'on fait > à chaque séance qu'est ce qui correspond à chaque notion ? > * On demande aux enfants de donner leurs idées sur la question. Il y a eut > une petite discussion. > * Ensuite, on indique qu'on va illustrer ces notions avec un exemple. > * On demande deux volontaires. On donne un feuille et un stylo au premier > (appelons le Alan) et on demande au second (appelons la Ada) de donner les > instructions à Alan pour qu'il dessine un carré. Cela a très bien > fonctionné : on sentait de l'amusement et de la curiosité sur l'exercice. > Il se trouve qu'Alan était très bien dans son rôle : il exécutait bêtement > les instructions d'Ada qui étaient un peu approximatives et on a obtenu un > rectangle pas très réussi... Son algorithme était bugué, on n'a pas eut le > temps de lui faire corriger (dommage, pour une autre fois on prendra le > temps), mais on le souligne. > * A ce stade on indique que l'ensemble des instructions données par Ada à > Alan constitue un algorithme. C'est un algorithme pour dessiner un carré. > Et on attire l'attention sur le fait qu'on n'a pas utilisé d'ordinateur > dans tout cela. > * Pour insister sur le fait que la notion d'algorithme est indépendante de > la machine, on précise que la racine de ce mot est une latinisation de "Al > Kwarizmi" qui est le nom d'un grand mathématicien perse du IXe siècle, une > époque où il n'y avait pas trop d'ordi... > * Mais ça n'empêche pas qu'on peut donner un tel algorithme à un > ordinateur pour que lui aussi dessine un carré. On est tous d'accord pour > dire que si Ada donnait oralement en Français ses instructions à > l'ordinateur il ne va pas se passer grand chose. L'ordinateur ne comprend > pas ce langage. > * Il faut trouver un autre moyen. Et, c'est toujours une évidence pour > tous le monde, le moyen est tout trouvé : Scratch. On l'utilise depuis > longtemps pour donner des instructions à l'ordinateur. C'est un langage que > l'ordinateur comprend. > * On montre un projet Scratch avec les instructions pour dessiner un > carré. Si on avait eu plus de temps on aurait pu faire coder cet algo par > les enfants. > * On indique que l'ensemble des blocs Scratch du projet est une > description de l'algorithme dans un langage ou un code compris par > l'ordinateur. On indique que Scratch est une possibilité parmi tant > d'autres pour coder un algorithme. En particulier on peut coder en mode > texte et on montre quelques exemples. A chaque fois il s'agit du même algo > mais qui est codé avec un langage différent que l'ordinateur peut > comprendre d'une manière ou d'une autre. > * On montre une version du projet où il y a un bug de "codage", pas un bug > d’algorithme (exemple : sans le bloc "quand le drapeau vert est pressé"). > Et on attire l'attention sur la différence entre un bug d'algo (exemple : > on oublie d'abaisser le stylo) et un bug de codage. > * A la fin, et pour reprendre la formulation de Samuel, on indique que ce > projet Scratch constitue un programme et que tout ce qu'on a fait pour le > construire constitue la programmation (d'ailleurs, du coup, je retirerais > la phase algorithmique de cette notion de programmation, on programme un > algorithme qui peut exister au préalable). > * En postface nous avons parlé d'Ada Lovelace et on a montré le code du > premier programme jamais écrit et la machine à qui il était destiné. > * Et une ouverture pour revenir sur le sujet serait de leur demander de > donner des exemples de cas où on utilise des algorithmes sans ordinateurs > (recettes de cuisine, instruction de montage, résolution de casse-tête...). > > a+ > > Nicolas > _______________________________________________ > Discussion mailing list > [email protected] > http://listes.jecode.org/cgi-bin/mailman/listinfo/discussion >
_______________________________________________ Discussion mailing list [email protected] http://listes.jecode.org/cgi-bin/mailman/listinfo/discussion
