{"partition": "head_middle", "source_domain": "www.framablog.org", "digest": "sha1:4OQP3SUTCNUY75NUH4WPUOESOETLVY2P", "path": "/lustre/fsn1/projects/rech/qgz/uzq54wg/processed_redpajama/base_processing/output/fr/2014-15/000_00002.parquet"}
CaRMetal : Entretien avec Eric Hakenholz
Par aKa
GPL,
Planet,
Sesamath
Derniers commentaires yves
(en complément au message précédent) à l'IREM de La Réunion nous travaillons beaucoup avec CaRMetal, et en ce moment sur l'algorithmique avec
Benjamin Clerc
Félicitations à Eric pour ce superbe travail, CarMetal a vraiment pris une autre dimension avec son travail, impressionnant ! Je vous invite à aller
Chapeau bas Eric. Chacune des nouveautés de CaRMétal (en particulier les toutes dernières) ouvrent de nouvelles perspectives riches et variées.
Derniers billets Apprendre le Web avec Mozilla Webmaker (4)
Si vous avez raté le début : Mozilla Webmaker est un ensemble d’outils ludo-éducatifs qui permettent à chacun de comprendre et de modeler le Web. Dans
Framasoft présente : Vosges Opération Libre, le 17 et 18 mai à Gérardmer
Le samedi 17 mai et le dimanche 18 mai à Gérardmer se déroulera un événement inédit dans la région Grand Est : Vosges Opération Libre. Il est ouvert
Bon anniversaire au Geektionnerd qui sévit sur le Framablog depuis janvier 2010 (quelques mois seulement après sa création). Vous pouvez retrouver
CaRMetal est un excellent logiciel éducatif de géométrie dynamique. CaRMetal est un logiciel libre (sinon d’ailleurs il n’aurait jamais vu le jour puisqu’il est directement issu du code source d’un autre logiciel libre). CaRMetal est développé et maintenu par un professeur de mathématiques français fort expérimenté qui a des choses à dire.
Autant de bonnes raisons de rencontrer Eric Hakenholz pour un entretien témoignage riche et intéressant.
Remarque : Le Framablog poursuit ici sa série de mises en valeur et en lumière de projets éducatifs libres et de ceux qui les portent.
Entretien avec Eric Hakenholz
Eric bonjour, une rapide présentation personnelle ?
Je suis professeur de mathématiques depuis 1989. J’ai passé mes deux premières années d’enseignement dans une école française installée dans un lycée public australien (Melbourne). Grâce à ce poste d’enseignant, j’ai eu la chance de pouvoir travailler dès 89 dans un environnement très informatisé et d’être témoin de nombreuses pratiques pédagogiques liées à l’utilisation du réseau (les nombreux Mac Plus de l’établissement étaient tous interconnectés). J’ai programmé là-bas mon premier logiciel Mac : un traceur de courbes et de surfaces, dont l’interface paraîtrait aujourd’hui bien désuète.
J’ai passé ensuite douze années dans l’académie de la Réunion, où j’ai « milité » pour l’utilisation du logiciel Cabri-Géomètre par le biais de formations et de publications (sites, journal bimestriel abraCAdaBRI, développement de l’utilitaire Cabri File Exchange). En 2004, en arrivant dans l’académie de Toulouse, j’ai cherché s’il existait un autre logiciel de géométrie dynamique, libre et gratuit cette fois-ci, qui puisse rivaliser avec la puissance et la pertinence de Cabri : j’ai découvert cette année-là le logiciel C.a.R. (Compass and Ruler).
Qu’est-ce que le logiciel CaRMetal ?
C’est un logiciel de géométrie dynamique, un environnement qui permet notamment d’explorer de manière interactive les propriétés géométriques des figures. Dans ce type de logiciel, les utilisateurs peuvent effectuer des constructions géométriques et déplacer les objets sur lesquels se basent la construction.
Pendant ces déplacements les propriétés sont conservées, et de nombreuses constatations peuvent surgir à ce moment-là : le simple mouvement des figures permet de mettre en évidence de nombreuses propriétés géométriques qui seraient passées inaperçues dans un environnement papier-crayon.
Lorsque j’ai découvert le logiciel C.a.R. de René Grothmann en 2004, je me suis aperçu qu’il contenait de nombreuses fonctionnalités très originales, avec une gestion très pointue des macro-constructions (possibilité de se créer des outils à partir de ceux déjà existants). Cependant, malgré tout l’émerveillement que me procurait la découverte des possibilités de C.a.R., je gardais un oeil assez critique sur la façon d’accéder aux fonctionnalités, sur l’interface utilisateur.
CaRMetal au départ (février 2006) était juste un « TP » motivé par mon envie d’apprendre le langage java. Mes années de programmation en Pascal et en C m’ont amené petit à petit à vouloir changer pour un langage objet multi-plateforme, sur un code qui puisse être exécuté aussi bien sur GNU/Linux, Macintosh ou Windows. Les sources du logiciel C.a.R., écrits en Java par un programmeur clair, rigoureux et doué, ont rempli à merveille leur rôle de tuteur pendant mes deux premiers mois d’apprentissage. Le but que je m’étais fixé au départ était de reprendre les algorithmes mathématiques de C.a.R. et de les installer dans une interface neuve, intuitive, et toute en manipulation directe. Les choses sont allées plus vite que je ne le pensais, et les premiers résultats m’ont encouragé à changer d’optique : ce qui n’était qu’un TP est rapidement devenu un vrai projet, que j’ai décidé de publier sur Internet et de mettre à jour régulièrement.
On développe aujourd’hui des interfaces avec le soucis de donner une réponse immédiate à l’action de l’utilisateur : on s’aperçoit qu’il est presque toujours possible, avec des efforts de programmation supplémentaires, de supprimer toute situation bloquante (comme un dialogue avec boutons ok ou appliquer) ou toute situation qui ralentirait l’action (comme l’obligation systématique de dérouler un menu et de chercher l’item). Développée dans ce sens, avec le soucis d’une organisation claire et rationnelle des outils, une interface graphique permet de travailler d’une façon beaucoup plus fluide, avec un gain de temps très sensible, et une impression de liberté pour l’utilisateur qui s’en trouve nettement améliorée.
C’est avec l’objectif de produire un logiciel qui réponde un peu à ces critères que j’ai programmé CaRMetal : les seules boîtes à dialogues qui existent sont celles relatives à l’enregistrement et l’ouverture des fichiers. En phase de construction ou d’édition des objets, aucun menu n’est à dérouler, l’accès aux fonctionnalités est sans étape intermédiaire et les modifications apportées à l’aspect des objets sont visibles immédiatement dans la fenêtre de travail.
Jusqu’en décembre 2007, je suivais de très près l’évolution du logiciel C.a.R. en incluant dans CaRMetal, version après version, les modifications que René apportait à son « moteur mathématique ». Mais à partir de cette date j’ai souhaité mettre la main sous le capot algorithmique, ce qui nécessitait l’abandon du copier-coller de C.a.R. vers CaRMetal, et plusieurs dizaines de fonctionnalités qui me tenaient particulièrement à coeur ont ainsi pu voir le jour.
En quoi se distingue-il des autres logiciels de la catégorie ? Je pense en particulier à Geogebra lui aussi libre et sous Java.
L’interface utilisateur de CaRMetal se distingue de celle des autres logiciels pour toutes les raisons évoquées précédemment. Certains utilisateurs me disent aussi que, pour leurs élèves, les retours vidéos systématiques ainsi que le caractère graphique des palettes et de l’inspecteur rend pratiquement nul le temps de prise en main du logiciel. D’autres, en général des adultes habitués à des logiciels différents, disent que l’absence de menus-boutons classés par types d’objets les perturbent : je laisse donc le soin aux utilisateurs de se faire leur propre opinion !
Bien sûr il y a de nombreuses fonctionnalités originales qui ne se retrouvent que dans CaRMetal, mais dire uniquement ceci serait oublier un peu trop vite que c’est aussi le cas pour d’autres logiciels de géométrie dynamique, comme Geogebra (je pense notamment à sa récente fonctionnalité « tableur » qui ne se retrouve nulle part ailleurs, du moins dans une forme très proche de celle des tableurs).
Comparer les fonctionnalités est un exercice assez subjectif : chacun peut faire son propre tableau avec en ligne le nom des logiciels, en colonne ses propres fonctionnalités, et ainsi faire apparaître une belle et unique ligne entièrement cochée… Je préfère de loin m’intéresser à l’ergonomie et l’expérience utilisateur, mais je vais tout de même essayer de faire une liste non exhaustive de quelques fonctionnalités "exotiques" de CaRMetal :
Les diaporamas : CaRMetal peut transformer automatiquement (en un seul clic comme disent les commerciaux) un dossier contenant des figures en un mini site web. En cliquant sur les liens de la page générée, on charge des applets qui correspondent à chacune des figures.
Les objets magnétiques : Cela permet notamment de créer un point sur plusieurs objets ou un point tout simplement attiré par un ensemble d’objets, conformément à une zone d’attraction définie en pixels par l’utilisateur.
Les contrôles systèmes : on peut inclure dans la figure des curseurs systèmes, des menus déroulants, des boîtes à cocher, des boîtes d’entrées numériques et des boutons poussoir.
Le JavaScript : un éditeur graphique permet de créer des scripts utilisant l’intégralité du langage javascript, enrichi de commandes liées à la pratique de la géométrie dynamique. Le logiciel permet de lancer un script et de l’annuler dans une figure.
Attribution automatique des noms de points : avec un tableau numérique interactif, il est assez gênant d’avoir à utiliser le clavier. Un dispositif d’attribution de noms permet de sélectionner à la volée et au stylet les noms qu’on veut donner aux objets.
Le mode « tableau numérique interactif » (TNI) : un stylet sur un tableau interactif ne se comporte pas tout à fait comme une souris. On perd la notion de mouse over et par conséquent bon nombre d’informations que donne la souris lors du survol d’objets d’intérêts (retours vidéos). Va-t-on par exemple, en cliquant, créer un point à une intersection, ou va-t-on louper sa cible et créer un point libre à côté ? En mode TNI, un cliquer-glisser équivaut à un survol de souris, et un lâché de stylet correspond à un clic de souris. Dans ce mode, sur un tableau interactif, on garde le même confort visuel et la même précision que lorsqu’on construit à la souris.
Les exercices : le formateur peut créer une construction-exercice avec comme objectif de faire construire un objet-cible (un orthocentre par exemple). L’élève doit effectuer la construction et s’il la réussit correctement, le message bravo ! apparaît. Dans ce type de figure c’est le logiciel lui-même qui s’assure que le travail a été effectué sans erreur.
CaRMetal dérive du logiciel C.a.R. (Compass and Ruler) développé par un professeur allemand. C’est parce que ce dernier était un logiciel libre que vous avez pu récupérer les sources et le modifier pour l’adapter à vos besoin. Que cela vous inspire-t-il ?
Certains informaticiens qui vivent en free-lance de leurs productions n’ont pas envie de produire des algorithmes ouverts, de peur que ce qu’ils programment ne soit immédiatement repris et vendu par d’autres. De peur finalement que le bénéfice de leurs travaux, pour lesquels ils ont dépensé beaucoup d’énergie et monopolisé beaucoup de connaissances, aillent dans une autre poche que la leur. Même si je ne fais pas partie de ce monde-là, je peux comprendre cette démarche de protection, par fermeture, dans des secteurs pointus dominés par les majors, les requins et la course au profit. Je préfère de très loin cette démarche cohérente à celle de nombreuses boîtes informatiques entièrement habillées chez Microsoft, et qui d’un autre côté ne jurent que par l’open source, en utilisant abondamment ce label dans le seul but de faire du dollars à grands coups de copier-coller. Concernant l’open source, les choses ne sont donc pas si simples et si manichéennes…
C.a.R. est un logiciel libre, et pas seulement open source : il est sous licence GNU-GPL et par conséquent CaRMetal l’est aussi. René Grothmann, le concepteur de C.a.R., a développé son logiciel dans une démarche d’ouverture et de partage : le véritable esprit du libre est-là, dans un comportement plus éthique et moral que purement technique. Reprendre les sources de René, les adapter suivant mes préférences, ajouter de nouvelles fonctionnalités m’a permis de créer un autre logiciel, qui a son tour peut être repris, et amélioré dans le même esprit.
L’idée du libre me fait penser au chanteur folk américain Woody Guthrie, qui, prenant le contre-pied des copyrights déjà en vogue à son époque, écrivait ceci en 1930 dans un recueil de chansons : This song is Copyrighted in U.S., under Seal of Copyright #154085, for a period of 28 years, and anybody caught singin’ it without our permission, will be mighty good friends of ourn, cause we don’t give a dern. Publish it. Write it. Sing it. Swing to it. Yodel it. We wrote it, that’s all we wanted to do.
Rares sont les enseignants développeurs de logiciels libres, êtes-vous reconnu et soutenu par l’Institution ? Est-ce important pour vous ?
N’ayant jamais aimé jouer les commerciaux, je n’ai jamais rien demandé à personne pendant ces quatre années de développement. C’est peut-être la raison pour laquelle je n’ai jamais eu aucun soutien, aucune reconnaissance de la part de ma hiérarchie institutionnelle ici, dans l’académie de Toulouse.
Lorsque je lis par exemple des présentations de CaRMetal comme celle mise en ligne par l’académie de Poitier, cela me fait bien évidemment plaisir, et je ne cacherai pas qu’