Live data from Hacker News

Using Voice to Code Faster than Keyboard

ergoemacs.org

121–130 of 137 posts

Re: Using Voice to Code Faster than Keyboard

#121
post #117

A word of warning -- I started dictating all of my email and Facebook replies on my Android using Google's voice keyboard on my Nexus One a few years ago in response to RSI pain in my hands from overusing my cell phone. Within a month, I started losing my voice. RSI comes in multiple forms; using your voice exclusively is not going to fix the problem. The trick is to switch things up, which involves having alternativ…

Those vocal exercises singers do seem silly until you run into a problem such as this. They've been working on getting more mileage out of their larynxes for hundreds of years and have some pragmatic practices that can help.

Lots of water, avoiding nastiness in the air, learning the bare minimum volume of air you can push through your throat and still get results, and taking breaks when your body (either by feel or sound) tells you that it's tired.

In this specific case, adding leverage with short macros such as "laip" and "slap" is essential. There's no way you could work a full day spelling everything that wasn't in the recognizer's dictionary.

Re: Using Voice to Code Faster than Keyboard

#122
post #45

I guess it depends on the type of software you're working on, but input speed has never been close to being the bottleneck with coding for me... Most of the time I'm trying to figure out what to do or how to implement an algorithm. Rarely do I get those mad-scientist frenzies where I'm typing away frantically trying to get all the words down as they come into my mind in a flash of inspiration.

It's very different for different programmers. I've worked with people who are skilled developers and who can't even touch type. They have a slow-pace, methodical way of working. Many look at the keyboard over glasses and hunt and peck. The professor who ported plan 9 to raspberry pi (recent video here) is an example of this approach. On the other hand, I have a shocking memory and can't hold context for long. Someti…

Have you tried literate programming? It is a way to download your thought process into the "code". Particularly good for those who like to write.

An example tool to create it is my own program at https://github.com/jostylr/literate-programming which uses markdown as the syntax. While the examples are web language-flavored, it can be used with any language.

Re: Using Voice to Code Faster than Keyboard

#123
post #108

Earlier quoted context omitted.

Having suffered with RSI for years (before the advent of current-gen speech recognition, so it really sucked), I heartily echo this advice: which, let me tell you, you should do at the first sign of pain Do that. REALLY REALLY do that. Also, this book is superb: http://www.amazon.co.uk/Its-Carpal-Tunnel-Syndrome-Professio...

The most surprising information I discovered curing RSI is: http://aaroniba.net/articles/tmp/how-i-cured-my-rsi-pain.htm... which recommends http://www.amazon.com/Mindbody-Prescription-Healing-Body-Pai...

This book has been really helpful for me. I recommend it.

Re: Using Voice to Code Faster than Keyboard

#124
post #79

Earlier quoted context omitted.

Because you're thinking about it wrong. Together with HUD, it will be a godsend for anybody who needs to have hands free and yet work with a computer. And if the microphone is close enough your mouth, you won't have to talk loudly to it. For example, I could go to tend garden and yet think about some problem, take notes, even code. Or check email, browse internet. I can work on hardware thing and have schematics or s…

None of those usecases seem like something I would find useful, and talking with my mouth full doesn't seem convenient, I'm guessing your recognition ratio would go way down.

Stroll through the park coding on your Google Glass doesn't seem useful? Well, maybe not useful, but it would certainly be cool :)

Re: Using Voice to Code Faster than Keyboard

#125
post #45

Earlier quoted context omitted.

It's very different for different programmers. I've worked with people who are skilled developers and who can't even touch type. They have a slow-pace, methodical way of working. Many look at the keyboard over glasses and hunt and peck. The professor who ported plan 9 to raspberry pi (recent video here) is an example of this approach. On the other hand, I have a shocking memory and can't hold context for long. Someti…

Have you tried literate programming? It is a way to download your thought process into the "code". Particularly good for those who like to write. An example tool to create it is my own program at https://github.com/jostylr/literate-programming which uses markdown as the syntax. While the examples are web language-flavored, it can be used with any language.

[deleted]

Re: Using Voice to Code Faster than Keyboard

#126
post #97

Earlier quoted context omitted.

I was never sure which side of this argument I came down on, and then I switched to a Kinesis Advantage keyboard. I had to slow down my typing for a couple weeks to get the finger positions right. The whole time, I felt like I was coding with a hangover. I felt like I couldn't think properly, just because of the reduced brain->computer bandwidth.

Did you eventually get better at typing on the Kinesis?

Yes. After 2 weeks, I didn't feel handicapped. After 4 weeks I could type as fast as before (75-80wpm). Now, about 6 months later, I can type 95wpm on a good day.

Re: Using Voice to Code Faster than Keyboard

#127
post #42
post #37

Earlier quoted context omitted.

That does work well. I'm happy to pay for Dragon, but I find the Windows version so superior to the OSX software I refuse to run it on OSX...

The OS X "version" is a nightmare. It's guaranteed to break with every major OS release. Nuance takes months to release working versions. When it does work, it's hostile to any other apps that use the accessibility hooks, such as Text Expander, Alfred, etc., which would be awesome with speech input. The history of the Mac version (acquisition of a company that licensed the Dragon engine) means that it and the Windows…

> I am glad that dictation (apparently powered by Nuance's engine anyway) is to be included in Mavericks

I'd missed that, very interesting. I need a disconnected mode as being able to only dictate short passages, and especially using an online system that doesn't learn from corrections, is a pain.

Re: Using Voice to Code Faster than Keyboard

#128
post #36

Earlier quoted context omitted.

> you must work from home with that kind of setup. Or, you have a private office with a door that closes.

A high-quality headset, maybe even with some noise-canceling features should work okay, too. It wouldn't be that much different from a call center, and those don't usually get their own offices, either. Sure, not the ideal, distraction-free environment, but neither is a cubicle farm.

I think you need your own office in order not to distract coworkers

Re: Using Voice to Code Faster than Keyboard

#129
post #72

Earlier quoted context omitted.

It's one thing to not be able to write code as fast as you can type. It's another to use a speech to text input method that's designed for long-form prose and try to use it to code. Can you imagine the frustration of trying to enter longCamelCaseVariableNames without a special macro to do so? I don't know the usual commands in Dragon, but I imagine it would be something like: "long delete space uppercase camel delete…

That's kinda the point of this article. He's got a bunch of macros and idiosyncratic commands. At 11:30 in the video: "Camel this is a test" -> thisIsATest "Studly this is a test" -> ThisIsATest "Jive this is a test" -> "this-is-a-test" "Dot word this is a test" -> "this.is.a.test" "Score this is a test" -> "this_is_a_test" "Mara" -> selects all text on screen "Chik" -> delete He says he'll release his code in a few…

Yes, that was my point. I watched the video, and picked the camel case example from it.

I was replying to someone who said that input speed is not the main bottleneck in coding, hence implying that it's not all that useful to do things to improve input speed. While I concede that input speed is not the primary bottleneck, my point is that without macros like this to speed it up, voice input would be way too slow to do anything useful.

Re: Using Voice to Code Faster than Keyboard

#130
Here's an open source Python script i wrote a few years ago that allows you to type with your voice. It's based off of CMU Sphinx. The accuracy is almost certainly not as good as Dragon, and it doesn't have a macro facility, so you cannot code as fast as typing. I haven't improved it much over the past few years because my hands got better and i don't need it anymore.

https://sourceforge.net/projects/voicekey/ (tarball, includes language model) https://github.com/bshanks/voicekey (repo, does not include language model)

Post reply on HN