ti-enxame.com

Software de reconhecimento de voz para desenvolvedores

Bem, os médicos finalmente disseram isso, preciso relaxar no pulso por alguns meses. Sendo um desenvolvedor .NET, isso poderia acabar com meu sustento por um tempo, algo que não estou ansioso para fazer. Dito isto, existem boas opções de viva-voz para desenvolvedores? Alguém teve sucesso usando algum software de reconhecimento de fala por aí?

POSTSCRIPT: Eu recuperei meu braço novamente ao ponto em que a programação com duas mãos não é um problema. Dragon Naturalmente falando funcionou bem o suficiente, mas foi mais lento, não como o teclado onde eu estava programando mais rápido do que eu pensava.

47
tekiegreg

Está lá fora, e funciona ...

Existem muitos programas de reconhecimento de fala por aí, dos quais Dragon NaturallySpeaking é, eu acho, um dos mais usados. Eu mesmo o usei e fiquei impressionado com a sua qualidade. Há alguns anos, acho que as coisas melhoraram ainda mais agora.

... mas não é fácil ...

Mesmo que funcione incrivelmente bem, não vou dizer que é uma solução fácil. Leva tempo para treinar o programa e, mesmo assim, cometerá erros. É muito lento em comparação com a digitação, então eu tive que continuar dizendo para mim mesmo: "Não pegue no teclado, não pegue no teclado ..." (depois do qual eu pegaria o teclado de qualquer maneira). Eu próprio tendem a murmurar um pouco, o que não melhorou muito as coisas ;-). Especialmente as primeiras semanas podem ser frustrantes. Você pode até obter problemas relacionados à voz se você forçar demais a voz .

... especialmente para programadores!

Ao todo, é certamente uma solução viável para pessoas que escrevem texto/prosa normal . Como programador, você está em um domínio completamente diferente, para o qual não há soluções reais. As coisas podem ter mudado até agora, mas eu ficaria surpreso se elas mudassem.

Qual é o problema? A maioria dos softwares SR é criada para reconhecer a linguagem normal. Os programadores escrevem coisas muito enigmáticas e é difícil, se não impossível, encontrar um software que faça a conversão entre código e linguagem normal. Por exemplo, como você ditaria:

if (somevar == 'a')
{
   print('You pressed a!');
}

Usando os comandos no seu programa SR médio, isso é um grande problema: "se o espaço à esquerda entre parênteses sinal de igual sinal de apóstrofo soletra um apóstrofo ...". E eu nem estou falando sobre navegando seu código. Já reparou quanto você está usando o teclado durante a programação e qual é a diferença entre o uso e o modo como um usuário 'normal' usa o teclado?

Como tirar o melhor proveito disso

Até agora, trabalhei apenas com o Dragon NaturallySpeaking (DNS), portanto só posso falar por esse produto. Existem alguns complementos e sites interessantes direcionados a pessoas como programadores:

  • Vocola é um plugin não oficial que permite adicionar facilmente seus próprios comandos ao DNS. Achei essencial, basicamente. Você também poderá encontrar conjuntos de comandos escritos por outros programadores, por exemplo, código de navegação. Ele é baseado em um pacote de software escrito em Python, então também existem alguns pacotes mais avançados e sofisticados. Verifique também o Vocola página Recursos . (Aviso: quando eu o usei, houve alguns problemas com a instalação do Vocola; confira o grupo de notícias abaixo para obter informações!)
  • SpeechComputing.com é um fórum/grupo de notícias com muitas discussões interessantes. Um bom lugar para começar.

Considerações finais

Parece que a melhor solução para esse problema é realmente:

  • Encontre maneiras de contornar a codificação real.
  • Tente se recuperar. Estou um pouco relutante em recomendar este livro, mas parece funcionar incrivelmente bem para pessoas com LER/túnel do carpo e outros problemas de dor crônica: J.E. Sarno, prescrição Mindbody . Estou trabalhando com isso agora e acho que definitivamente vale a pena ler.
28
onnodb

Dito VB.net e TSQL usando o Dragon NaturallySpeaking 10 Professional. O VB.net é inerentemente mais próximo de um idioma "falado", mas não vejo nenhuma razão para que ele não funcione para C # ou outros. Começo com um vocabulário completamente vazio e o construo do zero para atender às minhas necessidades (é por isso que uso a versão profissional).

Aqui estão as etapas básicas (isso pressupõe que você já criou e treinou um usuário):

  1. Crie um novo vocabulário baseado em "Base Geral - Ditado Vazio".
  2. Não faça com que ele digitalize seus documentos ou e-mail.
  3. Adicione listas de palavras-chave com pronúncia específica à sua linguagem de programação (Dim, ByVal\by-val, etc.).
  4. Crie um documento .txt que contenha todo o seu código menos comentários.
  5. Colha palavras deste documento e adicione-as com pronúncias.
  6. Use o documento para treinar o modelo de idioma do vocabulário.

Escreverei algo com mais detalhes quando tiver uma chance, se alguém estiver interessado.

Editar:

Veja como ditar código SQL . A lista do Word criada aqui pode ser incluída em outros vocabulários se você for um desenvolvedor de banco de dados.

18
Keith Walton
7
Steven Soroka
5
Grzegorz Wierzowiecki

Outra idéia é encontrar outro bom desenvolvedor para parear o programa. Funcionou muito bem para mim. Eu descanso minhas mãos sem necessariamente diminuir a velocidade, acabo produzindo um código de melhor qualidade - ou pelo menos não tendo que revisar tanto.

5
Carlos Villela

Sei que estou um pouco fora de tópico aqui e não sei nada sobre software de reconhecimento de voz; no entanto, você pode achar útil investigar a alteração do teclado para o layout do Dvorak, que ouvi dizer que é muito mais gentil nos pulsos.

http://en.wikipedia.org/wiki/Dvorak_Simplified_Keyboard

4
David Turner

Eu tentei o Dragon há alguns anos e foi um pesadelo de palavras e frases confusas - não recomendado. Entendo que era a melhor coisa naquele momento, então não sou otimista.

Como companheiro, as recomendações seriam:

  1. Encontre um emprego que exija o mínimo de OT quanto possível)
  2. Experimente uma variedade de teclados. Na minha experiência, trabalhar em um laptop em tempo integral funcionou melhor.
  3. Inicie um programa de levantamento de peso de estresse baixo a moderado.
3
marc

Quanto à questão do pulso, aprendi a usar o mouse com as duas mãos há cerca de 10 anos.

É surpreendentemente fácil e alivia a tensão substancialmente. Atualmente, estou usando um laptop e pressionar o botão do touchpad está sobrecarregando meu polegar.

Seja cuidadoso. Esses problemas podem durar muito mais do que se poderia pensar.


p.s. você pode adicionar uma tag 'ergonomia' ou algo assim - o título pode ser sobre em desenvolvimento para reconhecimento de voz.

3
akauppi

O padrão ouro para a programação por voz é VoiceCode . Se bem me lembro, eles suportam C++ e Python.

3
Guillaume Marceau

Como mencionado acima, o Dragon Naturally Speaking é o melhor software de reconhecimento de voz existente no mercado, no entanto, o Microsoft Speech Recognition não está muito atrás e vem com o Vista.

O Vocola foi recentemente portado para o MSR e possui um recurso de integração .Net.

Algumas dicas

  1. Aprender a ditar leva algum tempo. Só porque você pode falar não significa que você sabe como usar o software de reconhecimento de fala
  2. Obter proficiência com uma combinação de SR e teclado/mouse é muito mais fácil do que a operação com as mãos livres.
  3. Use CodeRush ou equivalente para digitar menos.
3
Scott Weinstein

Comecei a usar a mão esquerda para o mouse, isso não só me ajudou um pouco, mas também me permitiu usar a mão direita com mais liberdade, se você escrever muitas coisas enquanto codifica, isso ajuda muito. Você pode rolar e anote ao mesmo tempo ...

Quando meus problemas começaram, coloquei uma bolsa de água no pulso, adorei! a bolsa que eu tinha era perfeita, era longa e eu a coloquei antes do teclado para que eu pudesse descansar meus pulsos lá ... até que um dia eu pisei nela ...

2
Alan Featherston

Outro tópico fora de tópico aqui, descobri que o keboard dividido em duas partes e outros teclados especiais ajuda, basta verificar a cinesia. Eu coletei informações sobre esse hardware no diigo:

E os links diretos:

Mais uma coisa! Lembre-se de pausas para exercícios. Exercícios regulares (por exemplo, exercícios pequenos - a cada meia e hora diferentes) tornam as coisas realmente realmente melhores!

2
Grzegorz Wierzowiecki

Dragon Naturally Speaking Preferred e Vocola. Autohotkey para automatizar o máximo possível. Não é fácil de programar. Eu tentei; quase impossível. Confira Healing Back Pain de John Sarno. Isso me fez melhorar. Estou de volta à programação o dia todo!

2
max

Scott Hanselman usa reconhecimento de voz m pouco .

1
Tom Ritter

Eu usei o Dragon Dictate em 1996 pela mesma razão que você. Foi lento, mas melhor do que não funcionar. Achei mais fácil escrever código preenchendo o quadro branco 4x8 com código e, em seguida, pedindo a alguém que o digitasse. Depois, usei o DD para depurar.

E enquanto você está nisso, você pode olhar para Deborah Quilter livros sobre RSI. Eles são muito informativos.

1
plinth

Não consigo encontrar um link para um (eu olhei), mas existem teclados com apenas 5 teclas, permitindo que você digite com uma mão, presumo que você tenha apenas um pulso ruim.

Se eu encontrar um link, tentarei enviar uma mensagem para você.

0
Teifion