L'utilisateur hacker Vs les principes sémantiques.

L’uti­li­sa­teur hacker Vs les prin­cipes séman­tiques.

Apéroweb Toulouse
L'utilisateur hacker Vs les principes sémantiques
L'utilisateur hacker Vs les principes sémantiques

La séman­tique est la base même de toute notre commu­ni­ca­tion. Pour autant, il existe entre l’idée et la publi­ca­tion, un utili­sa­teur pour lequel nos systèmes complexes d’édi­tion sont étran­gers. Sa solu­tion bien à lui ? Hacker le système afin de parve­nir à la réali­sa­tion de son idée.

Notre capa­cité à commu­niquer est innée, tout du moins physio­lo­gique­ment (capa­cité méca­nique). Le fait même de commu­niquer en revanche, néces­site des acquis, obte­nus par un appren­tis­sage perma­nent.

Utili­ser une inter­face de saisie, c’est comme parler une langue étran­gère. Pour peu que nous ayons des diffi­cul­tés à émettre une idée, nous réali­sons un hack, un détour­ne­ment. Et même si l’objec­tif est louable, cette situa­tion peut rapi­de­ment deve­nir problé­ma­tique. à poste­riori

Mais avant, quelques défi­ni­tions …

Qu'est-ce que la sémantique
Qu'est-ce que la sémantique

La séman­tique est attrait au sens, à la signi­fi­ca­tion (le signi­fié). Et cette branche parti­cu­liè­re­ment impor­tante de la linguis­tique est dans notre cas la problé­ma­tique première des outils de gestion de contenu : les utili­sa­teurs ignorent son exis­tance.

En fait, ils utilisent la branche symé­trique de la linguis­tique qu’est la syntaxe, non pas dans un objec­tif de porter le message, mais unique­ment de le repré­sen­ter. Et là est toute la problé­ma­tique.

En appli­ca­tion, cela expose à des problèmes d’ac­ces­si­bi­lité (ex: l’at­tri­but « alt » des images en HTML), de stockage et de parsage des données (compré­hen­sion par le code pour le mani­pu­ler), en SEO, …

Voyons plutôt …

Le hack : un détournement
Le hack : un détournement

Il existe une diffé­rence notable entre les systèmes et les visions des utili­sa­teurs.

Un hack est une mani­pu­la­tion d’un système, de l’an­glais to hack : tailler, couper quelque chose à l’aide d’un outil. En program­ma­tion, le hack est une solu­tion rapide et brico­lée pour contour­ner un problème, quel qu’il soit.

Dans notre cas présent, un hack n’est ni plus ni moins qu’une modi­fi­ca­tion arbi­traire du contenu en se basant unique­ment sur sa visi­bi­lité et sa dispo­tion : sa syntaxe.

Dans un monde merveilleux ...
Dans un monde merveilleux ...

Prenons un exemple.

Dans l’idéal, le système est conçu pour répondre aux attentes de l’uti­li­sa­teur en tous points.

Ici, imagi­nons un docu­ment que l’on souhaite modi­fié afin de faire une page de garde en centrant le texte hori­zon­ta­le­ment et verti­ca­le­ment. Le système dispose bien de ces fonc­tions. Il est donc aisé de travailler la dispo­si­tion sans impac­ter la syntaxe.

Mais …

Dans le monde réel
Dans le monde réel

Mais dans la réalité, l’uti­li­sa­teur n’a pas toujours connais­sance de ces fonc­tions.

Il va donc passer par un « hack » pour arri­ver à ses fins.

Le résul­tat visuel est le même, mais le sens séman­tique, lui se retrouve atteint puisqu’il s’agit d’une varia­tion syntaxique.

D’ailleurs, j’ai déjà observé des utili­sa­teurs impri­mer ce fameux docu­ment, prendre une règle et mesu­rer pour s’as­su­rer du centrage …

Un problème pour l'humain
Un problème pour l'humain

Sauf qu’il existe des cas ou ce hack peut poser de réels problèmes.

Imagi­nons un instant un site respon­sive dont on rédige le contenu disposé sur 3 colonnes en affi­chage desk­top.

Certains utili­sa­teurs vont conce­voir l’as­pect visuel en rédi­geant ligne par ligne (et non colonne par colonne) leur contenu.

Voyez plutôt le résul­tat lorsque le site s’adapte sur de plus petits dispo­si­tifs : les parties suppo­sées grou­pées ne sont visuel­le­ment plus asso­ciées. La syntaxe n’étant pas la bonne, les visi­teurs ne comprennent plus le sens (la séman­tique) du contenu.

Un problème pour les machines
Un problème pour les machines

Cette problé­ma­tique concerne au final les machines, puisque ce sont elles qui doivent inter­pré­ter la syntaxe de ses utili­sa­teurs pour repro­duire en tous temps une séman­tique.

Or nous retrou­vons ces hacks utili­sa­teurs dans bien des cas avec de multiples consé­quences (notam­ment en acces­si­bi­lité) :

  • Les pages Kicks­tar­ter sont compo­sées à 50% d’images pour rempla­cer les grilles, les tableaux et la person­na­li­sa­tion des couleurs. Un lecteur d’écran perd par consé­quent 50% du contenu de la page
  • L’ab­sence de style pour souli­gner les titres le rédac­teur du site d’un client a utilisé des carac­tères étoiles (« * ») pour géné­rer ces lignes, à l’étoile près. Et lorsque nous avons fait les tests d’ac­ces­si­bi­lité, le lecteur d’écran lisait « étoile étoile étoile étoile étoile étoile étoile étoile étoile étoile étoile […] »
Pourquoi ?
Pourquoi ?

Prenons un instant pour comprendre ce qu’il se passe.

Un système comprend de nombreuses fonc­tion­na­li­tés offertes aux utili­sa­teurs pour répondre aux contraintes. Cepen­dant, l’uti­li­sa­teur n’est pas systé­ma­tique­ment informé des contraintes.

C’est pourquoi les moyens mis à dispo­si­tion ne sont pas forcé­ment ceux employés. L’une des étapes impor­tantes de l’uti­li­sa­teur lors de l’uti­li­sa­tion du logi­ciel, c’est de se poser la ques­tion de « comment vais-je réali­ser cette tâche ? ».

Existe-t-il une solution universelle ?
Existe-t-il une solution universelle ?

La ques­tion qui se pose donc, c’est de savoir si il existe une solu­tion à cet utili­sa­teur hacker ?

On pour­rait envi­sa­ger de réduire les possi­bi­li­tés de l’uti­li­sa­teur, de four­nir une docu­men­ta­tion (n’est-ce pas déjà le cas ?), ou tout autre solu­tion.

Mais si on résol­ve­rait nos problé­ma­tiques engen­drées par le hack, on ne règle­rait pas le problème de l’uti­li­sa­teur.

Nope.
Nope.

Alors non, il n’existe pas de solu­tion univer­selle effi­cace.

Les systèmes évoluents constam­ment, l’uti­li­sa­teur aussi, et il faut s’y adap­ter.

Cepen­dant, pour réduire les hacks des utili­sa­teurs, il faut penser à une solu­tion.
Heureu­se­ment, nous savons pourquoi nous rencon­trons cette problé­ma­tique. Nous pouvons donc envi­sa­ger des pistes de réflexion sur le modèle suivant :

Décou­verte -> appren­tis­sage -> usage régu­lier -> utili­sa­tion experte

L'optimisation du système
L'optimisation du système

La première ques­tion à se poser, c’est de se deman­der si nous avons bien retiré les freins ?

Le système est-il adapté à l’uti­li­sa­teur ? A-t-il les moyens de réali­ser la tâche faci­le­ment sans immé­dia­te­ment cher­cher un hack.

Bien entendu, on s’in­té­res­sera égale­ment au proces­sus d’ap­pren­tis­sage.

L'algorithmie à la rescousse
L'algorithmie à la rescousse

L’al­go­rith­mie évolue depuis de nombreuses années. Et elle a encore un fort rôle à jouer dans l’objec­tif d’ai­der l’uti­li­sa­teur.

Et des outils existent déjà en la matière :

  • La correc­tion typo­gra­phique auto­ma­tique et l’auto format­tage en géné­ral;
  • La détec­tion auto­ma­tique de contenu des images pour géné­rer un texte;

L’objec­tif ici est de faire le travail de l’uti­li­sa­teur à sa place.

L'apprentissage par la formation active
L'apprentissage par la formation active

Mais il existe égale­ment un troi­sième levier sur lequel agir : la forma­tion active de l’uti­li­sa­teur.

On pour­rait immé­dia­te­ment penser à rédi­ger une doc. Mais qui lit la docu­men­ta­tion du dernier appa­reil tech­no­lo­gique qu’il vient d’ache­ter ? Pas grand monde …

Pour cela, nous pouvons aler­ter l’uti­li­sa­teur (grâce à l’al­go­rith­mie vue précé­dem­ment) d’une problé­ma­tique, et suite à cela, le guider pour corri­ger ces erreurs.

L’avan­tage de cette solu­tion c’est qu’elle signale une problé­ma­tique que l’uti­li­sa­teur pourra éviter à poste­riori. Il s’agit donc d’une forma­tion au long terme de l’uti­li­sa­teur, non seule­ment sur le système, mais sur la syntaxe et la séman­tique.

Les utili­sa­teurs d’in­ter­face de gestion de contenu omettent les attri­buts alt des images ? Inversent les niveaux de titres h1, h2, h3, … pour des raisons esthé­tiques ? Insèrent des carac­tères inap­pro­priés ? Jouent avec des blocs qui ne sont pas prévus à cet effet ?

Et si ce n’était pas lié qu’à la confi­gu­ra­tion des éditeurs WYSIWIG et autres pages buil­ders mais plutôt à une mécon­nais­sance de la valeur des infor­ma­tions trans­mises par ces éditeurs ? Décor­tiquons le problème et analy­sons la situa­tion et réflé­chis­sons ensemble à comment mieux accom­pa­gner les contri­bu­teurs novices.