Début juin
NumWorks a lancé le bêta-test public de sa future mise à jour
19 de rentrée 2022 avec la version
19.0.0 datée du
2 juin, alors uniquement pour les modèles
N0110 ainsi que les testeurs du futur modèle
N0120.
Nous avions depuis eu droit à deux nouvelles versions :
- la 19.1.0 datée du 17 juin pour N0110 et N0120
- la 19.1.1 datée du 20 juin pour N0100
Un ajout était donc le support du modèle historique
N0100, remplacé par la
N0110 depuis la rentrée 2019.
Ce
7 juillet voici enfin la sortie de la version stable
19.2.0 mais pour les seules
N0110 et
N0120. L'ancien modèle
N0100 reste pour le moment avec la version bêta.
Découvrons ou redécouvrons-en ensemble les nouveautés.
Mais avant cela, parlons
N0100. Cet ancien modèle sorti pour la rentrée 2017 ne dispose que de
1 Mio de mémoire
Flash, et le
firmware officiel
Epsilon est bien évidemment devenu de plus en plus gros avec tous ses ajouts ces dernières années. Cela rendait l'intégration des ajouts apportés par les dernières mises à jour de plus en plus difficile.
NumWorks avait dû ruser lors des dernières mises à jour, par exemple en supprimant toutes les langues autres que le Français et l'Anglais lors de la
mise à jour 17.0.0 dès
novembre 2021.
Mais plus on gagne de la place et plus il devient difficile d'en gagner davantage. La dernière version
18.2.0 de
mars 2022 par exemple nécessitait
1015,584 Kio soit
99,17% de la mémoire
Flash de la machine.
Un problème fort complexe de sélection au kilooctet près des fonctionnalités que l'on décide de compiler ou pas qui explique justement le retard de cette version bêta pour
N0100, et sans doute l'absence de version finale stable à ce jour.
Cette fois-ci hélas pas de miracle, faute de place pour la première fois la
N0100 ne bénéficie pas de l'intégralité des nouveautés d'
Epsilon 19. Nous te préciserons le cas échéant ci-après.
La version
19.1.1 ainsi dépouillée de plusieurs des grandes nouveautés d'
Epsilon 19 nécessite
1015,938 Kio, soit
99,21% de la mémoire
Flash.
Le modèle
N0100 nous semble donc maintenant en fin de vie : il ne pourra pas
(ou juste très peu) recevoir de nouvelles fonctionnalités, sauf à supprimer d'autres fonctionnalités jugées moins importantes pour faire de la place. Ou alors, une solution serait que
NumWorks permette à l'utilisateur de sélectionner lui-même les fonctionnalités à installer ou pas lors d'une tentative de mise à jour. Mais le temps de développement nécessaire spécifiquement pour cet ancien modèle en voie de disparition en vaudrait-il vraiment la peine ?...
Egalement, avertissement d'importance si tu es muni(e) d'une calculatrice
N0110 et as installé les dernières versions des
firmwares tiers
Omega,
Upsilon ou
Khi intégrant un
bootloader.
Les
bootloaders tiers en question étaient conçus pour te permettre d'installer et basculer entre 2
firmwares, idéalement le
firmware tiers concerné et une copie récente du
firmware officiel
Epsilon comme illustré ci-contre, ce qui marchait parfaitement avec toutes les versions d'
Epsilon conçues pour s'amorcer sur un
bootloader, c'est-à-dire jusque-là les versions
16 à
18.
Sans surprise, cela ne fonctionne soudainement plus avec
Epsilon 19. Il est certes toujours possible d'installer
Epsilon 19 sur les
bootloaders tiers précédents avec le raccourci dédié
reset+4
mais le problème vient après :
Epsilon 19 refusera de s'amorcer sur ces
bootloaders tiers et selon le cas :
- te donnera un écran noir (cas des bootloaders Omega et Phi), avec le gros inconvénient de faire passer la machine pour éteinte alors que ce n'est pas le cas et donc de vider ta batterie.
- redémarrera sur l'écran d'erreur du bootloader (cas du bootloader Upsilon)
Il semble en effet que la mise à jour
Epsilon 19 intègre également une nouvelle version du
bootloader officiel qui :
- d'après des membres de la communauté Omega/Upsilon qui ont regardé de près change des choses dans le contexte de l'amorçage, notamment des horloges/fréquences, ce qui peut expliquer le plantage avec les bootloaders tiers
- et d'après nos propres tests ne permet plus d'installer/amorcer les anciennes version d'Epsilon disposant de la faille permettant de déverrouiller sa machine
Pour pouvoir installer et tester
Epsilon 19 sur ta machine, tu dois donc autoriser la réécriture du
bootloader en effectuant la mise à jour dans le contexte du raccourci
reset+6
.
C'est-à-dire que tu reverrouilles ta machine et perds ainsi à ce jour définitivement la liberté d'utiliser
Omega,
Upsilon et
Khi/KhiCAS.
Sommaire :Mais avant d'entrer dans le détail, commençons pour une fois par l'écran d'accueil, présentant la liste des applications officielles au nombre de 9.
Rappelons que l'écran de la
NumWorks n'est pas tactile. Pour lancer une application il fallait donc commencer par la sélectionner avec les touches du pavé directionnel, manipulation répétitive et longue qui n'était pas la plus agréable de la machine, avant de valider.
Les
firmwares tiers
Omega,
Upsilon et
Khi avaient pour leur part introduit des raccourcis permettant de lancer directement n'importe laquelle des 12 application intégrées, applications justement affichées en premier.
Les applications étant affichées sur 3 colonnes, les raccourcis utilisaient de façon fort intuitive le pavé numérique avec de haut en bas aussi bien sur le clavier qu'à l'écran :
shift
7
, shift
8
, shift
9
pour les 3 applications de la 1ère ligneshift
4
, shift
5
, shift
6
pour les 3 applications de la 2ème ligneshift
1
, shift
2
, shift
3
pour les 3 applications de la 3ème ligneshift
0
, shift
.
, shift
×10^x
pour les 3 applications de la 4ème ligne
Une amélioration jusqu'ici jamais reprise par le
firmware officiel
Epsilon.
Et bien nous y sommes, avec cette version
19 Epsilon rajoute enfin des raccourcis pour sélectionner et lancer rapidement n'importe laquelle des 9 applications officielles.
Ces raccourcis utilisent ici encore les touches numériques. Ils sont toutefois nettement plus agréables que les précédents, n'utilisant chacun qu'une seule touche. Et pour valider le lancement de l'application une fois sélectionnée même pas besoin de changer de touche, il suffit de taper une deuxième fois la même touche numérique !
Par contre, l'ordre de numérotation choisi est le sens naturel de lecture, totalement différent du choix précédent donc :
1
, 2
, 3
pour les 3 applications de la 1ère ligne4
, 5
, 6
pour les 3 applications de la 2ème ligne7
, 8
, 9
pour les 3 applications de la 3ème ligne
C'est regrettable car nous trouvons ce choix absolument pas intuitif, obligeant à un décompte mental lors de tes premières tentatives avant de peut-être à terme retenir tout ou partie des raccourcis par cœur.
Certes, l'on pourra nous objecter que c'est également le choix effectué par
Casio pour ses modèles
Graph 35+E II et
Graph 90+E.
Mais grosse différence, avec
Casio ces raccourcis non naturels sont clairement indiqués sur l'icône de chaque application.
A1) Transversal : boîte à outils et saisie (N0100, N0110 et N0120)
Go to topPlusieurs nouveautés sont transversales à l'ensemble des applications bénéficiant d'une intégration à l'environnement
Epsilon, c'est-à-dire à ce jour toutes à l'exception de l'application
Python. Cela concerne la saisie ainsi que la boîte à outils accessible via la touche dédiée.
Voici ici dans un premier temps les changements et ajouts communs à l'ensemble des modèles.
Niveau saisie il y a des changements sur l'ensemble des modèles, dont plusieurs qui nous laissent perplexes.
Jusqu'à présent comme chez la concurrence, on distinguait sur la
NumWorks :
- la variable i saisie via le modificateur
alpha
du nombre complexe i saisi via sa touche dédiée i
- la variable e saisie via le modificateur
alpha
du nombre e saisi via sa touche dédiée e^x
Impossible de les confondre visuellement.
Et pourtant malgré cela c'est fini, désormais peu importe la façon dont tu saisis les lettres
e et
i, si en minuscules elles seront toujours interprétées comme les nombres mathématiques.
C'est un changement fort curieux dont nous n'arrivons pas à voir l'intérêt. Cela fait que nous perdons définitivement 2 noms de variables usuels pour stocker des résultats. Dans un contexte purement mathématique l'utilisateur disposait des touches dédiées
i
et
e^x
pour une saisie immédiate de ces nombres, nous ne comprenons pas l'intérêt à aller embêter les utilisateurs qui faisaient le choix plus long de passer par la touche
alpha
exprès afin d'utiliser des variables. Cela fait maintenant plusieurs combinaisons de touches possibles pour saisir les mêmes nombres
e et
i au clavier, et donc des doublons...
Accessoirement, cela semble condamner un peu plus un éventuel retour un jour du formidable moteur de calcul littéral supprimé avec la mise à jour
11.2 si plusieurs lettres sont désormais inutilisables en tant que variables.
Effet de bord, les opérateurs de sommation et produit qui utilisaient jusqu'ici par défaut la variable
i comme itérateur, sont obligés d'en changer pour
k.
Si il s'agissait de faciliter la vie de l'utilisateur, et bien nous trouvons justement que c'est raté.
i est en effet très courant en tant qu'itérateur dans ce contexte, et l'impossibilité désormais de le choisir forcera l'utilisateur à s'embêter à transformer l'expression sommée ou multipliée en conséquence, on espère sans erreurs...
Du changement niveau multiplications implicites.
Par exemple la saisie
xln(5)
est maintenant interprétée en
x×ln(5)
.
Mais cela va beaucoup plus loin que ça. En fait lors de toute saisie ininterrompue d'une suite de lettres, la
NumWorks regarde désormais en mémoire les sous-suites de lettres en commençant par les plus longues correspondant à des variables déjà affectées, et interprète la saisie en conséquence en rajoutant les multiplications éventuelles.
Ici c'est mieux dans le sens où cela n'interdit pas de noms de variables, dans le sens où c'est toujours interprété intelligemment en fonction du contexte.
Par contre, cette façon de priviléger les variables déjà affectées nous semble une nouvelle fois entrer en conflit avec un éventuel retour un jour du moteur de calcul littéral.
La réutilisation de la dernière réponse dans la saisie d'une expression était possible via la touche
Ans
qui saisissait
ans
.
Cette saisie est maintenant modifiée en
Ans
de façon plus cohérente avec les instructions du clavier.
Justement lorsque tu commençais une saisie par un opérateur infixé, par exemple
+
,
×
ou
/
, la calculatrice comprenait que tu souhaitais faire intervenir le dernier résultat en tant que première opérande, et préfixait donc automatiquement ta saisie d'un
ans
.
Par contre ce n'était pas le cas lorsque tu commençait une saisie par
-
, car là il y avait ambiguité. Il pouvait s'agir :
- soit effectivement de l'opérateur infixé de soustraction comme dans
2-7
- soit de l'opérateur unaire préfixé de signe, comme dans
-5
Jusqu'ici, la machine interprétait systématiquement toute saisie commençant par
-
comme opérateur de signe, et si ce n'était pas la signification que tu avais en tête tu devais donc taper toi-même
Ans
avant.
Et bien maintenant tu as le choix. Si tu démarres une saisie en commençant par quelque chose que tu veux être l'opérateur infixé de soustraction, c'est désormais possible : il te suffira de taper
-
-
pour voir ta saisie préfixée de
Ans
. Une nouvelle fois pas de changement de touche, c'est fort bien pensé !
Contrairement à l'ensemble de la concurrence, jusqu'à présent la
NumWorks ne gérait pas d'objet de type liste. Tu avais bien les délimiteurs
{}
au clavier depuis le lancement à la rentrée 2017, mais en dehors de l'application
Python ils ne servaient strictement à rien.
Les seules choses pouvant être qualifiées de listes que tu avais étaient les colonnes des tableaux de données des applications
Statistiques et
Régressions.
Mais d'une part ce n'était pas une gestion complète de listes dans le sens où tu ne pouvais pas faire tout ce que tu voulais avec ces listes, uniquement les manipulations orientées permises par les applications en question. D'autre part, ces listes ne pouvaient être exploitées par les autres applications, un gros défaut d'intégration.
Et bien grande nouvelle,
Epsilon 19 apporte enfin une gestion transversale des objets de type liste !
La touche
var
te permettra de retrouver et exploiter l'ensemble des listes présentes en mémoire, peu importe l'application où elles ont été définies. Tu y trouveras donc aussi bien tes affectations de l'application
Calculs que tes remplissages de colonnes des applications
Statistiques et
Régressions.
La boîte à outils accessible avec la touche dédiée accueille également une nouvelle section concernant les listes.
On y trouve :
- de quoi saisir une liste manuellement comme au clavier
- la fonction dim() pour interroger la taille d'une liste
- ainsi que de quoi générer une liste par itération d'une simple formule !
Vu d'où l'on partait, un formidable travail d'intégration qui a clairement dû monopoliser une grande part du temps de développement de cette version
19. Félicitations !
A2) Transversal : boîte à outils et saisie (N0110 et N0120 uniquement)
Go to topRestons sur les nouveautés transversales à l'ensemble des applications en dehors de
PythonVoici maintenant les changements et ajouts spécifiques aux seuls modèles
N0110 et
N0120.
Concernant la nouvelle gestion des listes, la boîte à outils comporte ici bien davantage de fonctions dédiées.
D'une part dans
Opérations, en plus de la fonction
dim() nous en trouvons bien d'autres :
- min() et max() pour trouver le minimum ou le maximum d'une liste
- sort() pour trier les éléments d'une liste
- sum() et prod() pour calculer la somme ou le produit des éléments d'une liste
D'autre part, toujours pour une meilleure intégration, nous trouvons dans
Statistiques de quoi demander le calcul de différents paramètres d'une série statistique, mais ici sans avoir à passer par les applications
Statistique ou
Régressions !
Comme nous l'avons déjà dit maintes fois, l'application
Probabilités de la
NumWorks est absolument formidable. Elle permet d'interroger poser à la calculatrice directement dans la langue de l'énoncé plein de questions types sur une remarquable collection de lois de probabilités différentes !
Mais voilà, comme déjà évoqué plusieurs fois rien que dans cette partie elle souffrait du même défaut que bien d'autres choses, un manque cruel d'intégration, qui pouvait jusqu'à présent faire paraître la
NumWorks non pas comme un véritable logiciel intégré de Mathématiques, mais comme un simple agrégat d'applications diverses.
Sur les 9 lois de probabilités gérées par la calculatrices, seules 2 pouvaient être interrogées depuis n'importe quelle application grâce à la section
Probabilités de la boîte à outils : les lois binomiale et normale. Toutes les autres lois nécessitaient obligatoirement de passer par l'application
Probabilités.
Et bien ici encore il y a un net mieux, la boîte à outils permet désormais d'interroger 5 lois de probabilités différentes !
Les 3 nouvelles lois devenant utilisables de façon transversale à l'ensemble des applications sont les loi géométrique, loi de Student et loi de Poisson.
Bien que le symbole pourcent soit présent au clavier depuis le tout début à le rentrée 2017, la
NumWorks avait toujours refusé jusqu'à ce jour d'effectuer des calculs sur des pourcentages.
En dehors de l'application
Python, le symbole
%
ne servait donc à rien.
Et bien bonne nouvelle, les calculs de pourcentage sont dès maintenant gérés !
Tu peux entre autres :
- prendre une proportion d'une valeur par multiplication par un pourcentage
- appliquer une hausse ou une baisse à une valeur par simple addition ou soustraction d'un pourcentage
- combiner des hausses ou baisses par addition ou soustraction de pourcentages
Nous ne sommes toutefois pas convaincus que l'addition ou soustraction d'une valeur et d'un pourcentage soit une bonne chose pour la construction mentale des jeunes utilisateurs, ce raccourci d'écriture certes possiblement plus facile à saisir n'ayant pas de sens mathématique, ou du moins pas du tout le sens correspondant au résultat communiqué.
Puisque la calculatrice nous indique que
$mathjax$10\%=0.1$mathjax$
, pour nous
$mathjax$10\%+10\%$mathjax$
est la simple somme de deux nombres, donnant donc
$mathjax$0.1+0.1=0.2$mathjax$
et non pas
$mathjax$0.11$mathjax$
.
La
NumWorks nous introduit donc des pourcentages qui changent de signification/sens en fonction de la position dans la saisie
(l'addition étant pourtant une opération commutative), ou encore en fonction de si le pourcentage est affecté à une variable ou non.
Les opérateurs
+
et
-
changent eux aussi de signification en fonction de si ils sont utilisés avec un pourcentage ou pas, devenant des multiplications qui en prime n'ont pas la même priorité opératoire. Une saisie se terminant par
+10%
par exemple indique en réalité une multiplication par le coefficient
$mathjax$1+\frac{10}{100}$mathjax$
.
Des saisies pourtant toutes équivalentes sur les différents écrans précédents selon les règles des priorités opératoires, auraient dû donner le même résultat.
Les
$mathjax$10\%+10\%$mathjax$
et
$mathjax$10\%-10\%$mathjax$
qui changent de sens selon la façon dont on l'effectue, ou encore le
$mathjax$0+10\%\ne 10\%+0$mathjax$
... beaucoup de choses nous piquent les yeux rien que sur les quelques exemples des écrans ci-contre.
Ce choix certes original et innovant nous semble extrêmement dangereux. Déjà que nombre d'élèves ne maîtrisent pas les priorités opératoires même en Terminale, ont du mal à comprendre la différence entre le moins de soustraction
(opérateur binaire infixé) et le moins de signe
(opérateur unaire préfixé), ou encore dans le même style les différents sens du signe égal
(égalité entre deux objets comme dans $mathjax$\frac{1}{4}=0.25$mathjax$
, définition d'une notation comme dans $mathjax$\Delta=b^2-4ac$mathjax$
, affectation comme dans «soit $mathjax$x=42$mathjax$
», équation comme dans $mathjax$x^2=42$mathjax$
, ...), nous n'avons pas besoin de ça en prime. Autant de mauvaises constructions mentales induites auxquelles il faudra ensuite remédier, d'autant plus dans la douleur que les années de mauvaises pratiques passeront...
Nous avons interrogé plusieurs professeurs à ce sujet, et jusqu'à présent ils nous ont tous fait part de réticences.
Là où la
NumWorks était jusqu'à présent un modèle de rigueur mathématique, c'est très dommage de voir l'équipe ainsi céder ainsi aux sirènes d'une facilité qui n'est que d'apparence, vu les lourdes erreurs de construction mentale qu'elle génère en contrepartie pour qui n'a pas le recul suffisant pour comprendre toutes les nuances précédentes.
La concurrence pour sa part a fait le choix certes peut-être frustrant mais respectable de refuser d'interpréter la saisie de calculs avec des pourcentages, évitant d'induire la compréhension des élèves en erreur que ce soit dans un sens ou dans l'autre.
B) Application Calculs (N0110 et N0120 uniquement)
Go to topSur les seuls modèles
N0110 et
N0120, l'application
Calculs bénéficie d'une nouveauté absolument inédite dans le monde des calculatrices.
En effet lorsque tu effectues des calculs avec des unités et demandes des informations complémentaires sur le résultat obtenu, en fonction de l'unité tu pourras maintenant obtenir des comparaisons par rapport à des grandeurs de référence jugées suffisamment proches.
Mont Everest, tour Eiffel, piscine olympique, terrain de foot ou de tennis, océan Atlantique, la Manche, fosse des Mariannes, bouteille de pongée, grain de riz ou de sable, goutte d'eau, atome d'hydrogène, système solaire, la Lune, planète Mars, ballon de basket ou de foot, flash, pyramide de Khéops... c'est une formidable culture générale que renferme désormais ta
NumWorks, permettant de donner du sens aux résultats obtenus, d'en vérifier éventuellement la pertinence, et même de te faire remarquer favorablement par ton correcteur en en faisant mention ou encore mieux usage dans tes devoirs !
C) Applications Fonctions et Suites (N0100, N0110 et N0120)
Go to topContrairement à l'ensemble de la concurrence munie d'un écran couleur, les applications
Fonctions et
Suites ne te permettaient pas de choisir les couleurs des diverses représentations graphiques. Ces couleurs étaient choisies automatiquement par la calculatrice en fonction de l'ordre de saisie des définitions de fonctions ou suites associées.
C'était particulièrement contraignant dans le cadre du défi
#LesMathématiquesSontBelles organisé chaque année depuis maintenant 3 ans par
cent20.
Et bien excellente nouvelle, avec
Epsilon 19 tu as maintenant le choix !
Dans les options de ta définition, tu trouves maintenant une nouvelle entrée
Couleur, avec pas moins de 8 couleurs prédéfinies au choix : rouge, bleu, vert, jaune, magenta, turquoise, rose et orange.
Notons de plus une interface particulièrement bien pensée, à la fois intuitive et inclusive. En effet nous notons à droite un aperçu des couleurs montrant donc ce que ça va donner, et à gauche en écriture contrastée les noms de couleurs pour notamment ceux qui les percevraient mal :
D) Applications Statistiques et Régressions (N0100, N0110 et N0120)
Go to topLes applications
Statistiques et
Régressions partagent la même interface de saisie dans leur onglet
Données, permettant de saisir jusqu'à 3 séries statistiques.
Toute série dans tu entâmais la saisie était systématiquement prise en compte pour les calculs et représentations graphiques. Or, ce n'était pas toujours le comportement souhaité.
La seule façon que tu avais de faire ignorer une série statistique était d'en effacer les données. Or c'était fort embêtant d'avoir donc peut-être à ressaisir les mêmes données plus tard...
Et bien quand tu vas chercher le menu contextuel d'une série statistique
(sélection du titre d'une de ses colonnes puis validation avec OK
), tu disposes d'une nouvelle option pour désactiver
(ou réactiver) la série en question.
Il t'est donc maintenant possible d'ignorer une série sans avoir à l'effacer !
Mais ce n'est pas tout. Dans le cadre de la nouvelle gestion des listes, il y a du nouveau pour le remplissage d'une colonne à partir d'une formule.
Tu te vois maintenant présenter une série d'exemples préremplis dans laquelle tu es libre de piocher pour modification.
Et ces exemples incluent non seulement les opérations sur des colonnes qui étaient déjà possibles dans les versions précédentes
(par exemple V1=V2+V3
pour la somme de deux colonnes), mais également la génération de séries valeurs à partir de l'itération d'une formule comme vu plus haut.
E) Application Statistiques (N0100, N0110 et N0120)
Go to topVoici maintenant les changements spécifiques à l'application
Statistiques.
Les deux onglets de représentations graphiques
Histogramme et
Boîte sont fusionnés en un unique onglet
Graphique.
Basculer sur ce nouvel onglet te donne la possibilité de choisir le type de représentation graphique, avec certes
Histogramme et
Boîte à moustaches mais aussi 2 nouvelles possibilités :
- Fréquences cumulées pour le polygone des fréquences cumulées croissantes
- Loi normale pour un diagramme quantile-quantile
Une fois la représentation graphique affichée, une nouvelle ligne de menu permet d'en changer le type, et également de mieux mettre en avant les réglages qui n'étaient accessibles jusque-là qu'en tapant
OK
avec qu'un élément du diagramme était sélectionné.
Les histogrammes bénéficient en passant d'une amélioration de leur graphisme. Le nouvel affichage avec bordure est également une excellente chose du point de vue scolaire, mettant davantage en avant le fait que c'est l'aire des bandes qui représente les effectifs/fréquences pour les histogrammes, et non pas leur hauteur.
La légende subit également quelques changements. Bizarrement bien que la zone géographique de la calculatrice soit chez nous réglée sur
France, les intervalles abandonnent l'écriture française avec le
;
comme séparateur de valeurs, pour l'écriture internationale avec le
,
comme séparateur.
Grave erreur mathématique dans ce contexte, la nouvelle version affiche mal les intervalles dans la légende des différentes barres de l'histogramme.
Par exemple sur la série statistique ci-dessus, la légende de la 2
ème barre annonce
304 d'effectif pour l'intervalle fermé
$mathjax$\left[5;7\right]$mathjax$
, et non plus comme la version précédente pour l'intervalle semi-ouvert
$mathjax$\left[5;7\right[$mathjax$
.
Or si l'intervalle
$mathjax$\left[5;7\right[$mathjax$
inclut les valeurs
5 et
6 ce qui donne bien pour effectif
$mathjax$122+182=304$mathjax$
, l'intervalle
$mathjax$\left[5;7\right]$mathjax$
pour sa part inclut les valeurs
5,
6 et
7 ce qui donne comme effectif
$mathjax$122+182+272=576$mathjax$
. La légende est donc fausse, et ne doit surtout pas être comprise et recopiée en l'état.
Nous avions testé nombre de choses avec les versions bêta, mais en effet pas encore toute l'application Statistiques, le temps disponible d'un de nos administrateurs étant hélas encore grandement réduit, le pire étant que NumWorks en avait même été prévenu dans un courriel du 8 avril qui avait forcément été lu puisque suivi d'une réponse. Nous venons tout juste de nous rendre compte de ce problème en générant les captures d'écran pour l'annonce. Malheureusement, pour la première fois depuis des années et contrairement à son habitude, et encore pire dans la situation actuelle dont il avait pourtant été informé, le constructeur ne nous a cette fois-ci pas prévenu de la sortie par son habituel petit message quelques jours auparavant. Si cela avait été fait nous aurions pu nous organiser en conséquence, privilégier ces dernières captures d'écran à d'autres actualités, et peut-être ainsi découvrir et signaler le problème à temps. Espérons que NumWorks saura revenir à de meilleures pratiques dès la prochaine fois, dans l'intérêt de ses utilisateurs et donc par conséquent dans son propre intérêt.
Dans nombre d'annonces précédentes, nous louions de bonne foi la haute rigueur Mathématique de la
NumWorks par rapport à l'ensemble de la concurrence. Là cela nous fait mal de constater que nous sommes à l'extrême opposé de ces affirmations avec un affichage faux
(et donc grave pour les utilisateurs scolaires). Sur les calculatrices graphiques toute concurrence confondue, les affichages faux avec des versions censées être stables sont exceptionnels. Actuellement ils ne concernent à notre connaissance que les saletés bas de gamme
Lexibook/Esquisse qui ne devraient pas faire illusion, ainsi que de façon hautement plus scandaleuse vu son prix la
HP Prime dans laquelle
Moravia, la société ayant racheté la branche
HP calculatrices, ne semble pas vouloir investir grand chose. Mais pour
NumWorks, nous n'avons à la différence pas connaissance d'un contexte évident pouvant expliquer une erreur aussi grossière
(Troisième)...
Heureusement cette mise à jour sort après la période d'examens et on peut supposer que ce sera corrigé d'ici la rentrée s'il s'agit bien d'un
bug trivial d'affichage, mais quand même...
Les diagrammes à moustaches bénéficient également d'amélioration de leur graphisme. La sélection des différents paramètres décrits dans la légende y est bien plus visible.
Ce n'est pas tout. Les réglages mis en avant par la nouvelle barre de menu permettent de plus de choisir d'afficher ou pas les valeurs aberrantes :
Du nouveau maintenant spécifiquement dans l'onglet
Données.
Tu disposes d'une nouvelle colonne
ECC pour les effectifs cumulés croissants, dont tu peux activer ou désactiver l'affichage dans les options de la série
(touche OK
sur un titre de colonne).
Enfin du nouveau également dans l'onglet
Stats.
Nous bénéficions d'un nouveau paramètre de position, le mode, jusqu'à présent une exclusivité des calculatrices
Casio Graph.
Encore mieux que chez
Casio, il est ici accompagné de son effectif !
F) Application Régressions (N0100, N0110 et N0120)
Go to topDans l'application
Régressions, lorsque tu basculais sur l'onglet
Graphique, tu obtenais par défaut une régression linéaire.
Or ce n'était pas toujours un choix très pertinent.
Maintenant par défaut, tu obtiens un simple nuage de points sans régression.
C'est ensuite que tu choisis le type via l'option
Régression de la barre de menu.
Concernant la régression exponentielle, les différents modèles de calculatrices graphiques pouvaient proposer des formules différentes :
D'autres modèles proposaient même les deux formules :
Casio Graph,
Casio Classpad,
HP Prime et
Sharp.
Et bien à compter de cette version, la
NumWorks te propose les deux version de la régression exponentielle !
Justement ce n'est pas tout, un nouveau type de régression est également proposée dans la liste : la droite des médianes !
Autre problème. Les équations des régression étaient jusqu'ici présentées en légende de bas d'écran.
Ne pouvant être sélectionnées on ne pouvait pas les copier-coller, et leur réutilisation dans d'autres applications nécessitait donc de les recopier à la main sur un bout de papier avant de les ressaisir dans l'autre application.
Ce gros problème est maintenant corrigé. Désormais les équations ne sont plus présentées en légende, cette dernière étant donc allégée, mais accessibles via le menu contextuel
OK
dédié.
Via ce menu il devient enfin possible de les sélectionner et copier-coller !
G1) Application Probabilités (N0100, N0110 et N0120)
Go to topPassons maintenant sur les changements et ajouts relatifs à l'application
Probabilités, dans un premier temps communs à l'ensemble des modèles
N0100,
N0110 et
N0120.
Le test d'indépendance du
Khi² présente maintenant sur le premier écran de résultats un nouvel onglet avec les contributions à la valeur :
Toujours dans les test statisiques, passons maintenant au test
z à deux proportions.
Au premier écran de résultats, nous avons maintenant en prime les valeurs calculées de la proportion groupée :
Enfin, les intervalles de confiance disposent d'une nouvelle représentation bien plus pertinente dans le contexte d'intervalles, troquant sur l'écran conclusif le diagramme en cloche contre des segments.
Cela rejoint de plus une de nos propositions faite il y a déjà nombre d'années dans le contexte alors de l'ancien programme de Maths du lycées, à savoir avoir une application pour les intervalles de confiance et pouvoir y modifier le seuil directement sur l'écran de la représentation graphique afin d'observer directement son effet sur les résultats. On ne peut certes pas le modifier comme proposé, mais dans l'esprit cela rejoint le but, nous avons maintenant illustrés les segments correspondant à différentes valeurs de seuil autres que celle choisie.
G2) Application Probabilités (N0110 et N0120 uniquement)
Go to topRestons sur les changements et ajouts relatifs à l'application
Probabilités, mais maintenant pour les seuls modèles
N0110 et
N0120.
Nous disposons dans les tests statistiques d'un tout nouveau choix, le test de la pente d'une droite de régression :
H) Application Python (N0100, N0110 et N0120)
Go to topPassons maitenant enfin à la délicieuse application
Python. Rappelons que les interpréteurs
MicroPython ou similaires qui tournent sur nos calculatrices font appel à différents types de mémoires :
- La mémoire de stockage, qui contient physiquement tes scripts prêts à l'emploi.
- La pile (stack) qui référence, à l'exécution, les objets Python créés. Sa capacité limite donc le nombre d'objets Python pouvant coexister simultanément en mémoire.
- Le tas (heap) qui stocke, à l'exécution, le contenu des objets Python créés. Il limite donc la taille globale utilisée pour les données de ces différents objets.
Un défaut historique de la calculatrice
NumWorks, c'était son espace de stockage ridicule pour les scripts
Python, initialement
2.946 Ko extensibles jusqu'à
4,094 Ko en supprimant les scripts d'exemple préchargés.
La
mise à jour 1.8.0 de
Novembre 2018 avait quadruplé la capacité de cet espace, le passant à
16,382 Ko (15,243 Ko utilisables si l'on conserve les exemples préchargés).
Par la suite la
mise à jour 13.1.0 de
Mars 2020 avait encore doublé la capacité, la passant à
32,766 Ko (30,653 Ko libres si conservation des exemples intégrés).
Cela restait toute somme faite absolument ridicule, une capacité préhistorique tout juste digne des calculatrices qui étaient commercialisées au siècle dernier. Par exemple très concrètement, la
NumWorks était le seul et unique modèle sur lequel les scripts des deux défis de notre concours de rentrée 2021 ne pouvaient rentrer simultanément.
Avec cette mise à jour
19, le constructeur effectue encore un petit effort qui résout ce dernier problème.
L'espace de stockage libre passe à une capacité de
43,006 Ko, dont
40,893 Ko libres si l'on conserve les exemples !
Passons maintenant à la mémoire de tas
(heap). La bibliothèque
Python standard
gc permet de connaître la capacité exacte du
heap, d'un simple appel
gc.mem_alloc() + gc.mem_free()
. Toutefois toutes les calculatrices
Python n'intègrent pas ce module, et ce n'est malheureusement pas le cas de la
NumWorks.
Dans une véritable implémentation
Python, la bibliothèque
sys permet de connaître la taille occupée en
heap par les données d'un objet. Sur ordinateur 64 bits, quelques appels permettent de conjecturer les règles suivantes :
- entier nul : 24 octets
- entier court non nul (codable sur 31 bits + 1 bit de signe) : 28 octets
- entier long :28 octets + 4 octets pour chaque groupe de 30 bits utilisé par son écriture binaire au-delà des 31 bits précédents
- chaîne de caractères : 49 octets + 1 octet par caractère
- tableau d'octets : 33 octets + 1 octet par octet
- liste : 64 octets + 8 octets par élément + les tailles de chaque élément
- tuple : 40 octets + 8 octets par élément + les tailles de chaque élément
Sur
Micropython la méthode
sys.getsizeof()
n'est pas présente. On peut toutefois se baser sur les règles précédentes pour avoir une estimation de la taille occupée en
heap par les différents objets
Python.
Comme tu peux le voir,
Python est un très gros consommateur de mémoire
heap. Le moindre petit entier court consommera 28 octets et non pas un seul comme dans d'autres langages compilés. Et ne parlons même pas des types composés, la liste d'entiers étant une vériable catastrophe en terme d'espace gaspillé... Des 3 mémoires définies ci-dessus, le
heap sera le plus souvent le facteur limitant pour tes projets, sa capacité étant épuisé bien avant celle des autres mémoires.
Mais combien fait le
heap ? Voici une astuce reprenant les règles précédentes pour estimer la capacité
heap. Notre script va tenter de remplir la mémoire
heap. Il utilise pour cela plusieurs objets qu'il va tenter de faire grandir chacun son tour, jusqu'à déclenchement d'une erreur, et retourner alors la taille du plus grand objet alloué avec succès, normalement très proche de la capacité
heap maximale.
Voici donc le script :
- Code: Select all
def size(o):
t = type(o)
s = t == str and 49 + len(o)
if t == int:
s = 24
while o:
s += 4
o >>= 30
elif t == list:
s = 64 + 8*len(o)
for so in o:
s += size(so)
return s
def mem(v=1):
try:
l=[]
try:
l.append(0)
l.append(0)
l.append("")
l[2] += "x"
l.append(0)
l.append(0)
while 1:
try:
l[2] += l[2][l[1]:]
except:
if l[1] < len(l[2]) - 1:
l[1] = len(l[2]) - 1
else:
raise(Exception)
except:
if v:
print("+", size(l))
try:
l[0] += size(l)
except:
pass
try:
l[3], l[4] = mem(v)
except:
pass
return l[0] + l[3], max(l[0], l[4])
except:
return 0, 0
L'idéal est de lancer le script juste après l'initialisation de
Python, sans importation d'aucune autre bibliothèque, ou alors juste après avoir nettoyé la mémoire avec le ramasse-miettes
gc.collect()
, hélas non disponible sur
NumWorks. Cette méthode empirique ayant une part d'imprécis, on peut lancer le test plusieurs fois de suite et récupérer le meilleur résultat :
- Code: Select all
def testmem():
m1, m2 = 0, 0
while 1:
t1, t2 = mem(0)
if t1 > m1 or t2 > m2:
m1 = max(t1, m1)
m2 = max(t2, m2)
input(str((m1,m2)))
Historiquement la
NumWorks était une catastrophe en terme de mémoire
heap, la pire toute concurrence confondue avec seulement dans les
16K.
Avec la
mise à jour 13.2 le constructeur avait fait un effort, doublant la capacité avec dans les
32K.
Cela permettait certes de respirer un petit peu et entâmer des projets un peu plus ambitieux, mais cela restait malgré tout parmi les pires solutions toute concurrence confondue. Nos scripts
Python de concours de rentrée par exemple devaient bénéficier de versions spécialement allégées/optimisées pour pouvoir tourner sur
NumWorks.
Avec
Epsilon 19 le constructeur fait un nouvel effort, doublant encore la capacité avec dans les
64K ; nous avons trouvé au mieux
64,888 Ko.
Cela ne change certes pas radicalement le rapport de la
NumWorks face à la concurrence et encore moins son classement d'avant-dernier, mais au niveau où nous en étions c'est toujours très bon à prendre. Et au moins, cela largue encore davantage les modèles
TI-82 Advanced / 83 Premium CE Edition Python devenant de loin grands derniers avec leurs ridicules
19,7 Ko te laissant à peine de quoi commencer à coder tes propres fonctions une fois les bibliothèques graphiques importées.
Que dire de cette mise à jour
Epsilon 19 ?... Ce n'est pas notre préférée, nous sommes très partagés.
D'un côté nous ne pouvons que féliciter le travail sans doute très conséquent sur l'intégration. La NumWorks pouvait paraître initialement comme un agrégat d'applications cloisonnées, ne partageant des données au mieux que par copiés-collés. Cette fois-ci nous avons enfin les objets de type listes communs à l'ensemble des applications hors Python. Après 5 ans le retard d'intégration sur la concurrence Casio et TI nous semble enfin rattrapé, et Epsilon peut enfin commencer à être qualifié de logiciel intégré de Mathématiques !
Egalement les valeurs de référence qui donnent maintenant du sens aux résultats.
Ou encore la nette amélioration des capacités mémoire pour l'application Python qui comptaient jusqu'à présent parmi les plus limitées toute concurrence confondue, une formidable bouffée d'oxygène pour les projets !
D'un autre côté, nous déplorons un net recul de la rigueur mathématique qui n'avait pourtant jamais fait défaut au produit jusqu'à présent. Nous avons :
- d'une part l'invention d'une nouvelle notation des pourcentages qui dans un contexte scolaire pose bien davantage de problèmes qu'elle n'en résout... Nous avons à de nombreuses reprise vanté de bonne foi la haute rigueur mathématique du logiciel Epsilon par rapport à l'ensemble de la concurrence, et ces changements nous paraissent entrer en contradiction totale avec l'esprit que laissait initialement paraître le projet. C'est curieux, le but serait-il de prendre une part du marché des calculatrices financières sans sortir de produit spécifique ?... Calculatrices scientifique et financière sont pourtant des antagonistes pour nous, et si l'on ne souhaite pas sortir des modèles distincts alors il faut scinder clairement la chose avec une application financière dédiée.
- et d'autre part les erreurs nouvellement affichées par l'application Statistiques
Pour ce dernier point on peut toujours excuser
NumWorks en tenant compte du contexte, la sortie du
jailbreak Phi ayant visiblement induit le lourd développement de nouvelles sécurités. Pour le reste y aurait-il eu des changements au sein de l'équipe avec l'introduction d'acteurs nettement plus éloignés des problématiques pédagogiques et didactiques de l'enseignement des Mathématiques ?... Il reste malgré tout surprenant que ces deux points aient pu passer en l'état dans une version stable, interdisant de plus tout retour à une version précédente.
Entre les deux nous avons la formidable collection de nouveautés mineures parfois très pointues en statistiques et probabilités, déjà amorcée par les mises à jour précédentes, fonctionnalités dont nous n'avons que faire au lycée français. Les anciens programmes du lycée avaient bien trop exagéré là-dessus, entraînant l'enseignement de nombre de formules
(loi Normale, intervalle de confiance, intervalle de fluctuation, ...) à des niveaux où l'on ne pouvait non pas les démontrer mais au mieux que les montrer, transformant ainsi l'enseignement des Mathématiques au lycée en un enseignement de Maths appliquées. Ce n'est heureusement plus le cas avec les derniers programmes, la part des statistiques et probabilités a été nettement réduite. Mais au-delà de cela la réforme du lycée et du Baccalauréat fait que les statistiques et probabilités ne concernent même plus l'ensemble des élèves. L'introduction maintenant de tout ceci paraît ainsi totalement anachronique ; ce n'est clairement pas pour nous que
NumWorks développe tout cela. Peut-être est-ce nécessaire en Amérique du Nord par contre, le nouveau marché dont
NumWorks tente de prendre une part, et vu la taille du marché nous comprenons qu'une part du gâteau même infime soit importante.
Mais justement, à côté de cela
Epsilon souffre encore de lourds manques en France par rapport à la concurrence : absence d'une application tableur, d'une application de tableau périodique des éléments, ou encore du calcul littéral et formel. Il serait bon que le constructeur recentre une partie de son équipe de développement sur les besoins français.
Le comble dans l'histoire, c'est que nombre de ces manques était paliés par des
firmwares tiers via le
jailbreak Phi dont l'installation est visiblement farouchement combattue. Si c'est donc pour nous interdire d'installer ces solutions non officielles, la moindre des choses serait de se concentrer au plus tôt sur l'intégration de solutions officielles équivalentes.
Espérons donc que la prochaine mise-à-jour majeure s'attaque à ces points, car de nouvelles applications officielles/embarquées seront
(sauf surprise) toujours mieux intégrées et puissantes que les applications tierces externes, même si
NumWorks vient de les améliorer quelque peu ces dernières semaines... mais nous nous plongerons dans ce sujet dans un prochain article.