Perl Out Loud : une autre manière de gérer les troubles musculosquelettiques,
en programmant avec sa voix
La conférence Perl était à Pittsburgh cette année. L’un des orateurs a retenu l’attention de nombreuses personnes : Emily Shae, une ingénieure en logiciel de Fastly, un fournisseur américain de services de cloud computing qui affirme que « nous aidons les développeurs à concevoir des expériences numériques rapides, sécurisées et fiables en traitant et en servant les applications du client à la périphérie, aussi près que possible des utilisateurs finaux ».
Prenant la parole, elle a commencé à se présenter, présenter la structure pour laquelle elle travaille avant d’aller à l’essentiel : Perl out Loud (littéralement Perl à voix haute). Comme ce groupe de mots le suggère, il s’agit de coder en Perl par la voix.
Mais pourquoi le faire ainsi ?
Pour ceux qui se demandent pourquoi elle a décidé de le faire, elle a expliqué « Je suis malheureusement victime de trouble musculosquelettique (TMS). En automne 2017, j’ai commencé à avoir des problèmes au niveau de mes deux mains. Pour ceux qui ne savent pas ce que sont les TMS, il s’agit de lésions et de douleurs provoquées par des mouvements répétitifs et une sollicitation excessive. Dans notre industrie cela vient parfois en utilisant trop un clavier, une souris, etc. Quoiqu’il en soit, cela a eu un grand impact sur ma capacité à taper ».
Bien entendu, elle n’a pas cherché à développer en Perl directement avec la voix une fois que les symptômes TMS ont été repérés. Elle a tenté d’atténuer ces symptômes par diverses méthodes (massages, anti-inflammatoire, prises de pauses, thérapies physiques, etc.) mais elle se sentait toujours très limitée.
« Je ne pouvais avoir grosso modo que 30 à 45 minutes de typing dans une fenêtre donnée et tout au long de la journée probablement 3 heures de typing à tout casser et ma qualité de vie tandis que je travaillais était pénible ; j’étais constamment interrompue par mon corps ».
Parce qu’elle se sentait vraiment limitée, elle a commencé à explorer des alternatives qui n’impliqueraient pas ses mains.
Puis-je utiliser ma voix et me débarrasser de mon clavier et de ma souris ?
Rendu à ce niveau, elle a trouvé des alternatives vocales mais elles étaient « très bizarres et difficiles à utiliser », bien qu’elle a reconnu qu’elles étaient déjà une meilleure option pour son corps que celles qu’elle avait essayé.
« Quand j’ai commencé, je m’attendais à écrire du Perl comme ceci (regarder à partir de la quatrième minute de la vidéo) »
À la vue du développeur qui voulait s’arracher les cheveux suite à un ordinateur qui avait du mal à retranscrire ses commandes vocales, le public n’a pas pu s’empêcher de rire.
« Si je travaillais comme ça tous les jours, mon Dieu ça serait très violent », a plaisanté Emily à la fin de la séquence vidéo. « Mais en fait, lorsque j’ai commencé à chercher des solutions vocales, ce que j’ai trouvé était très différent. Je vous ferai une petite démo en écrivant le même code que le monsieur essayait d’écrire, cette fois-ci en me servant de la boîte à outils que j’emploie dans mon travail de tous les jours ».
Pour voir sa démo, rendez-vous à 7 minutes 42.
Nous pouvons observer que l’interaction semble plus fluide et la machine retranscrit beaucoup plus facilement les commandes vocales. D’ailleurs, cette démo a déclenché les applaudissement du public.
Quelle technologie a été utilisée ?
« Bien entendu j’avais besoin d’un bon microphone. J’en utilise un actuellement qui ne prend du bruit qu’en provenance d’une seule direction. Je me sers également de Dragon Dictation. Il s’agit d’un logiciel dont certain d’entre vous ont déjà peut-être entendu parler. Il est utilisé dans plusieurs industries. Vous vous en servez pour dicter des documents, des courriels et autres, mais il n’a pas vraiment été utilisé pour écrire du code, en particulier Perl.
« La technologie dont je suis heureuse de vous parler aujourd’hui est Talon. Talon est un logiciel hands-free input avec lequel vous pouvez utiliser des commandes vocales. Il dispose également d’un système eye-tracking, ainsi vous pouvez laisser votre clavier et continuer de contrôler votre ordinateur. Il utilise l’API Dragon Dictation, donc il s’exécute en quelque sorte sur Dragon Dictation et il utilise le moteur de Dragon, bien qu’il dispose d’un moteur vocal intégré. Mais je l’utilise avec Dragon. La partie la plus intéressante est que vous pouvez configurer votre boîte à outils en utilisant Python. Le logiciel Talon est gratuit ».
Par la suite, elle a donné les bases à l’auditoire, par exemple comment obtenir des lettres : « vous pouvez penser qu’il vous suffit de dire “A” pour obtenir “A” ou “B” pour obtenir “B”. Mais il y a un problème avec cela : avec la façon dont nous prononçons notre alphabet, il y a des lettres dont le son est très similaire. Je suis certaines que vous avez déjà dit au téléphone “a comme Amazon” ou “b comme Bolivie” pour être sûrs que la personne a la bonne lettre. Aussi, pour des besoins de précisions, nous voulons une manière différente de représenter l’alphabet ».
Les difficultés qu’elle a rencontré
Après avoir développé sa présentation des bases en plusieurs modules, elle a montré comment elle se sert de ces outils pour contrôler son ordinateur. Puis elle a évoqué certaines difficultés rencontrées :
- la courbe d’apprentissage peut être un peu raide
- elle est tombé sur des outils avec peu d’accessibilité, « parfois je tombe sur des applications qui ne sont pas développées avec l’accessibilité à l’esprit. Il peut s’agir d’un bouton sur lequel je ne peux pas cliquer parce que ce n’est pas un bouton HTML et ce n’est pas un lien donc je ne peux pas y accéder et c’est assez frustrant. J’en profite pour demander à tous les développeurs de ne pas oublier de penser à l’accessibilité »
- mal de gorge (il suffit d’imaginer ce qui se passe après avoir parlé à votre ordinateur pendant 8 heures chaque jour au lieu de taper sur votre clavier pendant 8 heures chaque jour)
- les open office : « lorsque vous avez un microphone, ces endroits deviennent délicat. Si je suis dans un open office, je pourrais générer du bruit qui va être étrange pour les autres et je pourrais également avoir du bruit dans mon microphone qui influence mon travail, mais il y a quelques solutions. L’une d’elle est le port d’un stenomask, vous le mettez autour de votre bouche et il est fait pour ne prendre que vos commandes vocales dans le dispositif et bloquer le bruit environnant. Si vous les utilisez, vous ne dérangerez-pas le voisin et il ne vous dérangera pas non plus ».
Source : Conférence Pearl
Et vous ?
Aviez-vous déjà entendu parler de Dragon Dictation ? Talon ?
Les avez-vous déjà utilisé ?
Que pensez-vous de cette alternative aux standards des développeurs (clavier, souris) ?
Les avantages ergonomiques vous semblent-ils suffisamment intéressant pour essayer cette façon de faire ?
Voir aussi :
Le langage de programmation V vient d'être publié en open source et semble ne pas tenir toutes ses promesses
Game Builder, le nouvel outil de Google qui permet de créer facilement des jeux 3D avec des amis sans notion ou expérience en programmation
macOS : les langages de script tels que Python, Perl et Ruby ne seront plus préinstallés à partir de macOS Catalina pour plus de sécurité, dit Apple
Faut-il migrer de JavaScript vers PureScript ? Oui, car JavaScript serait très limité pour la programmation fonctionnelle, selon Alex Kelley
Partager