Ne pas limiter le socle des utilisateurs

Si vous concevez une application dont les utilisateurs sont des ingénieurs, des enfants ou des administrateurs système, assurez-vous de créer une application utilisable par tous les ingénieurs, tous les enfants ou tous les administrateurs système, y compris ceux confrontées à des handicaps ou bien ceux dont la langue maternelle est différente de la vôtre. Soyez attentif aux problèmes d'accessibilité, d'internationalisation et de localisation : les conseils de ce document concernent nombre d'entre eux.

I.II.I. Accessibilité

Accessibilité (parfois désignée par a11y pour « accessibility ») signifie « permettre aux personnes souffrant d'un handicap particulier de participer aux activités de la vie » : dans ce cas précis, utiliser votre logiciel. Par exemple :

  • il se peut que les daltoniens ne puissent pas utiliser votre application si vous ne vous fondez que sur un code couleur pour différencier les types d'informations,
  • il se peut que les utilisateurs atteints de surdité ne puissent pas utiliser votre programme si vous ne comptez que sur des sons pour leur donner des informations critiques.
  • il se peut que les utilisateurs à mobilité réduite ne puissent pas utiliser votre programme si vous ne fournissez pas des équivalents clavier pour les commandes.

Your software should also be usable with voice interfaces, screen readers such as Orca, alternate input devices, and other assistive technologies. The standard GNOME libraries do most of this work for you, but with a little extra effort you can make your application every bit as useful to users who rely on those technologies as to those who don't.

GNOME has excellent inbuilt support for accessibility by means of the ATK and GAIL libraries, which in many cases can do most of the work for you. More information on accessibility in GNOME can be found at the GNOME Accessibility Project.

I.II.II. Internationalisation et localisation

Internationalisation signifie « concevoir le logiciel afin qu'il puisse fonctionner dans des environnements linguistiques différents ». La localisation est le processus réel de traduction dans une autre langue des messages, étiquettes et autres éléments de l'interface d'une application.

GNOME possède une excellente prise en charge à la fois de l'internationalisation (également désignée par i18n) et la localisation (également désignée par l10n). Dans la plupart des cas, la simple utilisation des API standard de GNOME pour afficher le texte et les messages permettra à vous ou à d'autres de régionaliser votre application pour d'autres environnements linguistiques. Pour obtenir plus d'informations sur la façon de rendre votre application localisable, consultez la page Web du projet Pango (Pango est la bibliothèque GNOME de rendu de texte international), la page des traductions GNOME et la page du projet de traduction GNOME.

Une sensibilité aux problèmes culturels et politiques doit également être prise en compte. La conception d'icônes et de sons et même le choix de couleurs nécessitent la compréhension des connotations qui peuvent exister pour les utilisateurs d'une autre partie du monde.

Pour ces raisons, voici quelques exemples d'éléments qu'il vaut mieux éviter :

  • des images de drapeaux ou de pièces de monnaie,
  • des cartes affichant des frontières politiques ou des noms d'emplacements litigieux,
  • des listes de pays ou de villes dans un ordre autre qu'alphabétique (à moins que cela ne soit demandé spécifiquement ou exigé par le contexte),
  • des icônes représentant des animaux,
  • des icônes représentant seulement des mains ou des pieds.