Why I created a typing practice app

Search for a command to run...

No comments yet. Be the first to comment.
Remember my post about switching to VSCode? Well, plot twist: the very next day after publishing it, I switched to WebStorm. And guess what? I've been on JetBrains IDEs ever since. I know, I know. Another "why I switched editors" post. But hear me ou...

I had been doing some basic interpreter work in Go and wanted to redo it in another language to solidify my understanding. Naturally, I chose Odin, it’s another great language, with a Go-like, easy-to-approach syntax and no unnecessary complexity. I ...

Why Emacs Keybindings? I've always preferred Emacs-style editing, especially the way it handles cursor movement and text manipulation. Even though I have switched to using VSCode for most of my development work, I often found myself missing the intui...

In my previous post about building C/C++ projects with CMake, I shared a simple CMakeLists.txt setup for compiling a basic project. Today, I’ll dive into a specific need that many developers encounter: linking libraries directly from project folders ...

Some time ago, I wrote a post about using Vim to look cool and why that’s not a good idea. Now, funny enough, here I am—having switched to VSCode after years of hopping between Vim and Emacs. This isn’t one of those "Vim sucks, I'm going back to VSCo...

TL;DR: So, I got this itch to type faster, switched from QWERTY to Dvorak, and thought, why not build my own typing practice app? Inspired by a friend's advice on muscle memory, I added cool features like tweaking word counts. It's a work in progress, but hey, check it out at type.imbmax.com – my little typing haven! 🚀
I have always been a fan of touch typing and exploring different keyboards, layouts, etc.
I learned how to touch type in QWERTY around 2006-2007 and used a bunch of online tools back then too.
I currently use Dvorak as my main keyboard layout, and my typing speed varies between 60 to 70 on most online typing tests. I can reach around 90 if I reduce the time or the number of words for a test down to 10, but that's not really what I want.
However, there are a lot of people who can type past the 100 WPM mark. I once asked somebody what the secret to getting really fast at typing was. They said something like, "think of a word you can type really fast already. Type it really fast - muscle memory, like a roll of ASDF. Apply this feel to a bunch of more words," which totally makes sense.
So, I started my mission to increase word speed, and to do that, I wanted some custom features for my typing practice apps. What better way to do that than writing my own, right? :)
I kept thinking about the logic for displaying a typing test interface for something similar to MonkeyType. In the shower, it hit me. I cracked the code, went back to my laptop before bed, and started writing some code. I got the basic typing test display working in about 1 or 2 hours. The next morning, before work, I added indicators for words per minute and test duration, and I already had something usable.
That night, I added a settings page which only supports changing the word count. This was also an important feature I wanted. It allows reducing the word count down to one word, so I get to measure my WPM on a more granular level and identify where I struggle.

I still don't have all the features I want, and it's not finalized by any means. But I'm really happy about having a small side project like this that I can keep improving bit by bit, every now and then. So, I hosted it under a subdomain (type.imbmax.com) for now.