Monthly Archives: février 2019

Toute la complexité du monde se cache dans le champ Nom d’un formulaire

Une personne n’a pas forcément un seul prénom suivi d’un seul nom de famille. Elle peut avoir un seul nom, ou trois prénoms et quatre noms de famille, en changer au cours de sa vie, son nom peut être très long ou très court… il y a tellement de variantes à travers les sociétés humaines que l’exception doit être considérée comme la norme. Cette complexité existe aussi pour les numéros de téléphone, les adresses, et pour tant d’autres mécanismes qu’il existe toute une littérature à ce sujet, avec un titre devenu coutumier : « Les erreurs que font les développeurs avec [bidule]».

S’il existe une longue liste de ces dispositifs, c’est qu’ils sont trop souvent mal pris en compte en informatique. Cela peut avoir des conséquences très gênantes, par exemple si votre nom de famille est aussi un mot réservé qui signifie le « rien » en programmation et que vous faites tout bugger.

C’est un problème classique d’écart entre le territoire et la carte. Un concepteur modélise la réalité comme il peut, en faisant des raccourcis : un être humain est identifié par un prénom et un nom, dans cet ordre et sans rien d’autre. Il doit bien exister deux trois exceptions mais on verra plus tard, se dit‐il.

Les noms sont déjà complexes, alors imaginez une notion comme la famille. Par exemple le service Google Play Family impose des règles qui forment une définition implicite.

Admettons que ce sont surtout des limites commerciales pensées pour que les gens n’abusent pas du système en ajoutant trois cent personnes du monde entier à leur « famille ». Mais quand même. Qui est Google pour dire qu’une famille ne peut être composée de nombreuses personnes vivant dans plusieurs pays ? Ensuite, ça influe forcément sur la vie des gens : le service devient intriqué avec leur quotidien et définit quels films peut regarder un enfant, avec qui et sur quel appareil. Tout ça dans un contexte d’objets toujours plus présents et connectés, où la famille peut avoir un appareil Google dans chaque pièce et plus d’appareils que de membre.

Nom, prénom et design tragique

Bref, concevoir un système peut avoir des conséquences graves et inattendues, c’est un thème dont la profession prend conscience, avec différents approches (design tragique, design systémique…) et spécialités (impact sur les minorités, biais et automatisation forcenée en intelligence artificielle…).

Mais ce que j’aime avec mes exemples, c’est qu’ils paraissent anodins. On ne parle pas de l’UI qui a causé l’envoi d’une fausse alerte d’attaque de missiles à tout Hawaï ou de cockpits d’avions mal conçus. La majorité des gens aujourd’hui saisissent leur nom en deux secondes et leur adresse par auto‐complétion. Pourtant les noms sont une construction à l’intersection de bien des enjeux et des institutions sociales :

Enfin et plus largement, les noms de personnes sont en eux‐même un phénomène social complexe, avec un champ d’étude dédié en sciences sociales : l’anthroponymie, dont on pourra lire une synthèse fascinante ici. Elle nous apprend qu’ils ne servent pas qu’à identifier une personne, loin de là, mais aussi à classer et hiérarchiser, à inscrire la personne dans une certaine organisation sociale et symbolique, ainsi qu’à s’adresser à elle d’une certaine manière, dans un certain contexte.

Bref, pour peu qu’on creuse un peu, toute la complexité de ce qu’on appelle un système socio‐technique peut surgir d’un modeste champ de formulaire.

Un plugin de typographie française pour Sketch

Résumé : j’ai créé un plugin Sketch pour respecter automatiquement les règles typo, espaces insécables et bien plus.

icone du plugin
Typographie frenchy

Tout a commencé par une interface comme celle‐ci :

screenshot de boite de dialogue

… Dans le titre, un magnifique point d’exclamation seul sur sa ligne, problème récurrent dans une application mobile sur laquelle je travaillais. Je me suis demandé comment résoudre ce problème, sans demander aux développeurs de mémoriser chaque règle et d’insérer systématiquement des caractères spéciaux à la main. Ces caractères, ce sont les espaces insécables, qui collent la ponctuation au signe précédent. Sur le web ça implique de taper des choses sympathiques comme   ou d’utiliser d’obscurs raccourcis clavier.

Une meilleure alternative est d’automatiser le problème, soit en début de chaine (comme le fait Word), soit en fin de chaine (comme ce plugin pour WordPress ou comme le fait nativement SPIP). Vu qu’il faudrait attendre longtemps que chaque système ait son plugin de typo, j’ai choisi d’explorer la première piste en créant un plugin pour Sketch. Ca ne règle pas le problème du contenu saisi directement dans l’interface de contribution des différents CMS, mais, de même qu’un développeur peut copier‐coller un code RGB depuis Zeplin ou Invision, l’idée est que des gens pourraient copier et coller du texte d’interface, par exemple celui d’une barre de menu. On est d’accord que c’est optimiste : si demain ce texte change, il y a peu de chance qu’il soit ressaisi d’abord dans Sketch.

Mais c’est une voie intéressante. Après tout, Invision, Figma ou Framer génèrent des maquettes de plus en plus compatibles avec du HTML/CSS. Cette proximité entre conception et réalisation pourrait aussi s’appliquer au texte.

Dans un tout autre angle, voir aussi Kopie, outil de rédaction collaborative synchronisée avec Sketch.

Ajoutons que le plugin apporte aussi quelques embellissements directement dans les maquettes, indépendamment de ces questions de workflow :

  • De " à «
  • De double tiret (--) à tiret demi‐quadratin ( – )
  • Certaines fractions (½, ⅓, ¼ )
  • Suffixes ordinaux : de 2e à 2ᵉ
  • Points de suspension…
  • De N° à №

Bref. Plugin de typographie automatique. C’était fun à faire. Retours bienvenus.