GCompris sort en version 0.97

Posté par . Édité par ZeroHeure, palm123, Davy Defaud, Pierre Jarillon, Julien Jorge et Ysabeau. Modéré par Pierre Jarillon. Licence CC by-sa.
Tags :
51
27
déc.
2019
Éducation

Nous avons le plaisir de vous annoncer la publication de la version 0.97 de GCompris, le logiciel éducatif pour les enfants de deux à dix ans.

Cette nouvelle version contient entre autres deux nouvelles activités : base de programmation et base de tangram. GCompris propose plus de 150 activités, dont des jeux, toujours avec un objectif pédagogique. Lecture, mathématiques, sciences, géographie et découverte de l’ordinateur sont les thèmes abordés par ces activités. Cette nouvelle version rajoute pas mal de petites nouveautés.

Logo de GCompris

Sommaire

Côté technique

Intégration dans KDE

Suite au changement de technologie en 2014, GCompris a rejoint KDE. En plus de profiter de l’infrastructure déjà mise en place (Git, Phabricator, Jenkins…), nous bénéficions de l’aide des équipes de traduction qui fournissent un travail considérable afin de traduire les logiciels dans plein de langues (GCompris). Nous essayons aussi de participer à divers programmes (en fonction des disponibilités des encadrants potentiels) : le Season of KDE, le Google Code‑in et le Google Summer of Code.

Architecture

Étant donné le but du logiciel (pouvoir ajouter des activités facilement), nous avons dès le début opté pour une solution à base de greffons. Les activités sont codées en QML et JavaScript et un code en C++ permet, entre autres, de les charger au démarrage. L’avantage est qu’on peut garder une grande indépendance entre les activités, mais il y a la possibilité « d’héritage » afin d’avoir une même base pour plusieurs activités (par exemple, tous les jeux de mémoire sont basés sur un même code).
Un cœur contenant les éléments communs et non spécifiques à une activité est aussi présent, ce code étant un mix de QML et C++ selon les fonctionnalités.

Pour le QML, il y a tout ce qui est graphique :

  • style des éléments graphiques (boutons, combobox…) ;
  • boîtes de dialogue de configuration, d’aide ;
  • le clavier virtuel (à voir si remplaçable par celui de Qt fourni sous licence libre depuis Qt 5.7) ;
  • la gestion de la police d’écriture…

Pour le C++, la gestion en interne des onnées :

  • la classe de base des activités ;
  • la configuration de GCompris ;
  • la gestion du téléchargement des fichiers de ressources ;
  • la lecture de fichiers et dossiers.

Nous sommes toujours sur du C++11, QML, JavaScript pour les langages, Qt (version 5.6 minimale) pour l’interface graphique et CMake pour le système de compilation multi‑plate‑forme (> 3.0).

QtQuick.Controls étant déprécié depuis 5.11, l’une des prochaines étapes est de passer à QtQuick.Controls 2 qui a été introduit en Qt 5.7. Cela devrait aussi permettre de gagner en performance (https://doc.qt.io/qt-5/qtquickcontrols2-differences.html). La majorité des composants (boutons, barres d’avancement…) a été migrée facilement, il reste deux composants plus compliqués à changer :

  • le calendrier était un composant prêt à l’emploi en QtQuick.Controls 1 mais n’existe pas en QtQuick.Controls 2, il faut utiliser les labs et le recréer à partir de ses différentes parties ;
  • la StackView, dont nous nous servons pour passer du menu à une activité et afficher les différents panneaux d’aide, n’a pas la même interface entre les deux versions.

Une autre grosse étape est d’avoir des jeux de données spécifiques par activité. Le but étant d’avoir une meilleure granularité sur la difficulté et d’adapter une même activité à plusieurs tranches d’âge. Par exemple, sur l’activité pour apprendre à lire l’heure, avoir des premiers niveaux avec seulement les heures affichées, puis rajouter les minutes et enfin les secondes.

Des images décrivant la future interface sont disponibles si vous êtes enregistré sur Phabricator. Ce gros travail avance en grande partie avec les différents programmes (Season of KDE et Google Summer of Code) où nous proposons en sujets principaux d’ajouter la gestion des jeux de données et de les coder. Cela nous permet de préparer le terrain pour un mode serveur/administrateur où les professeurs pourront directement envoyer les différents jeux de données souhaités sur les tablettes ou PC des élèves afin de mieux les faire progresser.

Grâce à CMake et Qt, GCompris est disponible sur les plates‑formes :

Site Internet

Le code est aussi hébergé par KDE. La génération du site Internet est basée sur le logiciel Python Jinja qui génère un site statique. A partir des différents modèles (page d’accueil, page de captures d’écran, flux RSS…), nous générons pour chaque langue la page traduite associée : à chaque nouvelle version du logiciel, nous créons une page HTML contenant le texte (par exemple, en anglais). Un script Python convertit cette nouvelle en .po, format utilisé par les traducteurs afin qu’ils puissent traduire avec leurs logiciels préférés (et ne pas avoir à écrire du HTML directement). Un deuxième script reconvertit le .po en .html afin de pouvoir être affiché.

Ressources associées au logiciel

Nous utilisons un troisième dépôt Git afin de stocker toutes les ressources facultatives à l’application qui peuvent améliorer son utilisation. Il contient l’ensemble des images utilisées dans l’activité de vocabulaire, ainsi que les voix associées par langue (si un contributeur les a enregistrées). Au niveau des voix, il y a aussi les introductions des différentes activités, les pays pour l’activité de géographie ainsi que les couleurs et les chiffres ou lettres.
Nous avons aussi rajouté dans cette version 0.97, les musiques de fond, qui ont été mises à jour par rapport à la version GTK+ et sont aussi mises dans ce dépôt. Cette fois, ce sont des scripts Bash qui permettent de générer les fichiers rcc pour qu’on puisse les utiliser dans GCompris. Pour les fichiers audio, la particularité est de devoir convertir les fichiers OGG en MP3 pour Windows et en AAC pour macOS, car ces plates‑formes ne prennent pas en charge le format OGG par défaut.
Un script Python, enfin, permet de générer la page qui donne l’état des lieux des voix et traductions par langue.

Nouvelles activités

Une activité pour apprendre quelques bases sur la programmation : à partir de quelques instructions simples (avancer, tourner à 90°), il faut aider Tux à atteindre le poisson.
Programming maze

Une activité pour comprendre les bases du tangram : il s’agit en fait des premiers niveaux de l’activité de tangram mis dans une activité spécifique pour les plus jeunes.
Baby tangram

Traductions

La traduction du logiciel a été faite en macédonien. GCompris est, dans cette version, entièrement traduit dans vingt langues (anglais britannique, basque, breton, catalan, chinois traditionnel, espagnol, français, galicien, grec, italien, macédonien, malayalam, néerlandais, polonais, portugais, portugais du Brésil, roumain, slovaque, suédois et ukrainien). Il est partiellement traduit (plus de 50 %) dans quinze langues : allemand (96 %), biélorusse (65 %), catalan de Valence (95 %), chinois simplifié (66 %), écossais gaélique (67 %), estonien (93 %), finnois (86 %), hongrois (95 %), indien (73 %), indonésien (95 %), irlandais gaélique (78 %), norvégien (93 %), russe (76 %), slovène (54 %) et turc (95 %). Pour la prochaine version, nous retirerons les langues qui n’ont pas un pourcentage de traduction assez élevé ou non maintenues (80 %).

Autres changements

  • des nouvelles voix américaines ;
  • ajout du jeu de données en malayalam pour l’activité « Jeu de lettres » ;
  • ajout du jeu de données en breton pour l’activité « Les mots qui tombent » ;
  • des sous‑catégories pour mieux organiser les activités par thème ;
  • des musiques de fond (comme dans l’ancienne version GTK+) ;
  • des options pour modifier le volume pour les effets audio ;
  • une configuration pour changer la vitesse de défilement des éléments dans plusieurs activités (lettres qui tombent, lecture horizontale/verticale, nomme la note) ;
  • l’affichage des pièces capturées dans le jeu d’échecs ;
  • de nouvelles images et améliorations de layout pour plusieurs activités ;
  • les fichiers de ressources (données) sont maintenant sur un serveur KDE.

Aller plus loin

  • # Correction de la visibilité sur phabricator

    Posté par . Évalué à 4 (+3/-0).

    Je viens de modifier la visibilité de https://phabricator.kde.org/M146 pour que ce soit visible sans être connecté.

  • # lost in translation

    Posté par . Évalué à 6 (+4/-0).

    C'est un peu le foutoir dans l'énumération des traductions du programme. C'est tout con mais la traduction de l'anglais vers le français a cassé le classement alphabétique du coup le portugais du Brésil est placé bien avant le le portugais (du Portugal celui-là je suppose). Pareil pour l'énumération des traductions partielles.

    Plus important car frôlant l'incident diplomatique : Autant pour "l'indonésien" on comprend que c'est le standard bahasa indonesia mais parler de "norvégien" au singulier c'est incorrect vu qu'il y a deux standards officiels en Norvège et à en croire le menu de langues du site Web ce serait le Nynorsk.
    Même chose pour "l'indien", ça n'existe pas et pareil selon le site Web c'est de l'hindi dont on parle.
    C'est pourtant correct sur la news du site Web qui date du début du mois.

    Sinon, vu qu'il y a des trads pour le catalan, le valenciennois et le basque, ne serait-il pas plus convenable de parler d'espagnol castillan au lieu d'espagnol tout court ?

    • [^] # Re: lost in translation

      Posté par . Évalué à 4 (+3/-0). Dernière modification le 28/12/19 à 08:39.

      J'ai aussi bloqué sur l'indien en lisant. Je n'étais pas au courant pour la Norvège.

      Pour l'ordre j'ai aussi trouvé ça gênant, mais c'est un tri sur le taux de traduction qui m'a paru le plus logique (en plus il est indépendant de la langue de la news ;-)

      Où as-tu vu que c'était une traduction ?

      • [^] # Re: lost in translation

        Posté par . Évalué à 4 (+2/-0).

        J'ai aussi bloqué sur l'indien en lisant.

        Surtout qu'en plus de l'hindi il y a aussi le malayalam qui est aussi une langue d'Inde.

        Pour l'ordre j'ai aussi trouvé ça gênant, mais c'est un tri sur le taux de traduction qui m'a paru le plus logique (en plus il est indépendant de la langue de la news ;-)

        J'avoue que moi aussi le tri par taux de trad me parait le plus logique mais l'ordre alphabétique c'est aussi logique, surtout que les taux sont indiqués entre parenthèses.

        Où as-tu vu que c'était une traduction ?

        C'est une déduction. Ce qui m'a mis la puce à l'oreille que c'est une trad de l'anglais c'est le fait qu'il n'y a que quelques différences et en faisant la traduction dans le sens inverse, l'ordre alphabétique est bien respecté :

        basque, portugais du Brésil (Brazilian Portugese), breton, anglais britannique (British), catalan, chinois traditionnel, néerlandais (Dutch), français, galicien, grec, italien, macédonien, malayalam, polonais, portugais, roumain, slovaque, espagnol (Spanish), suédois et ukrainien

        biélorusse (65 %), catalan de Valence (95 %), chinois simplifié (66 %), estonien (93 %), finnois (86 %), allemand (German) (96 %), indien (Hindi) (73 %), hongrois (95 %), indonésien (95 %), irlandais gaélique (78 %), norvégien (93 %), russe (76 %), écossais gaélique (Scottish) (67 %), slovène (54 %) et turc (95 %).

        • [^] # Re: lost in translation

          Posté par . Évalué à 5 (+4/-0).

          Bonsoir,

          J'ai aussi bloqué sur l'indien en lisant.

          Oui, ce sont deux erreurs de ma part, je viens de me rendre compte que j'ai copié à partir de la précédente news qui contient les erreurs plutôt que du site (en plus, c'est moi qui ait aussi traduit sur le site…).
          C'est bien l'hindi et le norvégien nynorsk.

          C'est une déduction. Ce qui m'a mis la puce à l'oreille que c'est une trad de l'anglais c'est le fait qu'il n'y a que quelques différences et en faisant la traduction dans le sens inverse, l'ordre alphabétique est bien respecté :

          En général, on fait la note en anglais puis on traduit en français.

          Je note pour la prochaine fois de mettre aussi dans l'ordre alphabétique français.

    • [^] # Re: lost in translation

      Posté par . Évalué à 0 (+1/-1).

      Le parler valenciennois  ?
      Celui qui influence le wallon méridional et le chti oriental, et pollue insupportablement le picard du Nord-Est?
      Grands Dieux !

      • [^] # Re: lost in translation

        Posté par (page perso) . Évalué à 2 (+1/-1).

        tu peux participer à https://www.apertium.org/ pour promouvoir ta langue :-)

        bon, bizarrement j'avais participé à fournir le corpus breton/français (à un gallois en thèse), mais le français n'en a que peu bénéficié :/
        Je vous recommande le wiki qui est bien riche http://wiki.apertium.org pour ceux s'intéressant à la sémantique, la traduction automatique (voire TALN chère à Zino<), mais bon, mieux vaut parler espagnol ou anglais pour interagir avec l'équipe (sympathique au possible)

  • # Gcompris sort en version 0.97

    Posté par . Évalué à -10 (+4/-18). Dernière modification le 28/12/19 à 10:27.

    Encore une excuse éducative pour laisser aux tablettes le soin de ne pas s'occuper de nos enfants…?L'affaire est catastrofique,plus nos gamins seront devant un écran malgré nos bonnes intentions éducatives plus ils seront inattentifs et auront des difficultés de memoire et d'apprentissage. …Gcompris après six ans oui ma fille s'est éclaté avec les programmes Adibou puis Adi en 96……mais si vous avez un soucis éducatif entre six mois et six ans c'est à grandes séances de câlins-lecture d'histoires jeux barbouillages, parties chatouilles ,plein air..?Après ils auront largement le temps de crétiniser devant un écran derrière votre dos. Les circuits neurologiques de l'apprentissage nécessitent la somme de plusieurs sens pour être au top et pas que la vision seule.
    Ceci n'est pas une attaque contre Gcompris mais une mise en garde contre la démission des parents avec "l'écran garderie".
    Bonne année à tous.

    • [^] # Re: Gcompris sort en version 0.97

      Posté par (page perso) . Évalué à 10 (+9/-1).

      plus nos gamins seront devant un écran malgré nos bonnes intentions éducatives plus ils seront inattentifs et auront des difficultés de memoire et d'apprentissage.

      Tu n'as pas l'impression que le contenu a de l'importance ?
      Une heure devant un film avec des plans de 5 secondes max (l'immense majorité des films et animations) n'est peut-être pas la même chose qu'une heure à utiliser une application de rangement/mémoire/énigme.

      • [^] # Re: Gcompris sort en version 0.97

        Posté par . Évalué à -10 (+2/-10).

        L'ennui c'est que si t'as pas un oeil sur tes gamins pdt qu'ils sont sur Gcompris ,dans la mn qui suit un instant d'inattention, il seront sur des sites de merde ou à jouer à des jeux à la con.

        • [^] # Re: Gcompris sort en version 0.97

          Posté par . Évalué à 5 (+3/-0).

          Leur fournir une session n'ayant accès qu'à GCompris (=> désinstaller le navigateur) ne résout pas le problème ?

          (ici on parle de gamins entre 2 et 10 ans, pas des hackers qui sauront passer root ou se connecter à la session de papa/maman même sans connaître le mot de passe)

        • [^] # Re: Gcompris sort en version 0.97

          Posté par . Évalué à 10 (+10/-0).

          L'ennui c'est que si t'as pas un oeil sur tes gamins pdt qu'ils sont sur Gcompris ,dans la mn qui suit un instant d'inattention, il seront sur des sites de merde ou à jouer à des jeux à la con.

          Mes enfants ont accès à GCompris, à des vidéos et à différents jeux (ainsi qu'à internet tout entier, même s'ils n'en n'ont pas bien conscience). Et quand ils sont sur GCompris, au bout d'1 minute d'inattention, je les retrouve sur GCompris. D'une part, parce ce que GCompris ce n'est pas une application qu'il faut fuir absolument, c'est ludique et ils aiment bien. Et d'autre part ils savent que s'ils ont le droit d'être sur GCompris, ça ne leur donne pas le droit d'être sur une vidéo.

          Le numérique, ça fait partie de l'éducation générale. Il faut expliquer, donner un cadre et le faire respecter avec un mélange de contrôle et de confiance.

    • [^] # Re: Gcompris sort en version 0.97

      Posté par (page perso) . Évalué à 7 (+5/-0).

      A ce sujet,on lira avec profit les conseils du pédopsychiatre Serge Tisseron : la règle des 3-6-9-12

  • # Version F-Droid

    Posté par (page perso) . Évalué à 9 (+7/-0). Dernière modification le 07/01/20 à 07:56.

    Je l'ai installé un peu par hasard via F-Droid (je cherchais un clavier de piano virtuel pour reproduire des mélodies avec mon fiston comme PianOli et Tonality). Et mon fils de 5 ans l'adore : il aime découvrir les nombreuses activités. Comme c'est une application éducative et libre, je le laisse jouer (apprendre) un peu de temps en temps. Merci :-)

    Commentaire sous licence Creative Commons Zero CC0 1.0 Universal (Public Domain Dedication)

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.