16

I'm looking for a software which will convert the speech to code. Now am specifically asking this question for users who are keen to program but unfortunately they cannot type for some reason and this will play an important role for them to step in the programming world.

General English recognition software may fail so they won't be useful as far as Programming is concerned. For example take this snippet from PHP ...

if($blow == true) {
   echo 'True';
} else {
   echo 'False';
}

Now how would you go with that? Speaking something like

If variabe blow is equal to true, echo true else echo false

Now the software may convert the string to boolean or vice versa. Software should be smart enough to decide that, yeah, user is saying echo so I should use string instead of a boolean.

So is there any specific voice/speech recognition software especially for programmers?


It would be better if there is a general one, as far as specifications are concerned, than I would like...

  • Should handle PHP, CSS, HTML, JavaScript (mostly web languages)
  • Sublime Text 2/3 (If any plugin available)
  • Windows 7 and above
  • Should be Accurate
  • Premium or Free
1

1 Answer 1

9

I have been looking for this for ages. Here is the best I have found so far: Dragon NaturallySpeaking, edited by Nuance.

  • Windows 7 and above.No Linux, Mac OK but Windows version is better from what I have been told by Mac users.
  • Accurate. I use it all the time e.g. now. I have tried English and French.
  • non-free. To get access to all features you need the Professional Edition which costs around 500 USD.

Unfortunately Nuance doesn't seem to care at all about voice programming. More generally their customer services is poor (let's stay on concise and politically correct).

So users had to create third-party applications to enhance Dragon NaturallySpeaking's advanced scripting system to allow creating voice commands to perform voice programming.

The most popular are (all are free and open-source): - NatLink and Dragonfly - VoiceCode

Here is an interesting video/demo on programming by voice (using Dragon NaturallySpeaking + DragonFly). Nothing groundbreaking but give an idea of what can be achieved currently, which is far from what you ask: http://pyvideo.org/video/1735/using-python-to-code-by-voice

Summary

I dictate my code using a voice recognition system with Python embedded in it. In a fast paced live demo, I will code a small system and deploy it without touching the keyboard. I hope to convince you that voice recognition is no longer a crutch for the disabled or limited to plain prose.

Two years ago I developed a case of Emacs Pinkie (RSI) so severe my hands went numb and I could no longer type or work. Desperate, I tried voice recognition. At first programming with it was painfully slow but, as I couldn’t type, I persevered. After several months of vocab tweaking and duct-tape coding in Python and Emacs Lisp, I had a system that enabled me to code faster and more efficiently by voice than I ever had by hand.

The source code for voice commands isn't online yet, it should have been released in June or July on https://github.com/tavisrudd?tab=repositories (but from what I can see it's yet another conference's vanished promise).


More ideas:

4
  • This answer would be strengthened by adding some info about KnowBrainer. May 13, 2017 at 6:01
  • @aparente001 yes it is present in the links in the "more ideas" section May 13, 2017 at 13:26
  • I'm suggesting you post "KnowBrainer" explicitly in your answer. I have found this extra layer to be helpful. You have more extensive experience with Dragon and KnowBrainer than I do, and you went to the trouble of writing up an almost complete answer here. A brief, explicit mention of how KnowBrainer can address OP's question would make it complete, in my opinion. But I don't mean to say that you have to drop everything and respond immediately. Just that when you have time, such an addition would add to this answer's usefulness. May 14, 2017 at 5:55
  • @aparente001 actually I don't have much experience with KnowBrainer. I did try it, however I didn't see anything specific to improve voice coding. Which feature of it the you think could improve voice coding? I haven't tried it much and wouldn't be surprised if I had missed something. May 14, 2017 at 15:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.