A digitação Dvorak é apropriada para programação? [fechadas]

113

Estou sempre procurando maneiras de ser mais produtivo e tenho lido muito sobre como digitar usando um teclado Dvorak .

Parece que isso seria muito mais produtivo para escrever prosa normal, mas e para programação?

Não acredito que seja eficaz, já que o uso de ponto-e-vírgula, dois-pontos, colchetes e e comercial são muito mais comuns na programação do que na digitação diária.

Alguém já teve alguma experiência com isto?

Samoz
fonte
1
a digitação ainda está digitando. qualquer coisa que o torne mais rápido é uma dádiva de Deus. no entanto, a falta de familiaridade com dvorak torna qualquer resposta especializada à sua pergunta por mim sem educação.
KevinDTimm
2
Eu gosto de emparelhar o programa ... Espero que o SO tenha uma tecla de atalho que alterne entre QWERTY e Dvorak.
Tim Reddy
4
O tempo gasto aprendendo Dvorak em um nível eficiente provavelmente seria mais bem gasto em produtividade ... Corolário: O tempo gasto em SO ...
Evan
10
Fechado como uma pergunta não construtiva? Mas a ergonomia é muito importante! Onde devemos fazer esse tipo de pergunta?
AnnanFay
1
@samoz: me surpreende que alguém não considere o seu tempo privado (isto é, em casa) produtivo. Normalmente sou tão produtivo em casa quanto no trabalho, principalmente fazendo outras coisas (mas muitas vezes envolvendo teclados, seja com ou sem teclas de marfim)
ver

Respostas:

50

Existem layouts Dvorak especificamente para programação: http://www.kaufmann.no/roland/dvorak/

Christopher
fonte
27
Dvorak já tem a grande vantagem de que o resto do mundo usa qwerty, agora se começarmos a usar modificações de dvorak também .. É ainda pior! :)
Thomas Bonini
6
@AndreasBonini: da mesma forma, você poderia dizer que, como os usuários do layout de teclado dvorak provaram ser flexíveis o suficiente para adotar outro layout, eles provavelmente podem facilmente se adaptar a um personalizado - e com grande efeito ? (
estou
10
@AndreasBonini, mas os teclados QWERTY possuem diferentes teclas de pontuação em diferentes países. Eles estão em locais diferentes, eles são diferentes (o teclado americano não tem ´¨çetc.), e às vezes eles até funcionam de maneira diferente! (No teclado dos EUA não há teclas mortas AFAIK, então obtém-se em ~nvez de ñ, em ^ovez de ô...)
ANeves
12
Uso o Programmer Dvorak há 2 anos e estou muito feliz com isso. Mudar a memória muscular por atalhos é difícil, mas não tão difícil. Até criei um tutorial de digitação para o Programador Dvorak: programmer-dvorak.appspot.com
Denis Kniazhev
1
@SameerAlibhai A pesquisa não parece ter sido compartilhada, mas havia uma: It was generated through reflection of the most common constructs in these languages and the rules set forward by the August Dvorak in his research, then verified by scanning through thousands of source code lines ensuring that a good fit was found.(de kaufmann.no/roland/dvorak )
GabrielF
92

Alguns anos atrás, quando eu estava começando a sentir dores nos pulsos, decidi aprender a digitar em um layout Dvorak. (Nota lateral: achei extremamente simples aprender o layout usando um teclado qwerty enquanto observo a imagem de um teclado Dvorak na parte inferior da tela)

A única diferença de programação principalmente era que os colchetes e as chaves trocavam de posição com os botões menos e mais acima deles. Dependendo do idioma que você está usando e da intensidade com que usa essas teclas, isso pode ser irritante; mas, novamente, talvez seu IDE os insira automaticamente quando apropriado. Ou você pode usar um programa como o AutoHotkey para mapear outra combinação de teclas para esses símbolos.

Aqui está o que há com a digitação em Dvorak: (IMHO) você precisa usar tudo Dvorak ou tudo qwerty, especialmente se você depende muito de atalhos de teclado em todas as suas sessões de computação.

Minha situação é que eu uso o Vim com muita frequência, tanto no trabalho quanto em casa. Em meu último trabalho, os computadores foram compartilhados entre várias pessoas idiotas , e eu não poderia esperar que outros usuários soubessem como sair de Dvorak. Tive que "reaprender" a memória muscular para os comandos do Vim.

É extremamente fácil para mim alternar rapidamente entre qwerty e Dvorak para texto simples, mas (e talvez seja só eu) todos os meus atalhos de teclado conhecidos são memória muscular. Portanto, a :wno Vim em qwerty termina como a S,, e a I#para comentar uma linha acaba como C#, substituindo a linha inteira apenas por um símbolo de libra. E você pode simplesmente esquecer hjklde navegar no Vim - em vez de pressionar as teclas na homerow, agora você precisa pressionar o equivalente a jcvp. Oh, você quer copiar, cortar e colar com uma mão? xcvagora mudou parabi.em vez disso, divirta-se acessando todo o teclado. Nova aba no Firefox? Você estava apenas digitando em Dvorak, então você pressionou ctrl-t, mas o teclado está realmente no modo qwerty, então você apenas ctrl-k para pular para a barra de pesquisa da web.

Um dos outros pontos baixos de Dvorak é a estranha explicação de 30-60 segundos se um colega de trabalho precisar usar seu computador por um momento.

Portanto, fico muito triste em dizer que, após cerca de 4 anos digitando principalmente em Dvorak, tenho que digitar em qwerty agora porque é simplesmente desnecessariamente difícil alternar entre os modos e reter minha memória muscular de meus atalhos de teclado.

Por outro lado, há algum suporte alternativo do Vim para Dvorak , então talvez hoje seja um bom dia para eu voltar ao vagão de Dvorak. E suponho que se alguém estivesse se sentindo particularmente ambicioso, ele poderia configurar um script AHK para remapear as chaves normais / deslocadas de qwerty para Dvorak, mas apenas passar pelas teclas qwerty quando ctrl / alt for pressionado. Mas parece que daria muito trabalho por muito pouco retorno.

Para recapitular:

  • Dvorak é ótimo para RSI
  • Alternar entre qwerty e Dvorak é fácil para digitar, horrível para atalhos de teclado e outras memórias musculares
  • Dvorak pode ser um grande incômodo de usar no trabalho, dependendo do seu ambiente de trabalho

Espero sinceramente que isso lhe dê mais orientações sobre a decisão de ir para Dvorak.

Mark Rushakoff
fonte
37
Definitivamente, anote e teste as senhas antes de alternar se você está contando com a memória muscular para digitá-las.
Evgeny
5
Eu uso dvorak há anos. Não iria voltar para Qwerty por nada. É doloroso usar Qwerty em VMs de outras pessoas. Yuk!
Bobby Cannon
1
Obrigado por uma postagem muito útil. Pude entender o que você estava dizendo, embora nunca tenha experimentado o dvorak ainda, e a quantidade de detalhes mostra que você realmente pensou nisso. Por outro lado, sem dvorak, eu já tenho esses awkward 30-60 second explanationmomentos enquanto tiro o Visual Studio do modo ViEmu ... :)
ver
5
Quando se trata de atalhos, o Mac oferece suporte a Dvorak com atalhos QWERTY. Portanto, eu uso os atalhos QUERTY em Dvorak. A única vantagem do QWERTY é que c e v estão em locais melhores :)
Ryan Rho
Isso permitirá que você use dvorak no modo de inserção e qwerty no modo normal para que você não precise reaprender nada. No entanto, não funciona para comandos ou pesquisas ex.
Gordon Gustafson
73

Acredite ou não, a quantidade de caracteres especiais (como [], {}, etc) no código-fonte é insignificante em comparação com o texto normal em inglês.

Eu escrevi um pequeno programa que contou as ocorrências de cada personagem no código-fonte de um projeto razoavelmente grande no qual estou trabalhando (50 mil linhas), esses são os resultados. A linguagem é C ++.

    E = 104050
    T = 86887
    I = 62788
    A = 61746
    R = 60438
    S = 58897
    N = 56595
    O = 51640
    L = 45490
    C = 39251
    D = 33776
    U = 30971
    "= 27858
    M = 25925
    , = 25296
    P = 23742
    (= 21407
    ) = 21391
    F = 21232
    G = 20860
    / = 19745
    H = 19717
    ; = 19226
    _ = 16207
    B = 13576
    = = 12427
    Y = 10498
    0 = 10125
    . = 9842
    K = 9241
    : = 8907
    W = 8509
    V = 7922
    {= 7648
    } = 7639
     = 6626
    % = 6507
    Q = 5896
    1 = 5752
    - = 5382
    X = 5261
    '= 3877
    \ = 3421
    2 = 3395
    + = 3172
    & = 2702
    [= 2597
    ] = 2586
    3 = 2174
    Z = 2141
    4 = 1657
    J = 1599
    ! = 1595
    5 = 1560
    # = 1501
    6 = 1367
    | = 1029
    8 = 967
    9 = 953
    7 = 939
    ? = 610
    `= 367
    ~ = 59
    $ = 47
    @ = 7
    ^ = 6
Thomas Bonini
fonte
8
1, resposta muito útil.
JBentley
30
( = 21407 ) = 21391 { = 7648 } = 7639 [ = 2597 ] = 2586 Por que não combinam?
Leo Jweda
6
Os comentários de @LeoJweda podem distorcê-lo.
nawfal
14
@nawfal A menos que ele esteja usando smilies em seus comentários, eles ainda devem corresponder.
Leo Jweda
13
@LeoJweda: 99,92% são compatíveis. Se a base de código for grande o suficiente, é normal que por uma razão ou outra uma pequena minoria não o faça. Espero que não seja por causa de sorrisos, já que :( seria muito mais comum do que :) nesse caso: P
Thomas Bonini
25

Não vi isso mencionado, então pensei em adicionar isto: Estou usando o layout Dvorak em um teclado QWERTY, com layout de tecla de comando QWERTY. Significa que toda vez que pressiono o botão de comando (estou em um Mac), o layout QWERTY se aplica. Portanto, estou digitando completamente "vendado" com o layout Dvorak, mas não tive que reaprender os atalhos do teclado. Tem funcionado muito bem nos últimos 4 anos e eu não voltaria para o QWERTY.

A única desvantagem disso é quando uso o VIM, mas hoje em dia eu uso o vim apenas para coisas simples, por exemplo, modificar arquivos de configuração por SSH.

Pascal
fonte
Como você remapea o layout da tecla de comando?
izhang05
16

Você pode querer considerar o layout do colemak. do faq :

As linguagens de programação fazem uso intenso de símbolos de pontuação. Colemak mantém quase todas as teclas de pontuação em suas posições QWERTY para facilitar a transição de QWERTY. Depende de quais linguagens de programação você usa, convenções de nomenclatura de variáveis ​​(CamelCase vs. sublinhados) e qual editor você usa. No final das contas é uma questão de preferência pessoal. Você pode querer remapear as sequências AltGr para símbolos de pontuação que você usa com freqüência.

Antônio
fonte
2
+1. Nunca ouvi falar de Colemak, mas eles encontraram alguns pontos positivos sobre Dvorak naquele FAQ, especialmente com o alcance do mindinho. E um remapeamento do Vim ?! E suporte para Linux? !! Estou definitivamente tentando fazer isso. No lado "social" dos layouts de teclado, Colemak não pode ser pior do que Dvorak de forma alguma, e se for melhor no lado do esforço físico ... Podemos ter um vencedor aqui.
Mark Rushakoff
5
Acho que o que se deve destacar é que para o inglês, Dvorak é uma vitória significativa sobre Qwerty, enquanto Colemak é uma vitória marginal sobre Dvorak.
Dmitri Nesteruk,
1
então isso significa que o colemak é marginalmente significativo em relação ao qwerty?
Chase Florell
@DmitriNesteruk Se Dvorak >> QWERTY e Colemak> Dvorak então Colemak >> QWERTY, certo?
Leo Jweda
@DmitriNesteruk desde Dvorak >> QWERTY, os benefícios anteriores não são contestados. Mas desde Colemak> Dvorak a superioridade do primeiro não é aceita por unanimidade. Embora Colemak tenha uma vantagem tecnológica distinta, tenho algumas reservas.
nawfal
8

O objetivo do teclado Dvorak é evitar esforço nas mãos, mantendo as letras mais digitadas na linha inicial, pelo menos para o inglês. Eu duvido que isso ajude com a programação de alguma forma significativa devido à velocidade com que o código é escrito. Sempre penso no que escrevo enquanto escrevo, e os nomes das variáveis ​​nunca estão totalmente de acordo com o inglês padrão. Na verdade, eu não ficaria surpreso se as frequências de letras em um arquivo típico de código-fonte variassem dramaticamente das frequências de letras estabelecidas em inglês.

Se você sofre de algo como o túnel do carpo, Dvorak pode ajudar a aliviar isso. Devo dizer que o teclado Dvorak provavelmente ajuda muito mais na escrita e digitação regular do que na programação.

AlbertoPL
fonte
Se você estiver usando snake_case para nomear suas variáveis ​​para maior legibilidade ou como é o costume em linguagens como Python, então você descobrirá que Dvorak é na verdade muito mais fácil, pois a tecla de sublinhado "_" está na linha inicial, tornando a digitação dessas variáveis ​​muito mais fácil e mais natural para digitar. Além disso, as teclas + e - estão a apenas uma tecla da posição inicial, em oposição a 2 linhas no layout QWERTY.
SurpriseDog
8

Os layouts de teclado QWERTY e Dvorak foram projetados para digitar texto, não código.

Você pode experimentar layouts para digitar código como este: Layout do teclado Dvorak do programador

Nick Dandoulakis
fonte
4
Os programadores usam muitos atalhos de teclado. Muitos atalhos de teclado são mais fáceis no Qwerty do que no Dvorak. Por exemplo, recorte, copie e cole - ctrl + x, ctrl + c, ctrl + v.
Andrew Bainbridge
Acabei de me lembrar porque descobri que isso é um problema. Freqüentemente, tenho a tendência de colocar minha mão direita nas teclas do cursor e a esquerda nos atalhos de teclado. Muitos programas parecem ser projetados para isso, com uma forte tendência para atalhos apenas para a mão esquerda. Em Dvorak, os atalhos ficam todos confusos e muitos deles acabam exigindo duas mãos. Como os usuários são todos diferentes, talvez você não ache isso um problema.
Andrew Bainbridge
2
muitos atalhos têm alternativas. Talvez eu seja um cara da velha escola porque uso ctrl + Ins, shift + Ins em vez de ctrl + c, ctrl + v :-)
Nick Dandoulakis
6

Uso o Dvorak há mais de 1,5 anos. A razão de usar o layout Dvorak não é a velocidade, mas o conforto em si. Você pensa mais do que digita código. Eu codifico principalmente usando emacs, no entanto, não estou usando atalhos de teclado padrão. Como o emacs é relativamente altamente personalizável, eu uso atalhos de teclado Ergoemacs. Realmente me ajuda a codificar no emacs, mantendo meu conforto Dvorak sem pular aqui e ali quando eu quero fazer uma operação emacs que geralmente é feita usando combinação de teclas.

Didiet
fonte
1

Estar acostumado com o dvorak pode ser um pouco problemático se você estiver trabalhando em uma equipe ou algo parecido onde você digita em computadores de outras pessoas.

Miloshadzic
fonte
2
Se você usar o layout ANSI normal, há um layout Dvorak integrado ao XP, Vista e a maioria das distros Linux normais (na verdade, eles vêm com variantes localizadas, e o XP não). Portanto, é apenas uma questão de habilitar o miniaplicativo da barra de idiomas.
Adriano Varoli Piazza
2
Sempre fui o único que usa Dvorak entre todos os meus outros desenvolvedores. Isso não é um problema. Eles não digitam no meu computador e eu não digito no deles. Eu apenas sinto muito por eles terem que sofrer com o QWERTY. Depois de aprender dvorak, você verá como o qwerty realmente é horrível. É difícil perceber até que você aprenda dvorak.
Bobby Cannon
Isso acontece o suficiente para que digitadores Dvorak como eu eventualmente aprendam a alternar entre teclados instantaneamente. Não consigo digitar na mesma velocidade em Qwerty, mas é possível.
SurpriseDog
1

Eu uso um layout Dvorak-es -otimizado para a frequência das letras na língua espanhola- tanto para programação quanto para digitação, e as teclas especiais () {} [] <> / * etc. são as mesmas neste e em Qwerty.

Se você estiver mudando para Dvorak, talvez valha a pena projetar seu próprio layout "Dvorak do Programador" com as posições QWERTY padrão para essas teclas. Pelo menos no Windows você pode usar o criador do MS Keyboard Layout para fazer isso.

Adriano Varoli Piazza
fonte
Você sabe como configurar o dvorak espanhol no windows 10? Eu preciso de ajuda com isso. No linux é apenas um comando: setxkbmap dvorak es. Existe tal implementação no microsoft?
nilon
0

Bem, qualquer teclado pode ser apropriado para programação. Só faria diferença se você o considerasse confortável para digitar, porque quebra a sua maneira de digitar com QWERTY.

Em uma nota lateral, este teclado seria péssimo para canhotos como eu.

Daniel A. White
fonte
3
Exceto para o Dvorak canhoto;)
samoz
1
Porque QWERTY é muito melhor para canhotos? Dvorak, AFAIK, também foi projetado para distribuir uniformemente a carga de trabalho em ambas as mãos, portanto, ser destro ou canhoto não deve importar.
Adriano Varoli Piazza
Parece que tem mais coisas de domínio na mão direita.
Daniel A. White
Sim, vwls rnt frqntl sd. Sério, Dvorak estudou bastante para criar o layout, ele não disse 'parece que está mais eficiente'.
Adriano Varoli Piazza
0

Semelhante à resposta anterior - qualquer layout de teclado pode ser apropriado se você se sentir confortável e puder trabalhar com isso de forma eficiente. Dvorak sempre pode ser uma possibilidade se você estiver interessado nele - por que você não tenta? Tenho certeza de que você pode encontrar um teclado antigo para ativar algumas teclas.

Pior cenário: você reverte para qwerty. :)

Ligação

Daniel May
fonte
1
O pior cenário que você aponta é um pouco simplista. Levei algumas semanas para aprender Dvorak e, durante isso, fui menos produtivo. Valeu a pena e eu não estava trabalhando na época, mas muitas pessoas não conseguem simplesmente ignorar 2 semanas de produtividade perdida em seus empregos.
Adriano Varoli Piazza
1
Não vejo como isso pode afetar diretamente a produtividade - Para mim, pelo menos, mudar para um novo layout de teclado não terá um efeito muito prejudicial em meu pensamento lógico de como vou contornar o próximo conjunto de bugs . Talvez para pessoas no estilo de trabalho de relatório, onde você está constantemente digitando sem muito intervalo - posso entender seu ponto. Mas eu aceito o que você disse, talvez eu esteja sendo simplista em minha conclusão.
Daniel maio