Developpez.com

Le Club des Développeurs et IT Pro

Et si coder par la parole devenait possible ?

Un ingénieur présente son système à la Conférence Python 2013

Le 2013-08-21 11:33:14, par Stéphane le calme, Chroniqueur Actualités
Un projet ambitieux, mené par l'ingénieur canadien Tavis Rudd, qui a vu le jour de façon assez anecdotique. En effet, il y a deux ans, Tavis a passé tellement de temps à développer qu'il en a eu les doigts tout engourdis et ne pouvait plus continuer. Après avoir essayé sans succès les solutions dites « conventionnelles », il s'est tourné sans grande motivation vers une alternative en laquelle il ne croyait pas vraiment : « désespéré, je me suis tourné vers la reconnaissance vocale » avouera-t-il.

Au début la tâche était très difficile. Pour ceux d'entre vous qui avez déjà fait usage de services de reconnaissance vocale il y a quelques années, vous n'auriez certainement pas parié sur le succès de cette initiative. Même ceux qui sont proposés aujourd'hui, bien que plus perfectionnés que ceux d'avant, ne feraient probablement pas envisager cette solution comme alternative.

C'est donc là qu'a débuté le travail de l'ingénieur. Il a d'abord utilisé le système de reconnaissance vocale Dragon NaturallySpeaking, mais il s'est avéré qu'il n'était pas adapté aux commandes d'édition de programmes. Il l'a donc modifié et combiné à une librairie de reconnaissance vocale Python de DragonFly. Bien vu de sa part.

Il a défini par la suite ses propres commandes vocales (près de 2 000 à l'heure actuelle). La première démo commence dès la neuvième minute.

[ame="http://www.youtube.com/watch?v=8SkdfdXWYaI"]Démo[/ame]

« J'espère vous convaincre que la reconnaissance vocale n'est plus uniquement un support aux personnes handicapées ou limitées. C'est maintenant un outil efficace dont devraient bénéficier tous les développeurs. » explique Tavis Rudd.

Tavis Rudd publiera le code source de son système sous peu. Vous pouvez le suivre sur GitHub ou Twitter pour de plus amples informations sur le sujet.

Il est indéniable que l'être humain parle beaucoup plus vite qu'il ne saisit via les touches d'un clavier. Un atout pour les développeurs qui pourrait révolutionner tout l'écosystème ?

Source : YouTube

Et vous ?

Que pensez-vous de l'idée de Tavis Rudd ?
  Discussion forum
26 commentaires
  • imikado
    Rédacteur
    Si ça se généralise, ça va être horrible de bosser comme aujourd'hui en openspace
  • germinolegrand
    Membre expert
    Ça me semble être une voie très intéressante, je me suis toujours demandé comment je ferais si je me retrouvais dans l'impossibilité de travailler de façon conventionnelle...

    En revanche, c'est effectivement assez contraignant pour tout ce qui est de l'entourage. (sans compter que se fatiguer la voix est plus vite fait que se fatiguer les doigts)
  • diallomad
    Membre averti
    Envoyé par Stéphane le calme

    Il est indéniable que l'être humain parle beaucoup plus vite qu'il ne saisi les touches sur un clavier.
    La reconnaissance vocale est très pratique pour écrire un texte mais pour coder j'en doute fort.
    Presque tout les langages de développement sont en anglais et il est plus simple pour les non anglophones de l'écrire que de le prononcer. Les développeurs non anglophones lisent l'anglais(en silence ) mais le prononcer correctement c'est autre chose et cela peu provoquer beaucoup d’ambiguïtés entre les mots.
  • Traroth2
    Membre émérite
    L'intérêt, c'est que comme la grammaire d'un langage de programmation est quand même limitée et non ambiguë, le risque d'erreur à la dictée doit être beaucoup plus limité qu'en langage naturel. Mais c'est sûr que dans un open-space, c'est inutilisable.
  • David_g
    Membre éclairé
    Intéressant mais je doute de l'utilité pour la plupart des gens et des situations. Par contre pour genre quelqu'un qui s'est par exemple foulé un poignet, etc.

    Ou tout simplement pour ouvrir le développement à des gens privés de motricité (grand paralysé, etc).
  • TNT89
    Membre confirmé
    Envoyé par Grom61736
    Je rejoins shkyo, rien que les "(", "", "{", "}", ";" me feront plus perdre de temps qu'autre chose.

    Imaginez programmer en Scheme s'il faut toujours dire "parenthèse ouvrante", "parenthèse fermante" ?
    Si vous regardez la vidéo, vous verrez que la personne a commencé à solutionner le problème en utilisant des onomatopée et en ayant de très très nombreuses macro apportant des structures toutes faites.
  • DukeAstar
    Nouveau membre du Club
    Dans le cadre d'utilisation d'un regex je suis pas sur qu'il gagne du temps
  • ManusDei
    Expert confirmé
    J'ai jamais trop eu l'impression que pour le développeur "normal" (dans la norme, donc pas handicapé) le problème à la vitesse d'écriture du code était dans l'utilisation du clavier.

    Mais je me trompe peut-être après tout, je ne suis qu'un jeune diplômé
  • shkyo
    Membre expérimenté
    Est-ce vraiment plus rapide au final? Je n'en suis pas trop sur, car dans du code, il y a beaucoup de caractères plus rapide à écrire qu'à énoncer.

    Ex: il est plus rapide d'appuyer sur la touche "espace" que de prononcer "space", et il y a beaucoup d'espace dans du code...

    Pareil pour "comma", "plus", "minus" par rapport à , + et -, etc...

    Je ne suis pas très convaincu en fait...

    Après, la performance technique de son outil est excellente, et pour les personnes handicappées moteur c'est plutôt génial!
    Et comme dit plus haut, en openspace tu oublis, sinon ça va être l'horreur...
  • kolodz
    Modérateur
    On va prendre la spécification d'un projet la lire à l'orale, avec des onomatopées un peu partout...
    J'imagine bien un client passé dans un bureau de dev...
    Et là c'est nos nouveaux dev's rappeurs !
    Plus sérieusement, il est rare de voir un projet être ralentie sur le temps de codage pur. Cela bloque à bien d'autres niveaux.
    Cela reste plus du gadget...

    Cordialement,
    Patrick Kolodziejczyk.