NumWorks est une calculatrice permettant évidemment de faire des maths, mais aussi de découvrir la programmation. Une application Python est installée par défaut et les utilisateurs ont la possibilité de compiler leur propre firmware, l'intégralité du code source étant disponible. Pour toucher sa cible, la société compte sur les enseignants.
Fin août, alors que la rentrée des classes approchait à grands pas, NumWorks a décidé de lancer sa « calculatrice réinventée » à 79,99 euros sur Amazon et le site du fabricant. Il s'agit d'un projet collaboratif en partenariat avec des professeurs de lycée et s'adresse principalement aux enseignants et élèves. Elle est donc conforme aux programmes de l'Éducation nationale pour les sections générales, technologiques et professionnelles.
En plus des fonctions classiques de calculs, statistiques, suites, probabilités, etc. la calculatrice embarque une application Python permettant de rédiger des programmes et ensuite de les exécuter. Un simulateur est disponible en ligne pour la découvrir plus en détail. Enfin, elle dispose également d'un firmware personnalisable.
Romain Goyet, concepteur de la calculatrice – ancien développeur chez Apple et co-fondateur d'Applidium qu'il a depuis revendu – nous parle son projet open source et open hardware.
Aller plus loin que l'apprentissage des mathématiques
Pour monter son projet, il s'est entouré de plusieurs investisseurs français connus, dont Kima Ventures, le fonds de Xavier Niel, la Bpi et Fred Potter (co-fondateur de Withings et fondateur de Netatmo). Si le but d'une calculatrice est évidemment d'apprendre les maths au départ, NumWorks veut aller plus loin.
La jeune société souhaite « en profiter pour apprendre l'électronique, découvrir l'injection plastique, l'informatique et voir comment est fait un système d'exploitation embarqué ». Elle dispose actuellement d'une équipe d'une dizaine de personnes, principalement des ingénieurs.
Une calculatrice française assemblée en Chine
Au niveau des caractéristiques techniques, NumWorks n'est pas vraiment une révolution. Elle dispose en effet d'un écran LCD de 2,8 pouces avec 262 144 couleurs et une définition de 320 x 240 pixels. Elle est animée par un SoC ARM v7 à 100 MHz avec 1 Mo de ROM et 256 ko de SRAM.
La batterie de 1 620 mAh (rechargeable en USB) ne propose par contre qu'une autonomie de 20h en marche (plusieurs années en veille). Il ne faudra donc pas oublier de la recharger régulièrement, là ou d'autres proposent plusieurs semaines, voire des mois d'utilisation. Enfin, la coque de protection et le boîtier sont en polycarbonate.
L'assemblage de la calculatrice se fait en Chine, mais « avec des composants français » fabriqués par ST-Micro à Grenoble nous précise Romain Goyet. De plus, la conception, le dessin et l'ingénierie sont réalisés en France. « Pour ne pas polémiquer, on ne marque pas sur la boite et on ne dit pas que c'est un appareil français parce qu'on pourrait nous reprocher qu'il est quand même assemblé en Chine, mais en tout état de cause c'est tout à fait vrai de dire que la quasi-totalité de la valeur ajoutée de ce produit est faite en France » nous affirme son concepteur.
La calculatrice se veut simple à démonter avec six vis classiques et aucun clip. Les plans techniques (pour les parties matérielles et électroniques) sont disponibles par ici, permettant ainsi à tout un chacun de tenter une réparation ou une modification si besoin, voire de l'imprimer en 3D.
Un firmware entièrement personnalisable, sans risque de briquage
L'un des principaux éléments différenciant de la calculatrice vient de son firmware que l'on peut personnaliser « exactement comme on veut ». Il n'y pas de limite nous précise son concepteur : changer les couleurs, ajouter des applications, en enlever, les modifier, etc. Le code source est disponible sur GitHub, avec l'intégralité du système d'exploitation (baptisé Epsilon), des pilotes du clavier à la police de caractère.
NumWorks veut d'ailleurs fédérer une communauté autour de son projet afin que chacun puisse proposer des nouveautés ou des améliorations. La société souhaite « amasser le maximum de contributions » et mettre en place une offre à la carte pour les plus aguerris via des options activables ou non au moment de la compilation.
Ainsi, les développeurs pourront par exemple changer le thème par défaut jaune pour du bleu, simplement en modifiant un paramètre à la compilation. « En termes de binaires l'option ne sera pas visible, mais en termes de code source elle sera là » résume Romain Goyet. NumWorks promet d'ajouter des fonctionnalités à son firmware officiel « au fil de l'eau ».
Interrogé sur le risque de déployer un firmware mal compilé ou qui ferait planter la calculatrice, le concepteur se veut rassurant : « la calculatrice est imbriquable, ça faisait partie du design de l'appareil. Il y a un bootloader en ROM qui est non réinscriptible », il serait donc toujours possible de réinstaller le firmware d'origine.
Entre besoin d'uniformité pour les enseignants et envie de liberté
Malgré la mise en avant de la personnalisation, la société veut garder un message uniforme auprès de sa principale cible (lycéens et enseignants) et elle ne mettra donc en avant qu'un seul firmware. Ainsi, un professeur peut préparer un tutoriel avec des captures d'écran sans avoir à se demander si les élèves auront tous la même présentation.
Pour autant, tous ceux qui ont envie de personnaliser leur calculatrice n'ont pas forcément les connaissances pour modifier des paramètres et compiler un firmware maison. Nous avons donc posé la question d'un éventuel marketplace/forum pour mettre à disposition des firmwares personnalisés : « c'est une évolution qu'on a envie de mettre en place » selon Goyet.
Sur son site, NumWorks pourrait par exemple proposer une fonction de personnalisation du firmware (est-ce qu'il faut l'application probabilité ? Est-ce qu'il faut Python ? etc.). Il faudra néanmoins marier cette liberté avec l'unité souhaitée pour faciliter la tâche des enseignants.
Comment cohabitent mode examen et firmware personnalisable ?
NumWorks explique que sa calculatrice est conforme « à la nouvelle réglementation des examens de l'enseignement scolaire 2018, dont le baccalauréat ». Ainsi, un mode examen est présent dans les paramètres. L'activer supprime toutes vos données de la mémoire de la calculatrice et ne laisse que les applications. Un voyant rouge situé sur la tranche clignote, comme exigé par le ministère. Pour sortir du mode examen, il suffit de la brancher en USB à un ordinateur ou un chargeur.
Problème, avec un firmware personnalisable à volonté, cette protection peut rapidement et facilement être contournée, ne serait-ce qu'en ajoutant une option pour faire clignoter la diode sans autre action. NumWorks confirme : « si vous mettez un firmware maison dont la vocation est de tricher, et bien vous allez tricher », avant d'ajouter que « c'est exactement comme sur tous les autres appareils, vous pouvez installer des programmes dédiés à la triche qui vont contourner le mode examen ». Bien évidemment, la société nous précise qu'elle ne publiera jamais de firmware avec des modifications permettant de contourner le mode examen.
Rappelons qu'une fraude au bac peut entrainer deux types de sanctions suivant la gravité des faits. Administratives allant du blâme à l’interdiction de s’inscrire dans l’enseignement supérieur pour une durée maximale de 5 ans, et/ou pénales avec un emprisonnement de trois ans et une amende de 9 000 euros ou l'une de ces peines seulement.
Une application Python pour apprendre le code, mais le site manque d'exemples
Dans les applications installées par défaut sur le firmware officiel, se trouve Python, actuellement en bêta. La calculatrice précise « qu'il est possible que son utilisation soit limitée et que certains bugs apparaissent ». Un éditeur permet de saisir des lignes de codes ou d'en modifier... mais autant le dire tout de suite : ce n'est pas pratique avec le clavier de la calculatrice.
La seconde option permet d'exécuter le programme et de voir le résultat sur l'écran. Par défaut, la calculatrice propose de dessiner une fractale de Mandelbrot. Par contre, aucun autre exemple n'est disponible, que ce soit sur la calculatrice ou le site, ni même de tutoriel pour aider les professeurs qui ne sont pas tous experts en Python... mais « ça va venir » nous indique notre interlocuteur.
Deux principales communautés : développeurs et professeurs... et les utilisateurs alors ?
NumWorks propose un espace communautaire sur son site, mais réservé aux professeurs. La seconde se trouve sur GitHub et concerne donc les développeurs et contributeurs. Rien pour les lycées utilisateurs ? « Le support technique est assuré immédiatement par le prof. Ce sont nos intermédiaires » se justifie Romain Goyet. Dans tous les cas, un forum officiel est disponible sur Reddit.
Si la cible principale est les lycées, NumWorks compte bien les atteindre via les professeurs qui ont la liberté de leur méthode d'enseignement (ils doivent suivre un programme, mais sont libres des outils qu'ils exploitent, dans une certaine mesure évidemment).
Les enseignants de sciences et de mathématiques peuvent recevoir un exemplaire gratuitement, le but étant qu'un ou plusieurs sautent le pas et recommandent l'achat d'une calculatrice NumWorks à leurs élèves. Des tarifs préférentiels sont alors proposés, mais ils ne sont pas publics.
Pour rappel, la calculatrice est d'ores et déjà disponible sur Amazon pour 79,99 euros pièce.