In an effort to optimize the keyboard layout to reduce wrist movements and increase efficiency while programming, I have analysed my java programming pattern for lengthy code using http://www.andong.co.uk/dvorak/Default.aspx . The layout that I used was pure QWERTY i.e standard :).
The portion of the analysis that I was interested in was the key frequency and here are the SHOCKING results
Key frequency in your text
[SPACE] 13,034 23.34% p 1,229 2.20% w 407 0.73% _ 79 0.14% - 30 0.05%
[LSHIFT] 4,725 8.46% d 1,070 1.92% h 373 0.67% z 75 0.13% [ 16 0.03%
e 3,639 6.52% * 1,043 1.87% b 373 0.67% : 71 0.13% ] 16 0.03%
t 2,798 5.01% u 984 1.76% y 334 0.60% k 69 0.12% 3 15 0.03%
[RSHIFT] 2,398 4.29% c 965 1.73% j 331 0.59% 1 64 0.11% 5 13 0.02%
s 2,048 3.67% . 908 1.63% @ 274 0.49% + 51 0.09% 4 12 0.02%
a 2,038 3.65% m 783 1.40% x 254 0.45% 0 47 0.08% 8 11 0.02%
r 1,970 3.53% g 741 1.33% " 254 0.45% > 39 0.07% 6 6 0.01%
o 1,889 3.38% ( 726 1.30% / 250 0.45% < 36 0.06% 9 4 0.01%
i 1,793 3.21% ) 726 1.30% = 189 0.34% ! 36 0.06% 7 4 0.01%
n 1,780 3.19% f 607 1.09% { 185 0.33% 2 33 0.06% | 4 0.01%
[ENTER] 1,285 2.30% v 543 0.97% } 184 0.33% \ 33 0.06%
l 1,270 2.27% ; 481 0.86% , 162 0.29% q 31 0.06%
I was expecting that I am using the left shift too much which has caused me the injury that I have talked about at the end of this post https://forum.colemak.com/viewtopic.php?id=1311
but I was not expecting that I am hitting shift more than 'e' and 't' WOW!
Since I already has embarked on and have actually created a new layout to reduce wrist damage, I do not not plan to keep anything from QWERTY that does not make sense. The letters section of my layout and the shifts are finalized now and I am on improving the position for the programming symbols, Tab, backspace, Ctrl.
It would be really helpful to know other programmer typing pattern, while improving my layout so it can suite as much people as possible, without jeopardizing the main aim, which is decreasing wrist unnatural twists. Thus if you have time, please give it try and post you programming text analysis results and the language that you use for programming. I think that java C, C++, C# should have close pattern, but HTML, jQuery, php ,vb would of course be different.
Also if you have second thoughts or concern on the placement of tab and CapsLock on Dvomak, my layout, which I am oblivious too, please let me know. You never know you might find yourself using dvomak someday or something similar, and this is the chance to participate in creating the optimized version of the layout for programming.
Currently dvomak is like this:
* * * * * * * * * * * * * capslock
backsapce ',ugk bfcrl
shift oieay dhtns shift
Ctrl ;/j.x pmwvq z
Tab
The letters section of the layout is finished and I will not make any changes on it anymore, the optimization will only be done on the modifiers key and symbols. I am currently testing switching the caps, left ctrl tab and backspace.
On dvomak my best race offline typeraces was 88WPM now and for 5 minutes on hi games is 74 WPM now, but all was offline. Now my speed will decrease again as I have to test the new placement of the backspace :( .