7 ms·
Show HN: Keyboard Drill – Minimalist Typing Drill to fix common mistakes
- stunt 5y agoCool! But, as someone who used to be very competitive with fast touch typing and then suffered some long-term injuries, I say do not overdo it. It hurts your fingers. Learn how to type correctly, but do not hurt your fingers and do not aim for speed. Even though I have recovered physically, my fingers still (mentally) hurt when I try to type very fast. It hurts even when I think about it.
- kuehle 5y agoI've created this small project to fix my own typing and thought you might benefit from it as well. To calculate the WPM words with 5 letters are taken. To reach e.g. 80 WPM you'd have 150ms per character. The application uses ~1000 most common english words and only gives you the next word once you've cleared the word in the calculated time. The time is measured only as soon as you press the first key. Give it a try. Controls: [Space] or [Enter] to complete a word. [Esc] to move on to a next word Click [wpm] to set your target speed. The default is quite low but you might still find words that you can't type within the time limit. Click [log] to see a log of your individual attempts. How it was build: No dependencies, single html file Respects system preferences for dark them Keyboard friendly (autofocus, tab & enter for settings, etc.) Next up: Using Service Workers to allow offline usage
- robbrown451 5y agoThis is cool I will bookmark it. I'm a terrible typist. I'm also teaching my 7 year old to type so this can be handy. I have something I built myself years ago and have never really circulated, that is more for beginners (it tries to help you with finding the keys and knowing which finger to use): https://pianop.ly/misc/typingtutor/ https://pianop.ly/misc/typingtutor/ One thing I experimented with is giving you both a "total speed" and a "best 15 seconds" speed.
- samatman 5y agoThis is very cool and it arrives at a good time: I have a whole delete-back-word thumb key on my split-key, and I've been trying to train myself to use it with little success. This is actually perfect. I recognize this might push against the minimalism you're going for, but I might suggest having the next word, or even two words, off to the right and greyed out. What you're measuring is recognizing and typing the word, and most competent typists who want to lower error rates and gain speed are going to be fast enough already that they (we) can be recognizing the next couple of words while typing the one which is already centered. A two-word lead would let me get up to speed, maybe that should be configurable but for the words I've seen while playing with it, probably two is just right. Great site, I'll come back and use it as-is.
- zzt123 5y agoAgreed with the look ahead. I’m constantly doing that whether doing a typing test or typing my thoughts. (Currently capable of sustaining 170+ wpm over a minute). This site looks like great fun as a member of the toolbox for making my Colemak more fluent!
- userbinator 5y agoI find that I usually buffer 5-6 words ahead, because that's roughly how long it takes me to notice a mistake. 170+@1m is impressive. I'm around 140-160@1m, ~230 burst, regular QWERTY.
- kuehle 5y agoI've added a lookahead to the next word now, feel free to check it out. For more I wouldn't know how to add it design wise and I don't think it is the goal of the application. I usually go to https://10ff.net/ https://10ff.net/ when I am looking to practice the whole typing flow.
- resonator 5y agoThat's great but I'm getting tripped up when I delete a word with ctrl-w and correct it. Even if I get it correct, it marks as incorrect.
- jacobmischka 5y agoThis has happened to me a few times too, I have to complete a word 3 times before it actually marks it as correct. I almost wondered if it was intentional because it happened so often.
- kuehle 5y agoIf you delete and retype the word it is technically the same attempt and you are not being fast enough, so it is in deed a feature to practice the words you have made a mistake in in the first place. But I can see how that can be less than obvious. I fixed that now.
- deleted 5y ago[deleted]
- johnofthesea 5y agoI've tried to replace words (for different language) in console but `words` are defined as `const`. Any idea how to hack it?
- bloopernova 5y agoThis is really cool, definitely going to use this! (and share it at work, since there's a lot of people whose typing can be greatly improved, lol)
- Acen 5y agoFeels like it needs some sort of feedback when you type too slowly to get the next word. Plus maybe making it a bit more obvious that you can select a target speed for the WPM.
- psimm 5y agoAgree, I didn't understand that one can change the WPM before reading this thread.
- kuehle 5y agoGood point, I've added a help button in the top left corner that briefly explains the concept. Maybe that already helps a bit.
- cocoflunchy 5y agoit helps, but I was very confused at first too (the button is not very visible)
- kuehle 5y agoDo you have any ideas for the feedback when your speed is to low? I am not a designer and struggle to find ideas that keep the UI as minimal as it is right now while improving the user experience.
- chronogram 5y agoI like the minimal feedback as it is right now: you just have to try again.
- fouc 5y agothe dashed line under the input could be briefly turned red (for 400-500ms) when you clear it on fail
- doctorbuttes 5y agoI think just a brief "too slow" underneath the input would suffice.
- psimm 5y agoIt's a cool challenge! I tried it at 90wpm and cleared most words. Some I had to do 2 or 3 times to do fast enough. Then I hit my nemesis: I can't type "necessary" fast enough for 90wpm. Tried it 20 times.
- kuehle 5y agoGreat point, while building it I also encountered words I couldn't type. 1. That was very enlightening 2. I added skipping a word by using the [Esc] key It would be interesting to see if one could safe those words for later and practise just those.
- fredley 5y agoEnjoyed this, though as a typist in British English some American spellings really tripped me up
- xwowsersx 5y agoI have tried several times to relearn typing, but each time I've fallen back to my old ways. Has anyone actually been successful in learning how to type correctly from scratch? If so, how did you do it?
- tough 5y agoratatype was nice UX
- inclemnet 5y agoI've known people say that they found it "easier" combining learning touch typing with learning a new keyboard layout. It's harder moment by moment, but there's no bad muscle memory to fall back on.
- cachvico 5y agoI had that experience. I learned Dvorak and my touch-typing form got a lot better (as you would expect..) I then went back to Qwerty (it took a little while to switch back..) and retained the better form.
- flyingfences 5y agoI had a similar experience using Colemak near-exclusively for several years, then going back to using QWERTY in the office.
- sva_ 5y agoI relearned touch typing using https://www.keybr.com https://www.keybr.com several years ago. It looks a bit different now, but seems to be the same concept as before.
- xwowsersx 5y agoI'll check this out. Thanks a lot.
- hardlianotion 5y agoI don't know if it works, but it is addictive...
- alliao 5y agothe minimalist interface have so much potential edited/failed words should be silently saved to a separate list the performance of every word typed ranked 2/3/4/5 characters that occur consecutively should be analysed also to learn about user's weakness all then can be used to reappear in optimal learning interval so user can improve :)
- trynewideas 5y agonot going to lie, I was hoping this would be a power drill somehow reconfigured to output keystrokes
- smingo 5y agoIt's good stuff. It might be good to have an option to have a time threshold based on when the typing starts, not when the word appears. In that way, the time taken to recognise the word becomes irrelevant.
- kuehle 5y agoThat is actually the way it works. If you turn on logs (bottom right) you will see the time measured in ms for each attempt. The measuring starts on the keydown of the fist key and stops on the keydown of the space to complete the word. The time er only continues in case you start typing the word delete it and retype it. That counts as one attempt.
- skupig 5y agoThis is super addictive... it would be nice if the word cleared instantly without hitting enter, having to stretch my pinky so often is kind of hurting my wrist. It'd also be nice if clearing the text box reset the timer so I could just start over when I make a typo (I either have to fix the typo, which is bad practice, or type the word twice).
- avnigo 5y agoI really like it, great work! It would be great if [Enter]/[Space] would clear a wrongly typed word, maybe with some visual indication that it wasn't typed correctly and maybe also show the mistyped word. Having to delete the word because of a single mistake really takes you out of the flow, and the timer doesn't reset till you delete and retype the word correctly. Displaying the target ms/character for the specified word count might also be beneficial to quantify what you're working toward.
- joshka 5y agoLooks good. My wish list (some of these are mentioned below by others): - don't worry about target wpm, just worry about getting faster from a baseline and automatically adjust that baseline from current speed. - repeat words that recently failed / took longer to type after some spacing (spaced repetition) - fail words which are committed rather than making me correct them to continue (I'm of two minds about this, is correcting a mistake faster than just continuing and coming back to mistakes or the other way around?) - consider a prose mode that shows more context to type (grab some paragraphs from project gutenburg perhaps?) - consider a code mode (more difficult as autocomplete is a thing and different per IDE)