====== Quels outils et langages utiliser ? ====== Vous avez essayé un outil de programmation ou un langage lors d'un Coding Goûter ? Cela a été un énorme fun ou au contraire c'était totalement inadapté ;-) ? Partagez votre experience en une ou deux phrases pour aidez les prochains à s'amuser en programmant. À compléter avec nos retours d'expérience sur ce qui marche, ce qui coince, à quoi ça ressemble, à qui ça plait… (A Big List : [[http://en.wikipedia.org/wiki/List_of_educational_programming_languages]] ) ==== Voici ce que nous avons déjà utilisé pendant un Coding Goûter ==== **RoboZZle. **Un jeu de logique et algorithmique. Les niveaux simples apprennent quand même séquentialité, fonctions et même récursion (appel d'une fonction par elle même). Pour tous, selon le tableau choisi. La plupart des niveaux sont des vrais casses-têtes, et ne sont pas conçus pour l'apprentissage.Une bonne entrée en matière, projeté au mur et résolu collectivement comme lors du premier Coding Goûter La version iPhone contient une excellente série de niveaux sur l'appel de fonction et la récursion, la pile d'exécution. Avec visualisation de la pile d'exécution, qui rend visible la récursion, et qui manque sur la version web. C'est une rareté partout ailleurs aussi, en fait. [[http://robozzle.com/]] (web Silverlight et javascript. une version iPhone gratuite existe) **Scratch. **Le classique, toujours un succès avec les plus jeunes, 5-7 avec un adulte, 7-12 en toute autonomie. Toutes les commandes, sous forme de pièces de puzzle, sont traduites en français (et de nombreuses autres langues)Plus que des jeux ou des programmes, les enfants s'en servent beaucoup pour faire des animations programmées, des jouets interactifs. Un réseau social de partage permet de diffuser ses création. La version 2 est basée sur Flash et peut être utilisé directement dans un navigateur. Cette version n'a pas encore été beaucoup utilisé pendant Coding Goûter. [[http://scratch.mit.edu/]] (win, mac, linux) **Selfless heroes.**Entre scratch (pour la programmation graphique) et robozzle (pour les énigmes). Ça devrait marcher à partir de 9-10 ans (à tester), et ça peut plaire aux adultes qui aiment bien se creuser la tête. Contrairement à scratch, l'instruction de saut permet de faire de la programmation non structurée, et permet de comprendre pourquoi on peut pas toujours à la fois optimiser la taille du code et sa vitesse. [[https://play.selflessheroes.fr/]] (sur le web : pas d'installation nécessaire) **Context Free. **Un langage qui permet en quelques lignes de générer des formes complexes et très belle.Les exemples de bases sont un peu complexes à comprendre, et sont surtout des prouesses visuelles incroyables. Des exemples plus simples à bidouiller seraient utiles. [[http://www.contextfreeart.org]] **LiveCodeLab.** Un outil de live code graphique et 3D totalement magique, qui marche dans un navigateur web. Une fois fois la page chargée, LiveCodeLab n'a plus besoin de la connexion internet.Son texte de grande taille le rend parfait pour travailler à deux ou trois devant un seul écran. Retour d'expérience sur la traduction : une version française a été mise en place spécialement pour un essai durant Coding Goûter par le développeur. Elle a été supprimée du site depuis. La traduction des commandes n'était pas vraiment utile. La traduction des tutoriaux par contre était très positive. Retour d'expérience sur le live coding : La modification la plus intéressante suite à Coding Goûter est l'ajout d'une option pour que le code reste affiché en permanence au lieu de s'effacer après quelques secondes : la disparition du code ne facilitait pas le travail à deux ou trois. [[http://www.sketchpatch.net/livecodelab/index.html]] **Game Salad. **Un outil pour créer des jeux iPhone, iPad et web. Il fonctionne sur des principes finalement assez similaires à ceux de Scratch, avec des acteurs, une scène, et des comportements. Une app spéciale pour iPhone et iPad permet d'envoyer et de tester son jeu immédiatement, ce qui est à la fois plaisant pour l'enfant et permet de faire des itérations et démo plus rapidement Céleste, 11 ans, l'a utilisé avec grand intérêt. À son second Coding Goûter, il est revenu en ayant travaillé chez lui, et il avait beaucoup progressé, et pouvait repérer lui même les bugs dans son projet. [[http://gamesalad.com/]] (mac) **Robomind.** **[retour de ceux qui l'ont utilisé ici !! ] ** **RUR-PLE.** **[retour de ceux qui l'ont utilisé ici !! ] ** **Kodu. ** ** [retour de ceux qui l'ont utilisé ici !! ] ** **Le jeu de la vie / Conway's Game Of Life. **Un classique. Fonctionne sur le principe des automates cellulaires, avec des règles très simple, mais est aussi en théorie capable de faire tous les calculs d'une machine de turing universelle / un ordinateur.Amusant pour par exemple explorer l'idée de système chaotique, où un changement d'une seule cellule peut faire basculer un système stable.On s'est aussi amusé à faire des batailles de gliders en séparant le terrain en deux zones ennemis. [[http://www.bitstorm.org/gameoflife/standalone/]] Simple et direct à utiliser (win, mac, linux, applet) [[http://golly.sourceforge.net/]] Ultra-complet et pro (win, mac, linux) **Xcode. ** Environnement de développement de Apple, pour Mac, iPhone, iPad. **[Utilisé avec un enfants de 10/11 ans pour aborder la création de jeu iPad --retour de Jonathan nécessaire ici :-) ] ** **Codea. ** Un environnement de programmation qui fonctionne entièrement sur iPad. Langage Lua, très utilisé dans le jeu vidéo. **[retour de ceux qui l'ont utilisé ici !! ]** **Javascript.** **[retour de Jonathan qui l'a utilisé ici :-) quel outils ? Un simple éditeur texte ? Firebug ? Le nouveau scratchpad javascript Firefox ? Les outils Hackausaurus ? ]** **Enchanting.** Pour programmer les briques LEGO NXT, et donc des robots physiques ! Basé sur Scratch, et donc avec une interface identique. L'article de Benoit où il raconte son utilisation lors du Coding Goûter. [[http://pbenco.wordpress.com/coding-gouter/]] **Computer Science Khan Academy. **Le langage Processing en livecoding dans le browser. Avec forking des projets et partage.Pas facile à utiliser en Coding Goûter, pour des raisons que nous n'arrivons pas exactement a définir. Sylvie, qui enseigne le Processing : "Un autre enfant a essayé sans trop de succès de détourner un Pong sur Khanacademy, mais à la fin de l'après-midi a déclaré vouloir faire du gamesalad s'il va à nouveau à un coding gouter" [[http://www.khanacademy.org/cs]] **Blockly4Thymio.** Blockly4Thymio, est un environnement de programmation pour le robot éducatif Thymio II. Cet environnement, basé sur blockly, est visuel, simple et ludique. Il est destiné à un jeune publique pour l'apprentissage de la programmation. Cet apprentissage se fait à l'aide de blocs colorés qui s'assemblent comme les pièces d'un puzzle. Malgré cette étonnante simplicité, les enfants découvrent et apprennent les bases de la programmation : les variables, les actions, les conditions, les boucles, les événements, etc... [[http://www.blockly4thymio.net]] **Minecraft**. On peut développer dans Minecraft, tous les fans vous le diront ! Eh oui, avec la redstone, on peut fabriquer des circuits logiques très similaires à des circuits électronique. Et c'est bien de la programmation. Il est possible également de coder textuellement, mais cela nécessite d'utiliser son propre serveur (ou un serveur déjà prêt à l'emploi comme [[http://gnancraft.net]]).