Melanie Sumner est ingénieure logiciel spécialisée dans l'accessibilité numérique. Nous avons parlé de son parcours vers l'ingénierie, la conception accessible, Ember.js et l'importance de financer ces efforts.
Ce post met en avant un expert de la communauté dans le cadre du programme Learn Accessibility!
Alexandra White: Merci de votre participation ! Qui vous êtes et que faites-vous ?
Melanie Sumner: Je m'appelle Melanie Sumner et je suis ingénieure logiciel spécialisée dans l'accessibilité numérique. Cela fait 25 ans que je écrit du code pour le Web. Ma première carrière a été... une sorte d'espion. J'étais analyste de renseignement dans l'US Navy, et le codage était mon passe-temps.
Je n'aimais pas vraiment être espion. Il s'avère que je n'amais pas la mort. Comme la plupart des gens ne le sont pas, quand ils doivent s'en rapprocher. Je devais décider ce que je voulais faire ensuite, et il était temps de faire de mon passe-temps ma carrière. Au cours des 10 dernières années, je me suis vraiment concentré sur l'ingénierie logicielle dans l'espace d'accessibilité.
Alexandra: On n'entend pas souvent "Oh au début, j'étais un espion." Pas de problème. Qu'est-ce qui vous a amené à travailler dans le domaine de l'accessibilité ?
Melanie: À l'époque, je travaillais à Chapel Hill, à l'université de Caroline du Nord [UNC], au sein du département du Développement. Il ne s'agit pas du développement comme le développement Web, mais de la collecte de fonds.
Mon responsable direct avait une déficience visuelle et il a dû tout zoomer à 400% pour le voir. C'était un ingénieur logiciel fantastique. Probablement le meilleur manager que j'aie jamais eu, en fait. Mais il cassait toujours mes trucs, parce qu'il faisait un zoom avant pour regarder mon travail. Si je n'avais pas pensé à construire les choses de manière réactive, elles se casseraient.
Le patron de mon responsable était daltonien. Je ne sais pas à quoi ressemble le bleu UNC, mais c'est de cette couleur bleu ciel clair. Et ils ont adoré l'utiliser sur du blanc.
Alexandra: (rires) Oh non.
Mélanie: Son patron se plaignait toujours de ne jamais pouvoir voir mon travail ! J'ai dû développer un ensemble de couleurs complémentaires et une palette de couleurs pour nos sites. Cela m'a fait réfléchir au contraste des couleurs et à la façon dont les personnes daltoniennes (ou malvoyantes) utilisent le Web.
Étant donné que l'UNC est une université d'État, une obligation fédérale américaine s'applique aux WCAG, dont le niveau d'accessibilité AA. Notre objectif était le niveau AAA, car c'est un établissement d'enseignement.
Lorsque j'en ai appris davantage sur les exigences au niveau de l'État et au niveau fédéral et que j'ai commencé à lire les spécifications d'accessibilité du W3C, je me suis dit : "Tout cela a du sens". D'après ce que je pouvais voir, la majorité du Web n'était pas conforme. Bien sûr, nous travaillons à l'accessibilité du Web depuis que celui-ci existe. Parfois, les ingénieurs JavaScript (en particulier) sont un peu lents à maîtriser l'accessibilité numérique.
Pour moi, l'accessibilité est l'ultime frontière du Web. De nombreuses personnes talentueuses travaillent sur l'automatisation pour l'accessibilité. Nous devons travailler sur des solutions de la même manière que nous avons abordé d'autres problèmes complexes, tels que les performances et la sécurité.
Alexandra: Vous avez probablement lu beaucoup de longs documents complexes dans l'armée et l'UNC. Avez-vous trouvé qu'il était difficile de comprendre les spécifications ?
Mélanie: J'ai dû le lire environ cinq fois avant de le comprendre, et je lisais d'autres caractéristiques avant. Je dis toujours aux gens : « Ne vous inquiétez pas si vous ne les comprenez pas, parce que j’ai dû lire la spécification cinq fois ! Je ne plaisante même pas.
Il faut beaucoup de temps pour s'habituer à spécifier le langage de spécification. Et si vous ne l’interprétez pas correctement, vous risquez de faire la mauvaise chose. Il est également important de comprendre qu'une grande partie des spécifications sont destinées aux développeurs de navigateurs. Recherchez "les auteurs doivent", car il s'agit d'une référence aux développeurs Web.
Alexandra: Beaucoup de choses sur le Web pourraient être améliorées si davantage de développeurs savaient comment déchiffrer les spécifications.
Mélanie: Il y a beaucoup à dire sur les sites qui appliquent cette interprétation pour vous. J'ai créé le site a11y-automation.dev, un peu comme mon bébé, mon projet parallèle. J'essaie de détailler chaque violation en matière d'accessibilité et de les lier aux critères de réussite des WCAG en question. S'il existe une automatisation pour éviter l'erreur, je vous proposerai cette solution.
Vous pouvez vous familiariser avec la liste des cas de non-respect potentiels, mais le plus important est d'apprendre à résoudre le problème. Pour les corrections automatisées qui n'existent pas, vous souhaiterez peut-être écrire un lint ou un modèle. Vous aurez peut-être l'inspiration pour écrire un type de test.
Je préfère travailler dans l'Open Source, car vous pouvez vous en dire plus et vous proposer des améliorations (parfois non, mais nous faisons tous de notre mieux). Nous nous appuyons sur les connaissances de chacun, et nous obtenons un excellent résultat pour le Web.
Financer l'accessibilité
Alexandra: J'étais vraiment attirée par le site pleasefunda11y.com. Il est très important d'amener les développeurs à apprendre à créer des sites accessibles, mais ils n'auront pas toujours les ressources sans disposer du financement et de l'approbation des responsables exécutifs. Pourquoi avez-vous décidé de créer ce site ?
Melanie: J'étais frustrée par le manque de financement de l'accessibilité. Tous les financements Open Source semblent continuer à être versés aux CSS. Et j'adore le CSS, nous pouvons faire tellement de choses avec lui.
J'ai créé le site parce qu'Addy Osmani, responsable de l'ingénierie logicielle de Chrome, m'a contacté et m'a dit qu'il recherchait un financement pour l'accessibilité, mais qu'il voulait obtenir des conseils sur les travaux spécifiques qui pourraient être financés. C'est un gros problème: les bailleurs de fonds Open Source veulent verser de l'argent à des projets spécifiques, et non à des idées générales dont le résultat n'est pas déterminé. J'ai pris le temps d'écrire certaines initiatives spécifiques, ce qui est nécessaire et comment elles contribueront à rendre les sites accessibles.
Même si les entreprises poursuivent ces efforts sans moi, nous pourrions améliorer l'accessibilité sur le Web de manière significative. Il s'agit d'une très petite dépense par rapport à d'autres efforts Web, et elle aurait un impact énorme sur la vie des gens.
La façon de penser actuelle est souvent : « Combien de personnes souffrent d'un handicap ? » Elle devrait être: "Quelle est la relation entre une personne et sa technologie ?"
Et certaines personnes m'ont dit : « Je ne pense pas que le daltonisme est une handicap. » Vous ne vous identifiez peut-être pas comme ayant un handicap si vous êtes daltonien, mais cela affecte votre rapport à la technologie.
Alexandra: Pouvez-vous m'en dire plus pour comprendre votre relation avec la technologie ? Quel est le rapport avec l'accessibilité ?
Mélanie: Par exemple, si vous êtes neurodiversifié, vous avez peut-être besoin d'un langage très simple et d'instructions très claires. Il est peut-être préférable de parcourir trois ou quatre écrans d'un flux, en faisant quelques choix à la fois jusqu'à ce que vous arriviez à la fin. Il n'existe pas de conseils adéquats pour les applications techniques modernes.
Nous avons des entreprises entières qui font du DevOps, et si vous essayez d'utiliser certains de ces sites, vous vous dites : Nous essayons d'emballer l'évier de la cuisine dans toutes nos interfaces de nos jours.
Alexandra: Pouvez-vous partager un exemple ?
Melanie: par exemple, GitHub dispose de menus déroulants avec des onglets imbriqués. Et [soupir exaspéré]. Je ne peux pas me fâcher (même si je suis frustré). Le Web moderne doit se développer pour répondre à de nouvelles demandes. Mais nous avons aussi la responsabilité de construire de manière à ne pas laisser les gens de côté.
C'est ce qui me motive, c'est ma passion. Je ne veux pas que quelqu'un ne puisse pas trouver un emploi parce que les outils qu'il aurait à utiliser au travail ne sont pas accessibles.
Alexandra: 100 %. Les gens pensent souvent à créer des produits accessibles pour leurs utilisateurs externes, mais pas nécessairement à leurs employés.
Mélanie: Je me suis dit que ces conseils de financement profiteraient probablement à tout le monde.
Des ingénieurs me disent tout le temps qu'ils aimeraient faire de l'accessibilité, mais « mon entreprise s'en moque ». Je parie qu'ils s'y intéressent ! Il vous suffit de combler le fossé de la logique métier. Montrez-leur les résultats bénéfiques pour l'entreprise. Le site est Open Source, bien sûr, et j'adore les contributions et les modifications.
Alexandra : L'accessibilité est souvent laissée à la fin du processus. Par exemple : "Nous pouvons rendre cela accessible plus tard." Toutefois, son ajout prendra beaucoup plus de temps que l'intégration de pratiques accessibles tout au long du projet.
Mélanie : Je dis souvent : "Voulez-vous payer pour construire le site une seule fois ou voulez-vous payer deux fois pour sa construction ?"
Ember.js et l'équipe principale en charge de l'accessibilité
Alexandra: Je sais que vous faites également partie de l'équipe de base du framework Ember.js. Comment vous êtes-vous impliqué ?
Melanie: J'ai été embauché pour travailler chez JPMorgan Chase, sur leurs plates-formes de banque d'investissement. Ember est un framework JavaScript robuste utilisé lorsque vous avez besoin d'une base vraiment stable (voire un peu ennuyeuse), qui peut vous aider à éviter d'écrire du code qui vous fait perdre beaucoup d'argent. Ember offre une garantie de rétrocompatibilité : vous pouvez effectuer une mise à niveau à chaque fois, même si vous utilisez une version majeure. Nous essayons d'effectuer les choses progressivement pour ne pas perturber votre application.
Quoi qu'il en soit, je me suis présenté à une conférence Ember et j'ai rencontré plusieurs personnes de la communauté. Les gens étaient si gentils. Il existe également un code de conduite très strict que je n'avais pas encore vu ailleurs.
Quand je suis sortie de l'armée, je voulais entrer dans la sécurité. Je suis allée à une rencontre Infosec, et je n'y ai vu aucune autre femme. L'un des plus âgés m'a regardé et m'a dit : "Tu es sûr d'être dans la bonne pièce, mon chéri ?"
Alexandra: [Grognements] Ça fait mal. Et ce n'est absolument pas surprenant. J'ai vécu quelque chose de similaire.
Mélanie: Je veux dire que nous avons été en 2011 ou 2012. Le paysage a beaucoup changé. Je suis restée ce soir-là, pendant ce meetup, pour prouver un point. Je n'avais pas le droit de laisser ce commentaire m'éteindre. J'ai fait des blagues, pris des notes et participé à la conversation, donc les gens savaient que j'étais là. J'ai l'impression qu'une grande partie de ma carrière a montré que les hommes ont tort.
Mais je ne veux pas que les femmes deviennent des ingénieurs logiciels juste pour prouver que les hommes ont tort. Je voulais être ingénieure logiciel pour créer des projets étonnants, parce que c'est amusant. Les femmes devraient avoir cette possibilité.
Alexandra: Absolument.
Melanie: J'ai partagé ce que je savais sur l'accessibilité avec la communauté Ember, car en tant que plate-forme bancaire, il est évident que vous devez vous conformer aux exigences fédérales américaines. Yehuda Katz et Tom Dale ont déclaré : "Il y a un manque dans l'équipe. Nous avons beaucoup d'experts en JavaScript, d'experts en performances, de personnes hors du commun et nous avons besoin de quelqu'un qui connaît bien l'accessibilité." Et ils m’ont invité à rejoindre l’équipe de base.
Je travaille sur des initiatives visant à rendre Ember accessible par défaut. Cela signifie que lorsque vous dites ember new <my-app-name>
, vous devez immédiatement respecter les critères de réussite des WCAG.
Alexandra: J'ai vu une longue liste d'outils d'accessibilité pour Ember sur GitHub. Avez-vous constaté que les membres de la communauté Ember étaient ravis de contribuer à ces outils ?
Melanie: C'est une partie vraiment passionnante de ce travail. J'ai écrit des règles d'analyse lint d'accessibilité pour Ember tout en travaillant chez LinkedIn. Ensuite, j'ai quitté LinkedIn pour travailler pour HashiCorp, et d'autres personnes contribuent toujours à l'outil linter, car il leur est utile. C'est la partie de ce travail qui me donne de la détente et qui me passionne.
Nous reconnaissons que l'accessibilité est un droit civil, à titre de référence. Ce n'est pas un sujet de discussion.
Ce dont nous allons parler: que pouvons-nous mettre en œuvre ? Quand ? Comment faisons-nous ? Comment enseigner cela et le rendre rétrocompatible ? Comment aider les développeurs à fournir une assistance à l'accessibilité sans disposer d'une énorme fonctionnalité supplémentaire qu'ils doivent créer ou planifier ?
Alexandra: L'accessibilité est un droit civique. Ça me donne des frissons ! Cela devrait être une chose que nous connaissons tous comme étant la vérité.
Mélanie: J'ai entendu des gens me dire des choses mal informées, comme "Je n'utiliserais pas Internet si j'étais aveugle". Ou : « Pourquoi dois-je penser au handicap quand il ne s'agit que de 5% de mes utilisateurs, alors que cela fonctionne pour 90% de mes utilisateurs ? » Je n'aurai pas ces discussions, car elles sont souvent utilisées pour distraire le travail.
Lorsque vous écrivez du code accessible, vous améliorez les performances, car vous envisagez de créer des sites en tenant compte des spécifications W3C. Vous utiliserez le code HTML sémantique au lieu de simples divisions et vous vous servirez d'en-têtes. Vous pouvez choisir un <button>
au lieu d'ajouter un événement de clic à une <div>
, et vous bénéficierez d'améliorations des performances.
Une seule chose: automatiser l'accessibilité
Alexandra: Que doivent faire les développeurs Web pour créer des sites Web accessibles ?
Melanie: ajouter une automatisation Commencez avec un lint existant pour le framework dont vous disposez et le type de code que vous utilisez. Peu m'importe celle que tu utilises ! Votre build ne doit pas fonctionner si l'une de ces règles n'est pas respectée.
Certaines choses ne peuvent pas être automatisées, car l'IA ne peut pas encore déchiffrer l'intention. Par exemple, la valeur du texte alternatif d'une image doit être significative, mais qu'est-ce que cela signifie réellement ? Pour l’instant, c’est un humain qui doit le discerner, pas l’automatisation.
En revanche, un outil automatisé peut vous indiquer que vous ne transmettez pas le contraste des couleurs. Corrigez-le. Ne vous battez pas contre, ne dites pas : « Mais je ne veux pas, je préfère ça. » Ce contenu ne vous concerne pas. L'objectif est de rendre ce que nous faisons accessible à tous, dans le monde, chaque jour.
L'accessibilité est un parcours, et vous êtes toujours en train d'apprendre. Je suis spécialiste de l'accessibilité depuis plus d'une décennie et j'apprends de nouvelles choses tout le temps ! Ne soyez pas sur la défensive, faites-le.
Suivez le travail de Melanie sur son site Web à l'adresse melanie.codes et sur Twitter (@a11yMel). Consultez ses ressources d'accessibilité sur pleasefunda11y.com, a11y-info.com et a11y-automation.dev.