I can answer this one from personal experience. A few years ago, I broke both arms in an accident. Since my job was full-time programming, this was a problem. With some help, I got Dragon installed on my laptop.
It was a waste of time.
Code isn't much like natural language; it is primarily written, not spoken. I know exactly what y_z = (x < 0 ? -x : x) + 2;
means, yet I have no idea how I'd pronounce it, nor do I care.
Being a written-only language, code is very precise at the character level. There's a big difference between (x+2)*3
and (x+2*3)
. Speech-to-text programs are good at paying attention to words, not characters. Adding specific characters requires lots of saying things like "left parenthesis, x, plus sign, two, right parenthesis".
When I'm coding, I do a lot of moving and rewriting. Speech-to-text is good for a single stream of language. It isn't good for going back and forth all over the place.
A lot of the minute tasks in coding aren't equivalent to typing, which is all speech-to-text is good for. Think about how often you change tabs to look at some other module of code, or how often you fold and unfold a function in your editor.
So if you have a speech-to-text program, give it a try and see for yourself. I don't think you'll be too impressed.
Incidentally, don't break both arms at once. Break one at a time, it's much easier that way.
If I had had only one broken arm, I'd have just done all my coding one-handed. It'd still be quicker than using speech-to-text software.