Carnet Wiki

Nomenklatura

Nomenklatura

On a souvent des problèmes de nommage et on devrait en parler, avoir une stratégie.

La nomenklatura est un process de veille par des spipeurs sensibilisés au sujet (utilisateur·ice·s, développeu·rs·ses, créateurices de squelettes, rédacteurices, ergonomes...)
-  qui cherchent des noms pour les choses en dehors de toute autre considération technique
-  qui interviennent lors de l’invention d’un nouveau concept, avant que sa nomenclature ne se sédimente
-  qui tiennent à jour une liste de termes épinglés = des trucs mal nommés ou nommés de façon contradictoire, afin de ne pas les oublier et que le jour où c’est possible de faire un changement, on s’en souvienne et que le changement se fasse dans le bon sens
-  collaboratif et évolutif

Chacun peut s’autosaisir de sa propre autorité pour évoquer un point problématique. Faire référence à la Nomenklatura peut alors aider à en parler, et aider les autres à sortir de l’ornière routinière.

Motclés : nomenclature, terminologie, ergonomie, wording

Exemples :

-  il arrive que ’nom du plugin’, ’titre du plugin’, ’extension du plugin’ soient trois mots différents (gestdoc, media, médiathèque, documents)

-  Le terme ’no-image-filtrer’ introduit (rapidement) afin que les filtres appliqués à une balise ne s’appliquent pas à l’image dont le modèle d’insertion porte cette classe. Ce terme est un mélange d’anglais et de français...

-  les entrées du menu de la partie privée sont crées par l’entrée <bouton> dans plugin.xml alors que ce ne sont pas des boutons. Une occasion se présente toutefois de corriger cela : le passage à ’paquet.xml’

-  le terme ’logo’ est déconcertant de prime abord puisqu’il ne contient en général pas à un logo mais une illustration qui a une place particulière dans la mise en page. Pour un auteur, ’avatar’ ne serait pas compris de tout le monde.

-  un nom d’un plugin, basé sur un calembour, offre une connotation qui rebute des utilisateurices ou contributeurices potentiel·le·s.

Pages associées

-  des contresens et approximations : liste de contresens et d’approximations

-  Autres termes épinglés : liste des barbarismes et autres mauvaises manières

Problématiques

-  Changer un terme technique entraîne souvent des incompatibilités avec les versions antérieures qui l’employaient. Il est donc important de trouver les bons termes le plus tôt possible, dés que le contour de la notion est (à peu prés) défini.

-  Comment faire pour les mauvais termes rentrés depuis longtemps dans les usages ? On peut profiter d’un développement majeur sur la fonctionnalité concernée pour changer le terme (comme lors du passage de plugin.xml à paquet.xml). On peut permettre une double terminologie pendant un temps de transition (comme les usages deprecated en php, comme avec les fonctions du ’grenier’ spip).

-  La bonne terminologie est une adéquation entre ce qu’elle décrit et la personne à qui elle s’adresse. Un certain public connait ’avatar’, un autre ne connait pas. Qui cibler ? Ecriture d’un squelette, interface utilisateur ou autres, le contexte d’usage définit en partie la langue adaptée.

-  Question de la ’normalisation’. il serait possible d’expliciter un ensemble de recommandations, voir de règles, telles que « EviterLeCamelCase », « éviter l’anglais aussi »... . Est-ce souhaitable d’introduire cela dans SPIP ?

-  Sans entraver le développement, inciter à considérer le choix des termes comme quelque chose d’important pour la qualité d’un code

Les outils

-  le carnet spip : pratique pour dresser des listes de termes, présenter succinctement le problème et des solutions envisageables

-  le gestionnaire de ticket : un type de tracker « nomenclature » spécifique a été créé à la demande de la Nomenklatura. Redmine est pratique pour discuter un point épinglé, avec les forums associés au ticket, mais il faut s’inscrire. C’est un coin fréquenté par les développeurs, mais pas par le plus grand public... plus adapté donc pour les phases finales de discussion et d’intégration à SPIP. (Rq : Il y a aussi la catégorie « ergonomie »).

-  IRC (canal #spip sur freenode)