Contexte et adoption
Le logiciel pédagogique LogiCola, initialement développé pour Windows en 2008, a été refondu pour fonctionner sur ChromeOS, iOS et Android. En août, plus de 100 appareils en Asie ont accédé à LogiCola 3 en une semaine, dont 72 ont réalisé au moins un exercice et 66 provenaient des Philippines. Cette utilisation montre que la version multiplateforme répond à une demande étudiante largement mobile.
Analyse du code couleur d’origine
Le reverse‑engineering du programme original a révélé une routine de génération de palettes basée sur des valeurs hexadécimales fixes. Le niveau de profondeur (Pastel, Moderate, Deep) est codé par un octet level : 0xCD pour le pastel, 0xB9 pour le mode modéré et 0x91 pour le profond. Le fond, le panneau et la bande inférieure sont calculés ainsi :
level = 0xCD # Pastel (0xB9 Moderate, 0x91 Deep)
background = rgb(level, 0xFF, 0xFF) # Aqua
panel = rgb(0xFF, level, level) # Rose
band = ~background # InvertRect
Le fond utilise le niveau comme composante rouge, les deux composantes vertes et bleues restent à 0xFF, ce qui donne un aqua très clair. Le panneau inverse les rôles, plaçant le niveau sur vert et bleu pour obtenir un rose pâle. La bande inférieure applique InvertRect, une opération logique NOT sur chaque octet, ce qui produit le complément exact du fond. En modifiant uniquement level, les trois profondeurs conservent les canaux FF fixes, évitant ainsi la perte de saturation.
Adaptation et nouvelles palettes
Pour LogiCola 3, les concepteurs ont conservé le principe de contraste élevé tout en introduisant un modèle de stimulation visuelle. Le modèle, issu d’un outil développé par Ruxandra Duru et Brian Li, combine trois paramètres : intensité globale, différence de clarté et distance de teinte. Les paires de couleurs sont sélectionnées dans l’intervalle de stimulation 0.45–0.58, ce qui évite les extrêmes de fatigue visuelle ou de surcharge. Chaque palette inclut du blanc pour atténuer la vivacité et respecte le ratio de contraste WCAG AA (minimum 4.5 : 1). Les nouvelles combinaisons associent des teintes complémentaires similaires à l’original (par ex. aqua‑rose, bleu‑crème, lime‑magenta) mais avec des valeurs de luminance ajustées pour les écrans mobiles.
Implications techniques et limites
Le portage multiplateforme a nécessité la substitution de InvertRect, fonction exclusive à l’API GDI de Windows, par une opération de bitwise NOT appliquée aux valeurs RGB dans le rendu WebGL/Canvas. Cette substitution conserve le même effet visuel tout en restant compatible avec les navigateurs. Le choix de fixer les canaux FF impose une contrainte : les écrans à gamme de couleur limitée (par ex. certains téléphones bas de gamme) peuvent afficher des teintes légèrement décalées. De plus, le critère de contraste WCAG ne garantit pas une lisibilité optimale pour les utilisateurs daltoniens, un aspect non évalué dans la version actuelle. Enfin, les statistiques d’usage proviennent d’un échantillon géographique restreint (principalement les Philippines), ce qui limite la généralisation des conclusions sur l’adoption globale.