Live data from Hacker News

Using Voice to Code Faster than Keyboard

ergoemacs.org

111–120 of 137 posts

Re: Using Voice to Code Faster than Keyboard

#111
post #32

Earlier quoted context omitted.

it's funny. The place i'm at now, in the valley and a successful post IPO SaaS company, management believes that open space and engineers running around, yelling and waving hands is sign or productivity. I have to escape to the kitchen to get anything requiring the tiniest level of concentration.

Yep. The difference in one role (management) the conditions you're describing read as signals of activity. In the other role (development) it reads as noise interfering with the activity you're working on. A "successful" company probably already has a culture that's going to be hard to change, but where management is trainable, you can sometimes improve things by giving them something else like else to focus on, like…

Glad you bring that up. I'm a manager. I do mostly the things you mentioned to give my team some breathing room, and have to WFH when i want anything serious done. As you can imagine if the ambience is bad for me, it is horrible for my team. I try to help with some WFH days here and there. But it is a culture thing. It's in the freaking DNS of the place. Only so much i can change.

Re: Using Voice to Code Faster than Keyboard

#112

Earlier quoted context omitted.

When refactoring: Instead of typing fast, use ST multicursors or VI/emacs macros in an intelligent way. And I really really recommend ST if you don't want to debug your editor macros before debugging your build macros before debugging your code macros before debugging your code (yo dawg etcetera).

On the other end are us visual thinkers. I could do all of that proficiently just fine. In fact I do plenty of macros and scripts and so on. But at the end of the day, I think in pictures. I end up using a lot of editor short cuts and "lots of keypresses" style refactoring while I work out the shape I really want. Then, when I get that, fire off some macros to deal with the rest, cleanup, etc.

That's what I like so much about multicursors: It's a visual way of mass editing.

Re: Using Voice to Code Faster than Keyboard

#113
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…

That's an interesting approach... the writing essays about what's stopping you from getting started. I think I might have to try that.

Re: Using Voice to Code Faster than Keyboard

#114

Question (halfway on topic) -- Who makes the best speech recognition software in the world? Regardless of whether it is available to consumers ... who is the best at it? In particular, how do Apple (Siri) and Google (Google Now) compare to Nuance's stuff? Is Nuance so far ahead of everyone else that they're the clear leader? Or is their codebase "legacy" and vulnerable to better, more accurate software which can be b…

I don't know who makes the best. But I know the history behind dragon is very sad.

http://en.wikipedia.org/wiki/Dragon_NaturallySpeaking#Histor...

Re: Using Voice to Code Faster than Keyboard

#115
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…

... the video is itself a few months old.

Re: Using Voice to Code Faster than Keyboard

#116

Where is it backed up that it's faster than the keyboard? For the couple of minutes I watched of him demoing it... I type waaaay faster than that. In fact, I can't possibly imagine how I could speak faster than I can code on the keyboard. (Regular English sentences are another story, but code is full of important punctuation, exact cursor positioning, single characters, etc...) I mean, this is awesome for people with…

I think this is a silly point of contention. If I recall correctly, it's established that for English-language prose, speech recognition is easily faster (300+ wpm) than typing (150-200 wpm if you're good; 20-50 wpm typical, IIRC).

All he needs to establish is that he can do things like type aVariableNameLikeThis in six words (16% overhead) instead of fifteen[0] (200% overhead) and the rest of the claim follows.

[0] If you tried to type it using the out-of-box dictation in, say, Android or Dragon, you'd probably start with something like "lowercase a backspace uppercase variable backspace uppercase name..."

Re: Using Voice to Code Faster than Keyboard

#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 alternatives in the first place.

Re: Using Voice to Code Faster than Keyboard

#118
post #72

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 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…

I frequently have times when I'm doing things like "writing articles on what's stopping me from coding" and the like. But for me, when I'm on, I'm ON, and in those periods, being able to put code together reliably and quickly is of utmost importance.

Even with the macros and shortcuts he shows, I still would be slower using a system like that. When I'm typing in a good editor, I can blast out code VERY quickly, and when I've typed it, I KNOW it's what I meant. When he says it, he has to stop and look to ensure the code matches what he said.

Yes, he can say a phrase like "camel someVariableName" quickly, and sometimes it Just Works, but when it doesn't, he has to back up and say it again. That kind of distraction can throw me off my train of thought, and the damage to my productivity would be profound.

That said, it still IS great for anyone with an RSI as an alternate way to enter code. I just don't buy the "it could be better even for people who don't need it" argument. Especially with his claim that I would need to abandon my modern editor with awesome language support for one of those relics that relies on CTAGS.

Re: Using Voice to Code Faster than Keyboard

#119

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.

This; if I'm typing and jumping around the code at full speed for long periods it usually means either: 1. I haven't understood the problem 2. I haven't understood the solution 3. I need to spend five minutes improving my Vim macros

#3 is often the equivalent of taking a walk or a shower, or walking in the shower. It's enough of a context shift that your brain will forget the inessential and you'll notice the pattern you were hoping to extract.

I think it's one of the great things about working with extensible tools and having a tool-building mindset. You can maintain momentum while relaxing your brain from working on a seemingly intractable problem.

But, you should be using emacs. :P

Re: Using Voice to Code Faster than Keyboard

#120
post #56
post #55

Earlier quoted context omitted.

Personal anecdote: I correlated my RSI directly to drinking coffee (tea is okay). I notice when I'm caffeinated that my posture is very different and I hold postures (e.g. holding down the shift key) for much longer. If RSI starts to blight you, try substituting your morning coffee for tea or water. For me, a break program just increased the stress levels of 'wanting to get something done', which I think is the root…

> try substituting your morning coffee for tea or water. Syntax [edit:] tip: "try substituting tea or water for your morning coffee" or "try replacing your morning coffee with tea or water" EDIT: For the downvoters: Fairly or unfairly, in the non-tech world people judge you by your choice and arrangement of words. (Compilers do much the same thing, of course.)

s/coffee/tea/g

Uninflected language is a pain. Ditransitive terms (substitute, comprise, etc.) are easily misunderstood at the best of times.

Post reply on HN