Depuis plusieurs d'années, je m'intéresse à la programmation dans l'enseignement des mathématiques. Dans les années 80 et 90, j'ai donné des cours axés sur la programmation (en Logo, Pascal, et HyperTalk) à des futurs enseignants de mathématiques. J'ai par la suite enseigné la programmation dans des progiciels, comme les tableurs, les logiciels de géométrie dynamique, et les pages web : pour ce faire, j'ai été amené à créer des environnements tels LangageGraphique, algoGGB, et Expresso.
Cependant, malgré ma conviction profonde de l'intérêt de l'utilisation de la programmation dans l'enseignement et dans l'apprentissage des mathématiques, cette approche n'a pas suscité l'enthousiasme que j'espérais. Mais en 2017 et dans les années subséquentes, lors des Sessions de perfectionnement du GRMS, j'ai pu constater un engouement véritable pour la programmation chez certains animateurs et certains participants. Cet enthousiasme était soutenu par des environnements de programmation visuels tels Scratch et ceux de l'Heure du Code.
En examinant ces environnements, j'ai pu constater leurs avantages et leurs limitations. Bien sûr, la programmation à l'aide de blocs permet d'évacuer complètement certaines difficultés d'ordre syntaxique (comme l'oubli d'une parenthèse, ou l'emploi d'un point au lieu d'une virgule), et évite d'avoir à se souvenir de l'ensemble des commandes disponibles. Mais ces environnements me semblaient faits pour des jeunes du primaire et du début du secondaire.
J'ai donc voulu proposer un environnement de programmation pour les jeunes du secondaire, du cegep et de l'université, en pensant particulièrement, dans ce dernier cas, aux futurs maîtres en mathématiques. Un environnement de programmation visuel, mais qui peut déboucher (pour ceux qui le désirent) sur une programmation textuelle plus traditionnelle. Un environnement de programmation capable de créer un résultat élégant et utile : des pages web interactives.
C'est ainsi que j'ai créé p5Visuel. Mais je ne suis pas arrêté là : pour accompagner cet environnement de programmation puissant et facile d'emploi, j'ai créé une constellation de sites web consacrés à
- des exemples illustrant les possibilités offertes par p5Visuel
- une documentation interactive
- des exemples d'applications de p5Visuel au secondaire
- des problèmes à résoudre avec p5Visuel
- des modèles pour p5Visuel
- des activités d'apprentissage avec p5Visuel
- des nouvelles décrivant des ajouts ou des améliorations à p5Visuel
- une page Facebook permettant un dialogue autour de p5Visuel
- un site YouTube rassemblant des vidéos décrivant le fonctionnement de p5Visuel
Vous pourrez utiliser les menus ci-dessus pour avoir plus d'informations sur chacun des sites web que je viens d'évoquer. Vous pouvez aussi accéder à divers exemples créés par d'autres et utilisant p5Visuel, notamment
- une simulation d'une loterie simplifiée (Loto 3/10), par Martin Roy et Julien Beauséjour
- une explication du fonctionnement des astrolabes, par Louis Charbonneau
Soulignons que p5Visuel est un logiciel libre et gratuit. Mais il n'est pas l'oeuvre d'une personne seule. Pour le créer, je me suis basé sur plusieurs logiciels libres (dont p5.js, Blockly, MathJax, Visual Math Editor, jQuery, SAGE) et sur la mine d'information que constitue le web. Je tiens à remercier toutes les personnes qui, de près ou de loin, ont contribué à la création de p5Visuel.