45 votes

Suggestions pour le lancement d'un programme pour enfants

Selon vous, quels sont les langages et les outils qu'un jeune qui débute en programmation devrait utiliser à l'ère moderne ?

Beaucoup d'entre nous ont commencé avec des bases propriétaires et elles ne nous ont pas fait de mal à long terme :) mais étant donné les expériences que vous avez eues depuis et votre connaissance du domaine, y a-t-il de meilleures options ?

Il existe des questions connexes à celle-ci telles que " Les meilleurs moyens d'apprendre à programmer à un débutant ? " et " Un conseil "J'ai répondu à ces deux questions, mais les enfants pourraient avoir besoin d'un outil différent.

Révélation : il est sacrément difficile de choisir une réponse "correcte" à une question comme celle-ci, donc celui qui aura le meilleur score dans quelques jours recevra de moi la note de "meilleure réponse" basée sur le choix des communautés.

43voto

ejack Points 882

Je suggère LEGO Mindstorm Il offre une interface intuitive de programmation par glisser-déposer et, comme il est fourni avec du matériel, il constitue un élément tangible que les enfants peuvent appréhender. De plus, comme il s'agit de "LEGO", ils peuvent le considérer davantage comme un jeu que comme un exercice de programmation.

25voto

David Hicks Points 717

Mon travail de jour est dans une école, et au cours des dernières années, j'ai vu ou enseigné (ou tenté d'enseigner) à divers enfants, en nombre variable, des leçons de programmation.

Les enfants sont tous différents - certains apprennent vite, d'autres non. En particulier, certains ont de meilleures capacités de lecture et d'écriture que d'autres, et cela fait certainement une différence dans la vitesse à laquelle ils vont apprendre la programmation. Je parie que la plupart d'entre nous ici, en tant que programmeurs informatiques professionnels et le genre de personnes qui lisent et postent sur des forums pour le plaisir, ont appris à lire à un âge assez jeune. Pour ce genre d'enfants, et si c'est votre propre enfant à qui vous pouvez apprendre en tête-à-tête, vous pourriez faire pire que JavaScript - il a l'avantage de vous permettre de faire des choses réelles tout de suite, et le cycle d'édition-test consiste simplement à appuyer sur "rafraîchir" dans le navigateur. Cela devient confus quand vous commencez à vous heurter à la façon dont JavaScript fait tout de manière asynchrone, et c'est délicat à déboguer, mais pour un enfant brillant sous surveillance étroite, ces problèmes peuvent être surmontés.

LEGO Mindstorms est définitivement en haut de la liste. La plupart des écoles collent désormais les briques les unes aux autres pour créer des modèles préfabriqués dont les morceaux ne peuvent pas être arrachés, mais cela ne devrait pas être un problème à la maison. Sur le site du Times Educational Supplement (forum du site de l'hebdomadaire britannique consacré à l'enseignement), le sujet " quel langage de programmation est le meilleur pour les enfants ? " revient assez régulièrement. On y trouve beaucoup de recommandations pour Scratch comme alternative à Mindstorms - un peu plus de liberté que Mindstorms, mais probablement meilleur pour l'élève le plus brillant à qui l'on peut aussi donner un fer à souder.

J'ai constaté que les élèves les plus lents peuvent encore avoir des problèmes avec Mindstorms, même si l'environnement de programmation est "graphique" - il y a toujours beaucoup de choses qui se passent à l'écran, et il y a pas mal de choses à retenir (il s'agissait d'une ancienne version, je n'ai pas encore essayé la nouvelle version). D'après mon expérience, la meilleure introduction générale à la programmation reste probablement LOGO, qui est en fait un langage beaucoup plus puissant que ce que la plupart des gens lui attribuent. L'original Mindstorms de Seymour Papert (qui n'a rien à voir avec LEGO - ils ont piqué le titre du livre pour leur produit), l'un des créateurs de LOGO, est la référence canonique pour l'enseignement de la programmation aux enfants en tant que "compétence de réflexion" et pour le concept d'apprentissage de la programmation. Constructionnisme dans l'apprentissage.

Nous avons eu des classes d'enfants de 7 ou 8 ans qui programmaient LOGO. Notez que notre objectif n'est pas d'en faire des "développeurs de logiciels", c'est une carrière qu'ils peuvent choisir après 16 ans. À un jeune âge, nous essayons de les amener à considérer la "programmation informatique" comme un outil parmi d'autres - comment définir un problème à résoudre par un ordinateur, de la même manière qu'ils pourraient utiliser une carte mentale pour les aider à organiser et à se souvenir de choses pour un examen. Aucun enfant pauvre ne devrait être assis et entraîné à la minutie et à l'utilisation d'un langage particulier, on devrait le laisser explorer et comprendre les choses comme il le souhaite.

13voto

Eric Haskins Points 4214

Je suis d'accord avec les suggestions de Geoff, à savoir Phrogram (anciennement KPL) y Alice .

Ma seule autre suggestion est Lego Mindstorms NXT . Le langage de programmation du NXT est le glisser-déposer, il est très facile à utiliser et peut accomplir des tâches très compliquées une fois que vous l'avez appris. De plus, les jeunes garçons aiment généralement voir les choses bouger :)

J'ai utilisé Alice et NXTs avec de jeunes enfants, et ils s'y sont très bien adaptés.

10voto

Pour tout dire, je suis l'un des inventeurs du langage de programmation pour enfants, qui est maintenant http://www.Phrogram.com que d'autres ont recommandé ici. Permettez-moi d'ajouter quelques informations orientées programmeurs à son sujet.

Il s'agit d'un IDE de code, plutôt que de glisser-déposer ou de concevoir. C'était intentionnel de notre part - nous voulions qu'il soit facile et amusant de faire de la vraie programmation en mode texte, en particulier la programmation de jeux et de graphiques. C'est une différence fondamentale entre nous et Alice et Scratch. Le choix dépend de l'enfant, de son âge, de ses aptitudes et de vos objectifs. Les utiliser en série avec le même débutant peut être une bonne solution - si vous faites cela, je recommanderais Scratch, Alice, Phrogram dans l'ordre. Phrogram fonctionne mieux pour les enfants de 12 ans et plus, mais je connais des pères avec des enfants de 6 ans qui ont enseigné à leurs enfants avec ce logiciel, et je connais des enfants de 10 ans qui ont appris eux-mêmes avec ce logiciel.

Le langage est aussi proche de l'anglais que possible, et aussi minimal que possible. La sauce secrète se trouve dans l'hériarchie d'objets basée sur les classes, qui est aussi simple, intuitive et semblable à l'anglais que possible. L'hériarchie des objets est optimisée pour les jeux et les graphiques. Des modèles 3D sont disponibles, ainsi que des sprites 2D. Le mouvement absolu en utilisant les coordonnées de l'écran est supporté, ou le mouvement relatif comme les tortues de LOGO - Forward(x), TurnLeft(y).

L'IDE est livré avec plus de 100 exemples, certains exemples de langage (boucles), certains exemples d'apprentissage (tableaux), certains jeux et simulations entièrement fonctionnels (Pong, Missile Command, Game of Life).

Pour vous donner une idée de l'importance de l'utilisation du langage et de l'IDE, sachez qu'avec 27 instructions, vous pouvez faire voler un modèle de vaisseau spatial 3D dans une boîte à ciel 3D, à l'aide de votre clavier. Il faut 12 à 15 instructions pour faire de même avec un sprite 2D.

Nous travaillons sur une version de Phrogram compatible avec Blade qui permettra aux programmes de fonctionner sur la XBox 360. Oui, la XBox, sur votre grande télé. Une bonne façon de motiver un enfant à commencer :)

Phrogram prend en charge la programmation basée sur les classes, avec des méthodes et des propriétés, mais il s'agit uniquement d'encapsulation, et non d'héritage ou de polymorphisme.

Un tutoriel et un guide d'utilisation sont disponibles,

Mon propre ebook est disponible sur Amazon et d'autres sites en ligne, "Learn to Program with Phrogram !", et permet à un débutant de commencer par programmer le classique Pong.

Phrogram Programming for the Absolute Beginner, de Jerry Lee Ford, Jr, est également disponible, en livre de poche, sur Amazon et ailleurs.

10voto

cpuguru Points 857

Il y a deux possibilités :

Scratch - développé au MIT - http://scratch.mit.edu/

y

EToys de la célébrité de One Laptop per Child - http://wiki.laptop.org/go/Squeak

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X