Aller directement au contenu

Mardi, 20 Février 2024

gcompris 4.0

Nous publions aujourd'hui la version 4.0 de GCompris.

Cette version ajoute trois nouvelles langues : le bulgare, le galicien et le swahili.

Cette version contient 190 activités, dont 8 nouvelles :

  • « Classes grammaticales » est une activité pour apprendre à identifier les classes grammaticales des mots, une classe à la fois.
  • « Analyse grammaticale » est similaire à la précédente, mais avec plusieurs classes demandées pour chaque phrase.
  • « Calcudoku » est un jeu d'arithmétique où l'objectif est de remplir une grille de nombres à partir de règles spécifiques.
  • Avec « Trouve 24 », en utilisant les 4 nombres fournis et les opérateurs, trouve le nombre 24 !
  • Dans « La frise », reproduis et complète les différentes frises.
  • « Repérage sur ligne graduée » est une activité où tu dois trouver une valeur représentée sur une ligne graduée.
  • Dans « Trouve le nombre sur une ligne graduée », place la valeur donnée sur la ligne graduée.
  • Dans « Trouve les nombres adjacents », trouve quels nombres sont placés avant, au milieu ou après la séquence donnée.

Elle ajoute des nouvelles images et corrections de bogues dans de nombreuses activités.

Une importante étape a été atteinte dans cette version : après près de 9 ans de travaux, la tâche d'harmoniser les graphismes de toutes les applications en suivant les règles de GCompris a été finie !

Cette version est entièrement traduite dans ces langues :

  • Arabe
  • Bulgare
  • Breton
  • Catalan
  • Catalan (Valencien)
  • Grec
  • Espagnol
  • Basque
  • Français
  • Galicien
  • Croate
  • Hongrois
  • Italien
  • Lituanien
  • Malayalam
  • Néerlandais
  • Polonais
  • Portugais brésilien
  • Roumain
  • Slovène
  • Turc
  • Ukrainien

Elle est partiellement traduite dans ces langues :

  • Azerbaïdjanais (97 %)
  • Biélorusse (86 %)
  • Tchèque (94 %)
  • Allemand (95 %)
  • Anglais britannique (95 %)
  • Espéranto (99 %)
  • Estonien (95 %)
  • Finnois (94 %)
  • Hébreu (95 %)
  • Indonésien (95 %)
  • Macédonien (90 %)
  • Norvégien Nynorsk (95 %)
  • Portugais (95 %)
  • Russe (95 %)
  • Slovaque (83 %)
  • Albanais (99 %)
  • Suédois (95 %)
  • Swahili (99 %)
  • Chinois traditionnel (95 %)

Vous pouvez trouver les paquets de cette nouvelle version pour GNU / Linux, Windows, Android, Raspberry Pi et macOS sur la page de téléchargement. Cette version sera également disponible très bientôt dans les boutiques « Android Play » et « Windows », ainsi dans le dépôt F-Droid.

Merci à vous tous et toutes,
Timothée & Johnny

Lundi, 5 Juin 2023

gcompris 3.3

Nous publions aujourd'hui la version 3.3 de GCompris.

Cette version ajoute deux nouvelles langues : l'arabe et l'espéranto.

Cette version apporte des corrections dans plusieurs activités dont « Encode le chemin », « Lettre dans quel mot », « Envoie la balle à Tux » et « Composition pour piano ».

Plusieurs améliorations pour mieux gérer la navigation au clavier (raccourcis, focus...) ont été rajoutées sur les activités.

Elle ajoute des nouvelles images pour l'activité « Trouve les différences ».

Cette version est entièrement traduite dans ces langues :

  • Arabe
  • Azerbaïdjanais
  • Breton
  • Catalan
  • Catalan (Valencien)
  • Grec
  • Anglais britannique
  • Espagnol
  • Basque
  • Français
  • Croate
  • Indonésien
  • Italien
  • Lituanien
  • Malayalam
  • Néerlandais
  • Norvégien Nynorsk
  • Polonais
  • Portugais
  • Portugais brésilien
  • Roumain
  • Slovène
  • Turc
  • Ukrainien

Elle est partiellement traduite dans ces langues :

  • Biélorusse (79 %)
  • Tchèque (88 %)
  • Allemand (99 %)
  • Espéranto (99 %)
  • Estonien (99 %)
  • Finnois (98 %)
  • Hébreu (99 %)
  • Hongrois (99 %)
  • Macédonien (94 %)
  • Russe (99 %)
  • Slovaque (87 %)
  • Albanais (99 %)
  • Suédois (98 %)
  • Chinois traditionnel (99 %)

Vous pouvez trouver les paquets de cette nouvelle version pour GNU / Linux, Windows, Raspberry Pi et macOS sur la page de téléchargement. Cette version sera également disponible très bientôt dans les boutiques « Android Play » et « Windows », ainsi dans le dépôt F-Droid.

Merci à vous tous et toutes,
Timothée & Johnny

Mardi, 28 Mars 2023

gcompris 3.2

Nous publions aujourd'hui la version 3.2 de GCompris.

Cette version contient des corrections dans plusieurs activités dont « Découvre le code Morse international », « Contrôle l'écoulement d'un tuyau » et les activités musicales.

Elle contient aussi de nouvelles images pour toutes les activités de mémoire et le « Tangram basique ».

Une nouvelle option en ligne de commande (--difficulty {value|min-max}) a été rajoutée. Elle permet de spécifier à quelle difficulté lancer GCompris.

La police « Andika » a été mise à jour à sa dernière version (6.200).

Cette version est entièrement traduite dans ces langues :

  • Breton
  • Catalan
  • Catalan (Valencien)
  • Grec
  • Anglais britannique
  • Espagnol
  • Basque
  • Français
  • Croate
  • Italien
  • Lituanien
  • Malayalam
  • Néerlandais
  • Norvégien Nynorsk
  • Polonais
  • Portugais
  • Portugais brésilien
  • Roumain
  • Slovène
  • Turc
  • Ukrainien
  • Chinois traditionnel

Elle est partiellement traduite dans ces langues :

  • Azerbaïdjanais (99 %)
  • Biélorusse (79 %)
  • Tchèque (88 %)
  • Allemand (99 %)
  • Estonien (99 %)
  • Finnois (94 %)
  • Hébreu (99 %)
  • Hongrois (99 %)
  • Indonésien (99 %)
  • Macédonien (94 %)
  • Russe (99 %)
  • Slovaque (77 %)
  • Albanais (99 %)
  • Suédois (98 %)

Merci à vous tous et toutes,
Timothée & Johnny

Mardi, 9 Mars 2021

Bonjour à tous!

Dans la série des projets un peu fou, je voudrais vous parler de mon horloge parlante !?

D’abord, un peu de contexte. Depuis peu, je fréquente un serveur discord (The language sloth) dédié à l’apprentissage des langues.
Je participe à ma hauteur pour aider les débutants en français. Ce n’est pas mon métier mais l’ambiance est assez cool.

De coup, je me suis dit un peu renseigner sur les connaissances à avoir pour obtenir le niveau A1 (le minimum).
Il y a comprendre l’heure. Sur ce constat, j’ai démarré un petit projet pour proposer un système capable de sortir un fichier audio pour chaque heure de la journée.
Et de proposer l’ensemble des façons de dire l’heure.

Le code:
Pour mes petits scripts, j’aime bien utiliser du python. Ici, mon petit script python permet d’enregistrer facilement les samples nécessaires pour bâtir l’ensemble de données.
Ce travail construit les données d’une voix.
Il y a 28 mots à enregistrer:

[pastacode lang=”python” manual=”unity%3D%5B%22un%22%2C%22une%22%2C%22deux%22%2C%22trois%22%2C%22quatre%22%2C%22cinq%22%2C%22six%22%2C%22sept%22%2C%22huit%22%2C%22neuf%22%5D%0Atens%3D%5B%22dix%22%2C%22onze%22%2C%22douze%22%2C%22treize%22%2C%22quatorze%22%2C%22quinze%22%2C%22seize%22%2C%22vingt%22%2C%22trente%22%2C%22quarante%22%2C%22cinquante%22%5D%0Awords%3D%5B%22midi%22%2C%22minuit%22%2C%22et%22%2C%22quart%22%2C%22moins%22%2C%20%22heure%22%2C%20%22le%22%5D” message=”Les samples à enregistrer” highlight=”” provider=”manual”/]

 

Le site:
Le reste de l’application est constitué d’un site web qui permet de choisir une voix, et une heure.
Suite à cela, le site affiche un ou deux lecteurs audios pour permettre la lecture des sons.
J’ai recyclé l’architecture php de mes sites applicatifs. Je la trouve vraiment formidable. Même si, je trouve le PHP de plus en plus dégueulasse.

Pour la suite, j’aimerai bien «gamifier» la chose. Permettre d’entendre une heure et de choisir la bonne valeur parmi trois propositions. Jouer avec ce genre d’éléments.

Si vous testez le site, pensez à mettre le son pas trop fort.

 

Conclusion:
J’avais cette idée de partir des samples pour construire les messages audios qui traîner dans ma tête depuis un moment. J’avais envie de tester ce que cela donnerait d’enregistrer 28 samples environ pour générer 1560 fichiers audios. J’ai décidé de l’écrire et voilà le résultat. La curiosité s’attardait sur la qualité qu’on pourrait obtenir avec cette méthode. C’est audible, il y a quelques sont qui mériterait d’être retravailler mais dans l’ensemble, cela remplit son rôle.
Je serai ravi de recevoir de nouvelles voix. Vous pouvez m’envoyer vos 28 samples et je peux m’occuper du reste.

Les liens:
Le projets en ligne: http://heures.renaudguezennec.eu/
Le code source du projet: https://github.com/obiwankennedy/french_talking_clock_game

Lundi, 17 Août 2020

Aujourd’hui, nous allons voir comment sont gérées les préférences dans Rolisteam (et plus généralement dans mes développements).

Quels contenus sont gérés dans les Préférences ?

Les préférences conservent l’ensemble des éléments qu’un utilisateur peut définir pour changer le comportement de l’application.

Dans Rolisteam, il est possible de définir le thème de l’application, la couleur du brouillard de guerre pour les cartes, la valeur de son opacité, Activer/désactiver la recherche de mise à jour, le lancement en plein écran, des alias de dés etc.

La problématique

La principale difficulté est de rendre accessible en lecture et en écriture les préférences pour l’ensemble de l’application.
En parallèle, la fenêtre de préférences doit permettre d’afficher et de modifier toutes les valeurs.
Il est important de ne conserver qu’une version de données afin d’éviter des incohérences. L’autre objecti est de réussir à notifier les utilisateurs d’une donnée après son changement.

La solution

Pour répondre à ces problématiques, j’ai écrit la classe PreferencesManager. Elle est fondée sur le patron de conception: Singleton.
Le but de ce patron est de s’assurer de l’unicité d’une instance de classe. Cela permet de garantir que les valeurs sera bien la même pour tout le monde: les composants de l’application et le panneau de préférences.

Pour réaliser un singleton, il est nécessaire de mettre les éléments suivants:

[pastacode lang=”cpp” manual=”class%20PreferencesManager%0A%7B%0Apublic%3A%0A%20%20%20%20%2F**%0A%20%20%20%20*%20%40brief%20Must%20be%20called%20instead%20of%20the%20constructor.%0A%20%20%20%20*%0A%20%20%20%20*%20%40return%20instance%20of%20PreferencesManager%0A%20%20%20%20*%2F%0A%20%20%20%20static%20PreferencesManager*%20getInstance()%3B%0A%20%20%20%20%2F**%0A%20%20%20%20*%20%40brief%20%20desturctor%0A%20%20%20%20*%2F%0A%20%20%20%20~PreferencesManager()%3B%0Aprivate%3A%0A%20%20%20%20%2F**%0A%20%20%20%20*%20%40brief%20Private%20constructor%20to%20make%20sure%20there%20is%20only%20one%20instance%20of%20this.%0A%20%20%20%20*%2F%0A%20%20%20%20PreferencesManager()%3B%0Aprivate%3A%0A%20%20%20%20%2F**%0A%20%20%20%20*%20Static%20reference%2C%20part%20of%20the%20singleton%20pattern%0A%20%20%20%20*%2F%0A%20%20%20%20static%20PreferencesManager*%20m_singleton%3B%0A%7D%3B” message=”Code d’un Singleton” highlight=”” provider=”manual”/]

Côté implémentation, cela donne ceci:

[pastacode lang=”cpp” manual=”PreferencesManager*%20PreferencesManager%3A%3Am_singleton%20%3D%20NULL%3B%0A%0A%0APreferencesManager*%20PreferencesManager%3A%3AgetInstance()%0A%7B%0A%20%20%20%20if(m_singleton%20%3D%3D%20NULL)%0A%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20m_singleton%20%3D%20new%20PreferencesManager%3B%0A%20%20%20%20%7D%0A%20%20%20%20%0A%20%20%20%20return%20m_singleton%3B%0A%7D” message=”Implémentation Singleton” highlight=”” provider=”manual”/]

La classe PreferencesManager conserve l’ensemble des données dans une map.

[pastacode lang=”cpp” manual=”QMap%3CQString%2CQVariant%3E*%20m_optionDictionary%3B” message=”structure de données” highlight=”” provider=”manual”/]

 

 

Samedi, 28 Avril 2018

Bindings + Méthode de travail:
Notions abordées:
-Les syntaxes pour le Binding

Le code de la présentation: https://github.com/obiwankennedy/Learn-Qt
Le code de l’exercice: 04_exercice_binding
La correction sera dans le prochain épisode.

 

Lien youtube: https://youtu.be/A-SMHKkH19U

Supporter le logiciel et la chaîne: https://liberapay.com/Rolisteam/donate
Rolisteam: http://www.rolisteam.org/

Jeudi, 8 Février 2018

Les attributs:
Notions abordées:
-id
-Propriétés
-Signaux
-Gestionnaire de Signaux
-Gestionnaires et propriétés groupés.
-méthodes
-Enumération

Fichier à télécharger: 03_attributs

Le code de la présentation: https://github.com/obiwankennedy/Learn-Qt

 

Lien youtube: https://youtu.be/tDSVlrsQJU0

Dimanche, 4 Février 2018

Le positionnement:
-Apprenez à positionner vos éléments.
Notions abordées:
-Positionnement absolue
-Ancres
-Les positionneurs
-Les layouts
Le code de la présentation: https://github.com/obiwankennedy/Learn-Qt

Ressources du tutoriel: 03_positionnement

 

Lien youtube: https://youtu.be/QDbn1CDjc14

Supporter le logiciel et la chaîne: https://liberapay.com/Rolisteam/donate
Rolisteam: http://www.rolisteam.org/

Samedi, 3 Février 2018

Introduction:
-Apprenez à installer les outils pour programmer en QML.
-Création d’un projet QML.
-Découverte du premier programme.
-Introduction des types de base du QML (Item, Rectangle, Image, Text, TextInput, TextArea, MouseArea, Timer, Flickable)

 

 

Téléchargez les ressources de l’épisode

Liens Utiles:
Qt: https://www.qt.io/download
RCSE: http://www.rolisteam.org/download.html (Lire attentivement en fonction de vos plate formes)
Le code de la présentation: https://github.com/obiwankennedy/Learn-Qt

Exemple QML:
https://www.youtube.com/results?search_query=qml+example

Lien youtube: https://youtu.be/8moq00ofQPY

Supporter le logiciel et la chaîne: https://liberapay.com/Rolisteam/donate
Rolisteam: http://www.rolisteam.org/

Dimanche, 30 Juillet 2017

Bonjour,

J’ai organisé un atelier à Pas Sage En Seine en juin 2017.
J’ai enfin le temps de m’occuper de mettre en ligne les éléments de formation.
Je mets à disposition les supports de cet atelier.
Il y a une présentation PDF et un projet regroupant les exercices et les solutions.

La présentation est en réalité une application QML. Son code est disponible ici: https://github.com/obiwankennedy/Learn-Qt
Cela constitue en soit un bon exercice que d’arriver à la lancer sur votre ordinateur.

N’hésitez pas à me contacter pour poser des questions.
Je ferais peut-être une vidéo de la formation.

Liens: