Hacker News new | past | comments | ask | show | jobs | submit login
Improve your touch typing (keybr.com)
413 points by r2b2 on May 20, 2015 | hide | past | favorite | 195 comments



Biggest annoyance with this software - backspace is, apparently, something that I alone exercise. If you type an incorrect letter, it simply doesn't advance the cursor rather than advancing the cursor and marking the letter as incorrect. Since I am already a pretty good touch-typist, I routinely KNOW I have hit an incorrect key, hit backspace, and correct it and progress with the word.

However, very often I will do something like spelling "icnorrect" from feeling, then hitting backspace exactly eight times and re-type "ncorrect"... which is simply not supported by this software.


This reminds me of a problem I face. I write documents in LaTeX all the time, and my preferred text editor is vim. In vim, CTRL-W will remove the last word in insert mode. This has become second nature to me, since I frequently find it faster to retype a whole word than to perform the correct number of backspaces to correct a typo midway.

What this really means is that I close browser windows with great frequency whenever I'm typing something and make a typo, and hit CTRL-W.


I have the same issue with screen sessions. I use Ctrl-a to move to the beginning of the line (an Emacs shortcut, also implemented in lots of shells), but screen's default command prefix is Ctrl-a. Of course, that one's simple to change.


Ctrl-a Ctrl-k in Emacs moves to the beginning of the line and then erases the line. In screen, that key combination kills the current window! At some point, screen added a "Really kill this window [y/n]" which was a terrific enhancement...


Ha, I don't remember running into that exactly. I have found several lines in my local text editor where I type "a" at the beginning because I mistakenly think I'm in screen, so I type "Ctrl-a a" instead of just "Ctrl-a".


Change screen's hotkey to something else. I like Ctrl-b.


Or accidentally clearing a web form that you painstakingly filled out because of ESC muscle memory. :(


The Lazarus Form Recovery addon, recommended by a dead comment below, looks really good - compatible with both Firefox and Chrome.


I do this all the time. I also accidentally try to save web pages with cmd+s constantly.


What about attempting CTRL+Z directly after clearing it? It might undo your clear.


Taiga does this. Hate it.


You could deactivate the shortcut on that page (or everywhere) with Greasemonkey.

http://userscripts-mirror.org/scripts/show/66162


Disabling it when forms have focus would be useful.

But this makes it a real pain to close a tab.


Btw, to delete a single word on OS X, alt + backspace. For Windows, ctrl + backspace.


…and on a Mac, to delete to the start of the line, type CMD + backspace. I started using this shortcut, and the parent one, about two weeks ago. They are just now becoming muscle memory, and I find them very useful.


FYI, in OSX a lot of emacs/shell shortcuts work in textboxes/-fields too. e.g., ctrl-a, ctrl-e, and ctrl-k respectively for beginning of line, end of line and deleting to end of line.


You should use pentadactyl then ;) Close browser windows with :t, Ctrl-w does nothing, clicking in a textarea and doing Ctrl-i opens a gvim window where you can edit your text properly. And much more.


As another option, Vimperator also allows vim like editing in textareas with Ctrl+t and supports Firefox >30


Why can't we rebind this key to another key? Why not make CTRL+Q or CTRL+B remove the last word.

Something which really grinds my gears is when software has non-rebindable hotkeys. Why are keybinds hardcoded? We can change our controls in games from WASD to ESDF. Why can't we change our copy key in Windows from CTRL+C to CTRL+L, without using 3rd party software?

Having written my own applications on occasion, I know this isn't that difficult. So why is it so uncommon?


At least in vim, you can remap just about anything that you want to.

The reason the feature doesn't get included as often is because of exactly this. Even someone who could make use of the feature, and is annoyed by the current keybindings, doesn't take advantage of re-binding. The reason it is available on video games, on the other hand, is because its necessary for controller support, which a large enough portion of the video game community uses for it to have high demand.


Rebinding system shortcuts makes life difficult for application developers. They have no idea if they can use CTRL+L for their shortcuts or not.

In-app rebinding also makes life difficult for the developer in the future, because any new feature added may have it's key rebound by some users.

Look at Emacs. Technically users can rebind things, but it's easier to learn the defaults since every other key is already bound to something else.

Generally everything is rebindable internally, but users are only offered compatibility modes with other popular software.


I've played more than one game (Freespace, Tribes, Warframe) that had more than 30 keybinds. Managing keymaps can be challenging, but it's not impossible.

And discussing this reminds me how much of a pain it is. What we need is a system where we set our own defaults in an XML file or some other common format (or use a software tool to do that). Then we can select this keymap when we install applications.


I guess, this is often not prioritized because the majority wouldn't use the configurable keybindings.

For what it's worth: I use AutoHotkey (on Windows) for configuring system wide shortcuts.

Official homepage: http://www.autohotkey.com/ My own ahk files: https://github.com/philippotto/shortcut-collection


also control + q would quit many sane applications


Another hotkey we could rebind! How about we change it to Alt+Q?


Even more annoying is using virtual box with a linux guest and resetting the VM when you wanted to recall a command (CTRL-r).


Well, I never use right control :)

There's no reason to keep the host key as right control if it causes problems like that. You can set it to something different in VirtualBox's global preferences (Control-G) > Input > Virtual Machine.

Also, you may prefer to run your VMs headless with vboxheadless (man vboxheadless). May save you some time and frustration, and video memory. Then ssh into them by going into the guest settings and forwarding port 22 to a host port (I use 12322).


I even did this during a test running in a browser at school. Luckily it was possible to reopen it and nobody noticed. I've done this so many times that I have some setup always running vim in the background in a tmux session only a keypress away. Super+Shift+v then type <leader>y and paste in the browser.


Thanks for the tip. I have this problem all the time.


I had the same complaint, but there's actually a setting for that. Uncheck "stop cursor on error" under Miscellaneous.


If you want to teach people to type for real, this should be on by default.

And, it should move the cursor without moving the text.


If you want to type quickly, especially for something real-time like dictation, it's better to keep going and fix typos later. You don't want to train people to stop typing every time they mess up, because they might miss something.


I agree for skilled typists, but if you were just trying to learn the keys at first I could see wrangling backspace being more distraction than learning.


I disagree. In real word processors the cursor would move forward and people should get used to that, instead of having to learn one thing here and something else in the rest of the world.


I dunno, do you remember first learning to touch type? For all we talk about typing in keystrokes at a time, that's an exercise in frustration if you don't confidently know where each key is. 99.9% of your typing will be "real world" practice, but there's also utility in isolated drills.

Anyway, as someone who's tried to learn to type on prototype hardware without a working backspace, I appreciate the feature :)


Was coming to say exactly the same thing. The old Mavis Beacon program had the same issue which was that it expected you to just type to the end, eventually getting the right letter if you missed one and then correct the typos later. Whereas I seem to type ho[^Hpe a lot for 'hope'

The other thing that I'd love to see (I may have missed it) is typing proficiency on programming punctuation.


I'm not sure why this software behaves that way -- but it used to be a (mis)feature of measuring typing speed on mechanical typewriters -- there were no do-overs. The only way to correct would be to either go back and strike-through -- or manually correct, whiting out the error, and typing the correct word. The first wasn't really usable for "typed" letters and such -- and either would take much more time than on a word processor. Because of this, when measuring wpm/typing speed, errors are severely punished -- even if many of those can be taken care of with auto-correct and/or much faster manual correction.

I'm not sure sticking to this measure for typing speed now that hardly anyone uses typewriters -- but errors do break flow, and for that reason it is good to train towards perfect typing -- even if that means typing a little "slower".


>>I routinely KNOW I have hit an incorrect key, hit backspace, and correct it and progress with the word

Because that's a bad habit when deliberately practicing. A good typing program should have a couple of modes. One that forces you to keep moving forward even if you make a mistake (and not let you backspace, this develops speed). Another one that will make you stop until you hit the correct key (for beginners or to break bad habits).

Depends on what skill you want to focus on.


ctrl+backspace to go back a word on windows and linux usually. alt+backspace on mac.

plus, lots of linux apps and the command line you have ctrl+w to go back a word. just fyi. :) quicker than hitting backspace a bunch.


An annoyance, yes it is. But I think it's a good feature. Not making mistakes is the most important thing to improve your touch typing speed. If this annoying behavior makes you slow down and stop making mistakes, instead of using backspace without thinking about it, then it's well worth it. That backspace reflex comes very quickly anyway, it's not really something you need to train.


There's a setting for that under the misc. tab on their site. I agree though, that's a very poor default.


My complaint is that it will often give you words that are nearly English words (but not actually). If you really want to type quickly, you will sort of type one word at a time rather than one letter at a time (time yourself typing an English phrase rather than words composed of random letters). I kept getting errors because I would type the words my fingers thought was coming, not the actual non-word I was supposed to type.


I type 142 WPM on average. I think the lack of real English words is a structural flaw of this application.

To get really fast typing speed, you need to develop muscle memory for words not just letters. For example, when I type the word "complete" I don't think "c", "o", "m", etc. I literally just bolt out the word complete without even thinking about it. I don't believe there is any other way to be able to type more than 2 words per second.

This might be useful to get you to a certain level of moderate proficiency but I believe it will hurt you at higher levels.


I thoroughly agree. I type 115WPM and one letter at a time knocked me down to 80WPM on my first go through. Bleck!


> you need to develop muscle memory for words not just letters

I think I agree. Is there any research on this?


Yes, I type words, not letters. So I saw 'pon' and tried to type 'upon'.

That and the not-supporting the backspace thing got me a bit.

Still, its a great website design, very easy to get started.


> Yes, I type words, not letters. So I saw 'pon' and tried to type 'upon'.

"pon" is an English word, its a (perhaps rare, now) shortened form of "upon" (through age, among other things, it is established both with and without an apostrophe.)


I've only ever seen it as 'pon, which like wav'ring or 'neath, doesn't indicate to me a new word, just a poetical elision of an unwanted syllable. At any rate, word or not-word, it's rare enough that I'd think it an error if I encountered it in a typing improvement program from 2015.


It might be a word in English[dictionary], but it's not a word in English[used].

On that subject, what does the word "wyrm" mean?


Wyrms are dragons, or similar creatures of legend. You'll encounter them pretty commonly in video games.

This is a mana wyrm from Warcraft:

http://huangstudio.com/wp-content/uploads/WoWBurningCrusade_...

And this is a wyrm from the Final Fantasy universe:

http://vignette3.wikia.nocookie.net/ffxi/images/e/e9/Wyrm.jp...

I'll let you google some more. :)


    Æfter ðám wordum
    wyrm yrre cwóm 	
                          After those words
                          the wrathful wyrm
                            came,
    atol inwitgæst
      óðre síðe 	
	                  awful cruel visitor
                          a second time,
    fýrwylmum fáh
    fíonda níosian 	
                          with hostile, gleaming
                          flood of fire to seek
                          his foes
    láðra manna·sydaudio
    líg ýðum for· 	
	                  the hated humans;
                          the flame came forth
                          in waves,
    born bord wið rond·
    byrne ne meahte 	
                          burned shield to
                            the boss;
                          the byrnie could not
    geongum gárwigan
    géoce gefremman 	
                          to the young spear-
                          fighter lend support
    ac se maga geonga
    maéges scyld 	
                          but the young man,
                          under his kinsman's
                            shield
    elne geéode
    þá his ágen wæs 	
                          courageously
                            advanced,
                          when his own was
    glédum forgrunden.
    Þá gén gúðcyning 	
                          consumed by fire.
-- http://www.heorot.dk/beowulf-rede-text.html


It's sometimes used for mob names in video games, where it is interchangeable with "worm."

Edit: Apparently I'm wrong (it's not interchangeable for worm), and it means snake/serpent.


Dragons, not worms or snakes.


Sounds/Looks like the name of a tech startup. :)


It uses a lot of uncommon words (and at least some proper nouns - small cities and such), but I have yet to see something that's not a word. Also, it gets better once you get through calibrating a few letters. There just aren't that many common words that use only the 5 letters it starts out with.


This is the last set I had: ven␣yearly␣ter␣timentain␣him␣they␣brokent␣clar␣wers␣quest␣wils␣comewhat␣lead␣who␣the␣luctive␣wills␣missue␣and␣the␣advant␣edmunion␣that␣suffect␣who␣the

There seems to be at least a handful of made up words in there.


Arguably, hn should break up long "words" outside of "code"-blocks. Just stick in a few zero width space[1] U+200B/&#8203; or soft-hypens[2] U+00AD/&shy;.

[1] http://en.wikipedia.org/wiki/Zero-width_space

[2] http://en.wikipedia.org/wiki/Soft_hyphen


Can you please edit your comment to add some spaces? This comment makes the comment section horizontally scroll and very difficult to read other comments. Why doesn't HN force wrap long lines? :/


Would it be possible to edit this comment and stick that in a code box or something? It's breaking the page width.


I think for practicing it's better to not rely on muscle memory.


Not if you want to improve your muscle memory, which after a while becomes the point of continued practice. Unless you're training to transcribe cipher text (truly random sequences).

I haven't seen any research specifically for typing -- but I think it stands to reason that we use word-images when typing, just as we do when reading, listening and speaking. Once we become proficient at using typing to communicate.


Using this tutor was an incredibly frustrating experience for me. I blazed through all the letters until Q. After five minutes of typing "squall" and "qual", my left hand hurt and I gave up.

Also, correcting doesn't seem to work like any typing tutor or text editor I know of. Every time I hit backspace and typed the correct letter, it said I typed the wrong letter. Apparently, backspace acts like some weird double-backspace. You have to retype the letter before the mistyped one as well.


I had the same issue, regarding the Q section.

Part of the issue was that Z comes right before that and was filled with one-sided words like 'dazed'(5/5 left-handed strokes) and 'sized'(4/5 LHS's).

And then you qet to Q and you're now forcing yourself to go in the opposite direction with a fatigued hand.


Same thing here. "Q" is just out of the way so I can't go past 36 WPM for that letter.

Backspace functionality is frustrating as hell.

The algorithm settled in the local minimum.

But after doing that for a good 20 minutes, they gave up on teaching me how to type "Q".


Their finger diagram makes the same mistake that most do: outward slanting finger columns of Q-A-Z, W-S-X, E-D-C, R-F-V, T-G-B.

http://i.imgur.com/9X0nFgv.png

The Q-A-Z finger layout requires extremely un-ergonomic compromises: a bent left wrist and/or using side-to-side finger movements rather than "curls".

A simple switch to using the columns Q-A-Shift, W-S-Z, E-D-X, etc. puts your left hand and fingers into a far more comfortable position. Neutral inward-slanted wrists and naturally curling fingers. I suppose E-S-Z might be even better.

I'm very surprised that the "standard" Q-A-Z finger placement for the left hand is still taught. There is a far more comfortable alternative available on any hardware keyboard. I'm curious if there are any other W-S-Zers who type the same way I do.


I'm astounded by the comment because, until right at this moment, I had not considered how I type these letters. I've been touch typing for 16 years give or take and I just now realized that I don't actually use my left ring finger for any key on the bottom row - I type both Z and left shift with my pinky and do W-S with ring and E-D-X with middle. I guess you can count me as half-following the more ergonomic method :)


Heh, I'm glad I read your comment. I'm in the same boat as yours, when I learned touchtyping I wound the outward slant extremely uncomfortable on regular keyboards (it works better on "matrix" keyboards though). I naturally ended up using the finger placement you describe.


Yeah, that's what I find so funny about "column" keyboards such as:

http://www.typematrix.com/ http://www.keyboard.io/

Standard keyboards already have pretty good columns when you use a neutral slanted hand position. The right side especially, and the left isn't bad as long as you use the W-S-Z offset bottom row.


Thanks for this comment, as I'm learning to touch type, and for me every time I had to type the bottom row with my right hand it feels awkward. This will definitely change the way I learn :-)


On this webpage, in order to correct an incorrectly typed letter, you have to press backspace, type the previous letter again, then type the correct letter you meant to type before pressing backspace. This completely breaks the normal flow of typing. In order to acclimate to this, you will need to learn how to type incorrectly...


Go to settings > miscellaneous > and uncheck 'Stop cursor on error' That'll fix the issue and let you type properly.


I have to agree with bballard, this is incredibly frustrating, and had I not have read your comments I would have abandoned the site. Please make this the default - many people are used to typing this way.


This should really be the default and only setting. It's very annoying and incorrect otherwise.


It ignores keys that are incorrect, so pressing backspace isn't necessary and actually just delete the last character you typed correctly (Since that was technically the last key you typed if you don't count incorrect keys). There's a setting that make it take every key you type and just displays them as incorrect (And lets you backspace them as you'd expect), isn't not the default though.


You just "block" until you hit the correct key, so try to avoid pressing backspace at all and just focus on the correct key.


But that's not how real typing works...


I noticed something was weird about that, but I couldn't figure out the exact mechanic. Perhaps the intended lesson is to correct mistakes later (i.e. not now). This is how I was first taught years ago, even though it is not how I normally type things out now.


I very quickly hit that as well, and it took a few tries to figure out the behavior and why it was completely breaking my expectations.


Is it trying to approximate the correction-tape workflow from a manual typewriter?


Touch typing means you type the document, then correct errors, then apply formatting and font choice, and preferably don't make errors.


Maybe for typewriters, no way that math works out for fast typists though. This exercise indicates my time-cost-per-error is roughly equivalent to typing a word; the cognitive cost of leaving the site of the error can't possibly be lower than that.


It depends what and how you're typing.

It works for most of the traditional forms of typing (audio typing, typing from shorthand, etc) where you have a body of stuff that needs to be typed and not so well for stuff that programmers type where you're creating as you type.

You must check the text for errors when you've finished typing it so it makes sense to do all the error checking then. Some people find the cognitive focus switching of correcting errors as you type tricky.


Very good point. I think my argument still holds for brainstem-layer errors, where I know as I'm pressing the key that it's not what I meant-- it's hard for me to not correct those, anyway.

For the kind of typos that you would need to be watching the output to correct, it totally makes sense to batch those up sometimes.


I was under the impression touch typing was simply typing without looking at the keyboard, and instead watching the screen, where you can correct errors as they happen.


> I was under the impression touch typing was simply typing without looking at the keyboard, and instead watching the screen

Originally, it meant not looking at either the keyboard or the output (screen or, for an actual typewriter, the typed page) but only the source from which you were typing, if any -- it referred to typing accurately by touch alone.

It was a key skill when incorporating edits meant retyping, and looking at the output meant you couldn't also be looking at the source, and switching between the two had a significant productivity cost for a high-volume typist.

Its less critical of a skill today but still a useful skill to have if you need to reference some source document for information while typing, etc.


This is looking nice, but I am frustrated because I have yet to see what I think is a properly designed set of introductory exercises. IMO there are two big issues for people learning to touch type: learning where the keys are and developing the motor coordination to move the fingers from the home row to the non-home-row keys and back again. Every typing program I've seen seems to focus on the former and not the later.

This site teaches the letters "eaint" first. I think it's better to introduce the home row first. Don't worry that you can't type much English with the home row (unless you're using another layout like dvorak). Just get them good with different combinations of "asdfjkl;". Then once you have that, you introduce new keys by having them practice the jump from the correct home row key typed with the same finger to the new key and back. Let's say we're introducing 'e' next. The exercise would be something like this:

ded ede dde eed eded dede deeded edded ...

This gets them familiar with precisely the right motor recruitment pattern. The point of this exercise isn't to achieve the absolute maximum speed. It is to exercise the movement pattern of moving a certain finger from the home row to the key and back. Obviously you need to make sure they're keeping their hands on the home row and not typing d and e with two different fingers to go faster on this particular exercise. But that shouldn't be hard to do in your instructions. You can start to dissuade this in your next exercises by bringing in the home row letters typed with the adjacent fingers.

fesd sefd sdfesd fdsefd ...

I think this kind of exercise pattern should be used to introduce all the keys. Once the student has established these motor patterns in the process of learning where each key is, then you can go on to English text. Of course you can put English into these exercises when possible, but not to the detriment of the main point which is motor movement patterns.

If you already know how to touch-type and are learning a new keyboard layout, then obviously you already know the motor recruitment patterns and the approach used by this web app is great.


"Don't worry that you can't type much English with the home row (unless you're using another layout like dvorak)"

This is, in all seriousness, my recommendation for learning to touch type:

Step 1: Switch your layout to Dvorak (or any other sensible layout).

Step 2: Learn to use it.

There's no step 3. Touch typing is only hard because QWERTY is a terrible and stupid layout that encourages you to wander from the home row because too many common keys aren't on the home row.

If you solve that problem directly, there's no "learn to 'actually' touch type" step. In any sensible layout (of which Dvorak is merely one of many, really), you don't have to force yourself to touch type... it's just what your fingers will do on their own.

If your goal is to learn to type correctly, based on what I see of people fighting for years, I seriously think that "Learn Dvorak" is a faster, more effective way to get there than "Learn QWERTY + spend the rest of your life trying to force your brain to do something it quite rationally does not believe is optimal".

People can get emotional about this, so bear in mind whether or not QWERTY is the only "practical" layout to learn because it's the only pervasive one is separate from the question of whether it encourages your hands to wander from the home row. (Which is all-but-proved by the very fact we're having this discussion.)

I am also extremely aware of the expense of learning Dvorak or another layout, having done it myself. I still say it's easier that trying to force QWERTY touch typing, if you want to learn to touch type at all. If you're happy with wandering QWERTY syndrome... and I really have no great arguments about why that's bad... then carry on.


Step 3 is rebinding keys in nearly every program, especially those which are coordinated to be used with a left hand on the keyboard and right on the mouse.


This really shouldn't be downvoted, it's basically the only thing keeping folks from switching. Talking as someone with a super-custom Dvorak vim layout, here-- you'll run into software that just won't work without switching to US.

In practice, the combined strategy of Dvorak+QWERTY command keys, application-specific layout settings, and a rarely-used keybind to swap manually makes this manageable on a day-to-day basis, but it's definitely not ideal. Blame the dumb legacy technology driving keyboards, if you're mad.


> This really shouldn't be downvoted, it's basically the only thing keeping folks from switching.

The thing that keeps me from switching is I learned to touch type long before having access to keyboards that could be reconfigured.

While that may be less common now, I suspect lots of people still become proficient keyboarders long before learning how to change keyboard layouts, and at that point switching is a cost rather than a benefit.


I've been using Dvorak for over 10 years. The only 'shortcut' I have is a couple of shell aliases: alias h=ls alias hh=ls -l

I prefer Emacs to Vim though, perhaps that's less affected since shortcut keys are influenced by meaning rather than position? (e.g., Ctrl+N, P, F, B for moving nextline, previousline, forward, backward).


Vim's the worst for this, since it has a mix of the two. hjkl is positional, but then iasdftweruvnp are all memonics, and I'd want to move those. (Insert, After, Substitute, Delete, Forwards, unTill, Word, End, Replace, Undo, Visual, Next, Paste).

Actually, I guess most of the keystrokes are placed by meaning, not position.


If you're stuck no the cursor movement keys being on the home row, then it's tough. My solution was to do no remapping and just learn the new locations for hjkl. It actually ends up being not that bad. In dvorak j and k are right next to each other in the left hand and work very similarly to how they work in qwerty. Also, h and l are typed with the index and pinky of the right hand respectively giving a pretty nice left/right mental picture. So I don't think it's bad at all. I also don't use hjkl all that much, preferring bigger movements like w/b, f/F, H/L, {/}, C-d/C-u, C-f/C-b, etc.

Switching back to qwerty in vim is pretty rough for me though. Enough of the mnemonics that I use on a regular basis get translated to muscle memory in my head that it's tough. I used to be able to switch back and forth easily when I was at a job that had me on qwerty keyboards regularly. But now that I'm not I've lost a lot of it.


Yeah, it actually would not be a big deal except that after you move hjkl, you need to move dhtn, and then... I wound up with a couple of slightly different mnemonics, but not enough to be really confusing if I sit down at a strange terminal.


I actually didn't rebind anything. I didn't even rebind vim. That was a bit of a struggle for awhile, but it's fine now. I guess I might do some rebinding for things like movement in games if I played them.


Colemak was designed with the goal of keeping the ZXCV shortcut cluster in its QWERTY position. That takes care of the common Cut/Copy/Paste/Undo shortcuts, at least.


Yep, I completely agree with you. The other advantage non-qwerty layouts have is that you can't cheat by looking at the keys, which greatly serves to push you in the right direction.

Side note: After typing exclusively on dvorak for ~10 years now I actually think that it's not the best layout to maximize potential typing speed. (I've never gotten as fast with dvorak as I used to be with qwerty.) Dvorak focuses too much on single key locations and alternating hands. I think to get the maximum speed a layout needs to focus a lot more on runs, making sure the most common n-grams are typeable with out-to-in or in-to-out runs of adjacent fingers in the same hand. I've thought about working on this, but quite a bit of work would be needed to develop a new and more accurate cost model and find a layout that optimizes it--I've got too many other competing interests. But I'd love to see it done.


I have a similar experience to your side note, but I'll say that I wouldn't change from Dvorak for anything. It may or may not change RSI and it may or may not be good for speed, but it's very comfortable for my daily typing tasks so I'm hooked.


I'm somewhat convinced the only reason other layouts are easier to learn touch typing is because most keyboards are in qwerty. Learning to type well is still hard. In fact if you typed well already and decided to switch layouts I believe you'll have a much easier time than a newbie.

I learned Colemak earlier this year. After I reached my old qwerty speed I re-learned how to type in Qwerty. As such I can now type in both layouts at my original speed. Typing in qwerty is really not bad; good enough that I don't really recommend others to change layouts or learn another one. I am also convinced an opinion stating that qwerty is terrible coming from someone who still can't type in it well and naturally is somewhat biased.


I like dvorak and use it all the time, but I think there's another reason for the tendency of dvorak users to become proficient touch typists that doesn't have anything to do with any intrinsic property of dvorak. When you learn dvorak on a qwerty keyboard, there is less temptation to look at your fingers because all the keys are labeled wrong.


"When you learn dvorak on a qwerty keyboard, there is less temptation to look at your fingers because all the keys are labeled wrong."

A property plenty easy to achieve on any keyboard layout, with a little ingenuity (and possibly a butter knife).


haha, maybe! Anyway, when I learned dvorak, I used http://www.typingstudy.com which I think is the key for my fast speed. But maybe I'm mistaken :)


I wrote a post about my switch to colemak the other day and how i'm practicing addresses some of your concerns: http://gibrown.com/2015/05/18/colemak-0-to-40-wpm-in-40-hour...

TLDR: build frequent wordlists and lists of n-grams for practicing. Here's mine with lists for English, Unix Commands, and PHP code: https://github.com/gibrown/learn-colemak


Nice write-up and useful links to Typingcat and Typeracer - thanks.


Also, from music instrument learning, I'd love to find an exercise that avoid me or teach me how to not go into cramping mode. Keeping the pace fluid at all time, as much as possible.


Also from music lessons, practice slow, then fast, then normal speed. Type the passages or tests really slowly, but paying attention to correctness and rhythm (even rate) and then practice again fast (or just normal speed). Rinse, repeat.


Oscillating around, great idea.


Type Fu [1] uses this approach. You can choose between random words or random letters. The first level starts with letters or words that can be typed with the home row keys and each subsequent level adds more keys. The levels are optimised for Qwerty, Colemak and Dvorak layouts.

[1] http://type-fu.com/


Cool! Too bad I can't really figure that out without paying for it. Probably won't ever try it since I already type well.


> Every typing program I've seen seems to focus on the former and not the later.

I have the exact opposite observation, except for this one. So many typing tutors start with fjfj ffj fjj and on


Wish there was an option to pay to remove ads. I have adblock on and I get an nag ad saying "View ad. Be upset. Keep us running. You may not like this ad, but it supports the developer and keeps this site free." which is fine but please offer me the ability to pay to remove them.

Nothing is more distracting when trying to learn touch typing than ads flashing all around.

I initially learned on TypingWeb.com (I think that is right) and keybr.com beats it in many ways. The extra book marklet to turn any web page into a lesson is the 1st, the 2nd is the ability to upload your own text.

A 3rd I would like is to give the URL of a Github repo and select a tag then you would be able to type every single file of the repo. It would keep track of your progress for that tag. You could even compete with others for typing say the entire Drupal 7.32 release etc.

I had bought a domain of doing something like this a while ago but only becuase nobody else had done it. keybr.com seems like it has what it takes to do this and I am going to just see if I can get the owner/maintainer to do it instead!


If you are using AdBlock you can use the element hider helper to hide the div for you.

https://adblockplus.org/en/elemhidehelper#installation


Yeah, I could do that but I do want to help support the site. We have an open discussion about charging a subscription as an alternative.

https://groups.google.com/forum/#!topic/keybr/PsYcvOkJyWE


I have been using keybr.com since I ordered my Ergodox and its been awesome, I have even made the top ten a few times. My typing speed have gone from 40wpm to 110wpm and you really notice it when programming or emailing or IM's with coworkers. The next step is to fire it up while having a conversation and try to maintain good typing form while talking to someone.

Doing that slows me down to a snail's pace, but its also something I find myself doing all the time as I work out code with others.


I literally can not speak while typing. :/ I'd be pretty happy even if I could do so slowly. Apparently it can be somewhat funny because it's so hard-coded I'm not always conscious of it.


Feynman noticed things similar to this. It's shows a really interesting picture of how different people think things differently. He discusses it here.

https://www.youtube.com/watch?v=Cj4y0EUlU-Y&feature=youtu.be...


For programming practice, I've used typing.io (it was announced on HN a few years ago [1]). I'm especially error-prone on the right-pinky keys, which are critical when coding (enter, semi-colon, forward- and back-slash). Typing.io tends to work more of these keys in the code keys.

[1] https://news.ycombinator.com/item?id=4419030


I started with keybr.com just to learn touch typing, however I quickly found that you can upload your own words, I got my hands on some source code and I was off to the races.


Best way to learn to touch type:

1) Buy a sliding under desk keyboard tray

2) Leave it under the desk while you type. Don't slide it out

3) a few weeks/months of pain

4) perfect touch typing

You will be shocked how often you were unconsciously looking down at the keyboard as you typed


They sell little stickers you can put over your keys to blank them out so you don't peek. My parents told me when they learned to type in school on a typewriter in the 60s that they had typewriters that came with only unlabeled keys.


I think the best way to learn to touch-type is to actually replicate typewriter-style touch typing exercises: get a source document, put it up somewhere convenient to your workspace where you can comfortably look at it but not your monitor or keyboard at the same time, and type from that into a text editor or word processor window (something that doesn't autocorrect as you type, so if it has that feature, disable it.) Time yourself on a particular work, and go back and verify that its error-free once you are done.

Rinse, repeat.


Or a blank keyboard (e.g. Das Keyboard). That was why I bought it, and is what eventually helped me stop peeking at the keyboard.


If only das shipped a keyboard with an ergo layout. Gimme an MS Ergo 4000 or Sculpt with Cherry MX switches and I'll give you $300.


http://keyboard.io are doing some interesting things. If you're in the US, they're doing a cross-country tour soon.


Great point, peripheral vision helps you find the location of a key instead of getting it from memory. Also, typing blind helps you learn how to be sure of where you are in the sentencem I'm actually typing this without looking and it's easier and faster than with my eyes open.


> 4) perfect touch typing

But will it be perfect fingering?


or just add a non-sliding shelf under your desk to remove the temptation from sliding


This is a real throwback to many days spent "playing" Mavis Beacon in computer class. It's interesting to see the breakdown in speed on a per key basis: it really makes you conscious of the keys between your hands when you are in the home row. However, no matter what happens I still have brain farts when trying to type out nonsensical words, or words that are close to real words but still nonsense. I got really locked up on "ohioh" (not "onion") and the speed scores reflected that.


I agree, it took me a while to get somewhat used to fake words.

Conveniently, in the settings there is a way to set a source. Recently I have been using articles (via url) as the source ~2 times a week. This has helped me improve speed and accuracy (there were a handful of real words which I consistently mis-typed) without fake word headaches!


Would be nice if the site defaulted to a source that tended to provide real words rather than artificial ones (or real but obscure ones).


I have used Keybr for only a few hours and have already seen a big improvement in my wpm (compared to other touch typing resources I have tried).

The key feature is that it targets your weak keys and key combinations and forces you to practice those repeatedly.


Interesting, Twiddler uses this technology to teach you how to type on their chording keyboard: http://twiddler.tekgear.com/tutor/twiddler.html


On the off-chance anyone wants to do this with Victorian erotic fiction, I made a similar game a couple of weeks ago:

http://gentletouch.peterellisjones.com/


I would love to see this support numbers and symbols, as well. I have a sneaking suspicion that would play very nicely with the developer crowd.

I wonder if they just don't fit as well into their pseudoword generation scheme. There's an option to enable punctuation, but nothing for symbols or numbers. Not going after the full keyboard seems like a missed opportunity.


Yes! I've been able to touch type normal text for years now, but symbols and numbers have always been an exception. Which can be especially painful with all the symbol-heavy languages. Braces, brackets, and parenthesis especially.


Thanks for building this web application. I think these should be improved for a more effective teaching experience:

1) The app should offer guidance on which finger should be used to reach each key. Initially learners are more open to developing wrong habits and using particular fingers (they feel more comfortable with) to reach keys.

2) There should be a better flow for communicating progress. What is my overall progress? Am I assessed for all the keys? what are my strengths / weaknesses? what should I work on? etc.

3) I think there should be a language support. Typing words in a language become automatic as you do them more often, for example the stop words that come up very often in English are usually typed really fast by people, because they have memorized the sequence by having typed them thousands of times.


I would like to see an option to type in languages other that read from right to left. My English typing is alright but when I have to deal with foreign characters, Arabic or Hebrew, it really slows me down.

Is that a possibility, or would the algorithms and systems in place not work with those languages?


I know touch typing. My problem is correct fingering. I type fast but mainly use my index and middle fingers. How can I improve this?


Get a split keyboard. I had the same problem until I switched to a Microsoft split keyboard. It forced me real quick to learn to type with the right fingers, because the wrong fingers don't reach correctly.


I learned it using typingmaster pro, a program for 30 bucks.

It starts by teaching you the keys under your index fingers. Then additional keys for your middle fingers, so on and so forth. It shows you which key is supposed to be typed with which finger. Of course you have to make sure that you use your fingers correctly.

I was already typing with five to seven fingers, but training with the program for about two weeks, everyday 30 minutes, greatly improved my typing, now I use 7-10 fingers. Although I still use my index in middle fingers to often.


See my other comment here.

https://news.ycombinator.com/item?id=9578463

Since I wrote that comment I discovered that the GNU typing program called gtypist appears to use an approach close to the one I describe there. You might try that one.


Whenever you find yourself typing a word incorrectly, delete and retype it. It will take some time, but that's the only way to lose the habbit.


Two things: for some reason when it first focused on the letter 'Q' it made my hand sore (my speed also fell a lot). Not sure if there's something ergonomically problematic with the early 'Q' words or it's just me or what.

The other thing I wonder is if that style of word display like speed readers use where each word shows up by itself in the middle might be more effective. There were definitely times that I felt like my line scanning was delaying somehow.


It uses a lot of words with 'q' and 's' it seems when it introduces it, and these are typed with your pinky and ring fingers, which are the weakest fingers on what is probably your non-dominant hand.


This might be of interest to people here: https://addons.mozilla.org/en-us/firefox/addon/type-the-web/

I built this addon for people who want to improve their typing while reading the websites they usually do.

It lets you select some text (like the inspect element selector) and do a typing test starting at that point on the page.


Awesome, thanks!


It's an interesting approach, and I feel like it's onto something with the algorithm. Bit like the flashcard programs in that regard.

It might be worth generating words in a natural language structure. I don't know about others but I tend to read a little ahead of what I'm typing. Pick up the words rather than the letters. When the words are fairly rare, (lots of these words are, at least for me,) and don't seem to follow a linguistic structure, this reduces to reading letter by letter fairly quickly and then searching the string for the next letter.

Like, normally my brain would be going 'This is a thing and my fingers are just filling in in the background. They're not suffering from my conscious attention.'

And at the moment it's going 'o-r-g-o-t' ... 'e-u-g-e' ... 'g-e-r'


I learned to touch type using this website. Now I am learning Colemak there as well. There is also a setting for Dvorak and ability to enable punctuation and other characters.

I find it really good for practice. The not-quite-correctly-spelled words actually force me out of comfort zone and that is exactly what I need for practice.

Since English is not my native language I also use Type Racer but find that Keybr forces me to focus on typing correctly and fast better than other websites by giving me a typing score along with the speed measurement.

The statistics and the dark theme are also really nice features since I use this for hours.


Awesome service!

Pair with Das Keyboard for ultimate in masochistic fun:

http://www.daskeyboard.com/daskeyboard-4C-ultimate/


I'm actually typing this on a Das Keyboard 4 Ultimate (no C) which I specifically bought to learn typing without looking on the keys, because I don't have the discipline to use apps like the OP.

Also, thank you for your link. When I need another keyboard, I'll consider the compact version. The tenkeys are really just a dead weight (literally, given how heavy Das Keyboard is :D) for me. Good that it has media keys too, I could never live without them (especially volume obviously; sadly GNOME has a bug that makes play/next/prev useless after a few suspend-wake cycles).


I think I'm one of the few people in the world who types better on a Rubber Dome keyboard than Cherry switches.

And I type 140-160 WPM. Cherry switches and the sensitivity behind them slow me down as I must be a lot more precise with my keystrokes to prevent accidental keystrokes (and thus more typos, more time wasting pressing ctrl+backspace)


This would work pretty well for learning an alternative/chorded keyboard especially. (Although the graphic would be wrong shrug but that's true of almost all typing tutors)

http://www.alphagrips.com/


dose action shots tho


Try http://www.typingstudy.com to improve your touch typing. it was very useful for me when I started using colemak and dvorak


Why do all typing programs force you to type in line with the text you are copying? Either one mistake propagates and you can ruin an entire line by double typing some letter or the thing blocks until you hit the correct one.

Why is there not just a sample text and a simple text box that you type the entire sample into? Then your product can be diffed against the source and an accuracy rating calculated? This actually matches the normal typing experience.


I keep getting:

"Cannot read records from database Because: A mutation operation was attempted on a database that did not allow mutations."

and nothing loads past that.

Firefox 38.0.1 on Windows 7


Same with Firefox 37.0.2 on Arch Linux


Using this tool made me realize something; I don't move my fingers from the home row in a traditional way anymore. Depending on the words I'm typing in typical English text, I have a tendency to use different fingers (and even different hands) for letters towards the center of the keyboard; whatever is easiest/fastest for the words.

Did anyone else notice this going through the automated ramp up?


This is something I've noticed even before this tutor. Sometimes with the central letters and also with punctuation/digits. Probably has something to with coding before learning to type--higher use of symbols.

I've also noticed that I have varying shift key usage. Sometimes using the same hand as the shifted key. What I'd like to know is if I would be a better typist with more consistent patterns.


I like the way it builds up through the sequence of most common to least common (in English) letters ETAOIN... instead of focusing just on "home row" keys like Mavis Beacon used to, which I always found artificially hard because it meant lots of side-ways combinations.

Both of course have their limitations in terms of appropriate words or chunks however.


When I was in high school, my sister was learning to type because of a secretarial course she was taking. And there is a lesson to type "the quick brown fox jumps over the lazy dog". This string will cover the A to Z. Do this thousand of times and I assure you, your typing will greatly improve, don't need no software!


Also try GNU Typist http://www.gnu.org/software/gtypist/. I learned to touch type using this software around 2000. It was really good. Haven't had to look at the keyboard after that.


This game was posted back to HN some time ago; I find it a lot more fun, if not as instructive.

http://phoboslab.org/ztype/


Oh, that was fun. Thanks for the link.


Great analytics and interesting approach overall--what's the deal with that 9px font-size everywhere though?

I might learn how to touch-type but I'm afraid I'll lose my eyesight in the process.


Is anyone having problems with their ö,ä,ü's, too? I cannot configure my keyboard in any fashion to recognize my german special characters. Is there a wy to fix this?


I have the same problem (keyboard layout: German/Germany):

ö is mapped to ü

ä is correct

ü is mapped to ß

ß is mapped to -

^ is mapped to ö

# is mapped to <


Different problem, actually. These letters are not even 'calibrated' in the application. I tried contacting the developer but got no response.


Is anyone use Vim without touch typing? I learned touch typing with typing.com course and the main reason was that I wanted to use Vim more efficient.


I hate Vi because of touch typing. hjkl for the movement keys is one off from the home row jkl; for one. Second, if I've turned off the system bell and I'm touch typing but somehow I'm in command mode, I'll look back at a completely destroyed buffer.

Touch typing is as much about not looking at the output as it is not looking at the keyboard.


The graphs it can show you are good, but don't tell you about your accuracy, which is probably my biggest problem with my own typing.


It would be phenomenal to be able to change the keyboard... This tool would make learning dvorak a whole lot easier.


You can learn dvorak by using http://www.typingstudy.com ;) helped me a lot


You can change the keyboard in the settings panel. Apparently both colemak and dvorak are supported.


HOW DOES IT KNOW I'M USING COLEMAK!


Pretty cool how I can emulate a different layout! Maybe I will finally convert to Dvorak one of these days.


Very neat tool. I especially like the analytics, and the heatmap of my hit/miss ratio :)


I would love it if the multiplayer would eventually pair you with faster typers.


Used it for 20 minutes and bookmarked so I can use it more. Great tool!


Does touch typing make a difference in terms of comfort / less stress on fingers / being better for you?


It lost me when I saw those infinite number of bubbles for tutorial!


I'll make do with physical keyboard, thanks.


You do know that the term "touch typing" predates the invention of the touchscreen by decades?


Whoops, my bad. Apologies.

In my defence, the site didn't load at first.

I'll be in the corner.


typingclub.com is much better.


Interesting thing that I've noticed--not all programmers are touch-typists, but almost all serious gamers are.


Yes!

And my method of touch typing shows that. My left pinky is ready for the special keys, unused for much of the typing, usually curled toward ctrl. My left hand resting position is on ASD, ready to press W at any time. My left thumb will always be resting on spacebar.


Actually this tutor made me realise that I use my index fingers for ~90% of the keys, middle finger for the rest of the alphabetic keys and don't use my ring fingers at all when I type "naturally".

I find the proscribed touch-typing method of using all the fingers I found painful after a few minutes.


I found the same.


Hah! That's almost exactly how I do that, especially the spacebar bit. :)


I think it's an exceedingly small number of programmers that can't touch-type. I mean, you're really in the wrong line of work if you can't do it.

I've met exactly one hunt and peck programmer, and I mean like agonizingly slow hunt and peck. Suddenly his lack of productivity made sense to me.


Depends on what your your qualifications are for a touch typist. There's a considerable distance between hunt and peck and someone who never looks down.

I can touch type for stretches because I learned the location of the keys organically -- but I've never had (good) formal lessons and have to type a lot of punctuation which is two rows above my fingers -- so I move my hands a lot[1], don't make use of the fixed position on the home row at all, and I end up looking down way more than I probably should (usually at the starting point).

I do about 30-40 wpm on the website above[2] :) Which is way slower than someone I would call a true touch typist, but not slow enough to impede anything but raw transcription.

[1] I have no real evidence, but I think this tendency to move my hand instead of reaching with my finger has let me avoid the repetitive strain syndromes associated with typing, as well. (It could be just that I take minibreaks every 30 seconds to look down :-) :-P)

[2] If I try to do it the classic way.. it's 10 :-P


This comment really irks me the wrong way, and actually pisses me off a bit.

I'm a dev and cannot touch type. 2/3 of the team here can't touch type properly either it seems.

Seems I should quit my job then?

In a test I just took I averaged 86 words per minute, that's using just my index, middle and third fingers and occasionally looking down at the keyboard.

I don't position my fingers along the home row, because doing so just leads me to type at a snails pace and consistently make mistakes.

I've tried to practice it and I just don't improve. Luckily programming aptitude has fuck all to do with how fast you can type.


Apparently I'm useless at touch typing.

I can barely break 15 words per minute on this thing without making mistakes after 30 minutes versus 86 wpm using my normal style, which involves me using my index and middle fingers and occasionally looking at the keyboard.

Shame, as I wouldn;t mind actually learning to touch type properly considering I'm a dev.


I don't consider you a touch-typist unless you're doing modal typing...as a programmer.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: