Typing at Speed: Tips & Tricks

Introduction:

Over the decades, the efficient use of computers has slowly made the transition from being an uncommon talent, to being a necessary life skill. From filling out job applications to paying one’s bills, we live in an era where every one of us must spend at least some amount of time interacting with computerised systems. For this reason, it is important for all of us to learn how to use this technology to its fullest.

In the overwhelming majority of cases, when one uses a computer, one interacts with it using either a physical keyboard or digital keyboard, alongside a pointing device that most commonly consists of a mouse, a trackpad, or a touchscreen. What this means in practice is that in order to quickly and efficiently utilise almost any computerised system, one must learn how to quickly and efficiently use the keyboard in tandem with the pointer.

In this tutorial, I will outline some of the ways one can accomplish this, the majority of which are not commonly known or discussed. This tutorial does already assume the reader is adept at touch typing.

 

Part I: Basic Fundamentals

The most basic fundamental apart from touch typing is undoubtedly the use of key combinations. This is because moving one’s hand away from the keyboard over to a pointing device such as a mouse is one of the single biggest contributors to slower typing speeds and lower productivity when using a computer. This repetitive hand movement can also increase one’s risk of experiencing repetitive strain injury. As such, simply by employing a small set of underutilised yet important key combinations, one can significantly improve one’s keyboarding skills! Best of all, they work on every operating system! Here are the shortcuts in question:

Ctrl + Backspace / Ctrl + Delete
When typists are attempting to delete one or more words, it is common for them to either use the pointing device, or mash the backspace key. Instead, it is possible to simply hold the Ctrl key, before hitting backspace to delete the entire word to the left of one’s cursor. Similarly, hitting the delete key instead of the backspace key will remove the entire word to the right of one’s cursor. This method is not only faster, but less likely to result in repetitive strain injuries.

Ctrl + Arrow keys
Similar to the above example, oftentimes when typists want to move the cursor several words in a cardinal direction, they will either use the pointing device, or mash the arrow keys. Sometimes, a typist will even use the Home and End keys to move to the start or end of a line, before then mashing the arrow keys to move the cursor to the appropriate location. A faster option is to hold the Ctrl key before using the arrow keys to jump between words instead of between characters. This also has utility with respect to vertical scrolling, as it allows one to jump between paragraphs without necessarily causing the page to scroll as happens on some operating systems when one instead uses the PgUp and PgDn keys.

Ctrl + PgUp/PgDn
Commonly when doing tasks on a computer, people will have multiple tabs open on a single web browser window that they switch between. The majority of people will use the pointing device to accomplish this, which is neither fast nor ergonomic. Instead, one can hold down the Ctrl key before pressing PgUp to move one tab to the left, or PgDn to move one tab to the right. This technique is compatible with Chromium-based web browsers, and is operating system agnostic.

Alt + Tab / Alt + Shift + Tab
One thing that almost everyone does while using a computer is switch between multiple windows and/or programs. These most often consist of a web browser, alongside a text editor such as Microsoft Word. The majority of people switch from one window to another using the pointing device, with the process being especially slow in cases where all windows are maximised. The faster option is to instead hold down the Alt key before pressing Tab, which allows you to scroll through all of one’s open windows.

When doing this with more than two windows open, you may find the above method to be inefficient. Perhaps you also have a file manager window open to the Downloads or Documents folder. Perhaps you are using a second monitor or background window for Spotify, YouTube, or a messaging application. In these situations, one can hold down the Alt key, then hold down the Shift key, before finally pressing Tab. This will switch over to the previously used window, which in turn enables one to toggle between just two of windows regardless of how many happen to be open.

 

Part II: Intermediate Concepts

When attempting to type at rates of 100WPM and beyond, one may find that even using every shortcut at one’s disposal still isn’t enough. In situations like these, employing some more advanced keyboarding concepts can prove worthwhile.

Low Keyboard Profiles
It may sound obvious, however the time spent moving one’s finger over to a key and the time spent pressing a key all the way down both affect typing speeds. For this reason, a smaller and overall flatter keyboard enables one to type slightly faster than a larger keyboard with thick keys spread farther apart. This is simply because the time required to make contact with any given key alongside the time required to fully depress said key have both been reduced.

Mechanical Keyboards - QMK, ZMK, KMK, etc.
A technique that some employ in order to speed up their typing is the use of outside custom code. This most often consists of a set of keyboard macros created using a program like AutoHotkey. This allows typists to create custom keyboard shortcuts that can then trigger a long and complex string of inputs. The primary issue with this particular approach is that one must install and configure software onto one’s computer in order to use it. This limits one’s ability to employ such a tactic across multiple machines, across multiple operating systems, or on computers where one has not been granted administrative access.

In order to get around this, one can use a keyboard that is compatible with a firmware like QMK, ZMK, KMK, or even ZSA’s Oryx Configurator. This allows one to store any custom macros or behaviours on the keyboard itself rather than on one’s computer. This tactic allows one to accomplish all of the same things programs like AutoHotkey are capable of, but in a way that is operating system agnostic and capable of running without having to install any software onto one’s computer.

Split Keyboards
Pain is a common factor that limits typing speeds. Ignoring the issue is also ill-advised, as doing so can lead to a repetitive strain injury.

To resolve both of these problems, consider switching to a split keyboard. Split keyboards allow one to type at higher speeds in a less painful and more ergonomic manner. This can not only help one attain higher typing speeds, but also reduce the risk of long-term health problems.

Thumb Key Clusters
When looking at photos of split keyboards, one may notice that they commonly have several buttons positioned where the thumbs naturally rest. These are called thumb clusters.

The utility in having thumb clusters is that it allows one to reposition keys such as the Space, Backspace, Shift, and Enter keys to a more comfortably reached location. Instead of having to move one’s hands away from the home row in order to press these keys, one can instead simply use one’s thumbs, which is both faster and more ergonomic. Thumb clusters therefore enable one to reach higher maximum typing speeds than could be achieved using a traditional keyboard design.

Key Switch Actuation Force
One may assume that if it requires less force to fully depress a key, that this would correlate with faster typing speeds. This motivates some people who purchase a keyboard compatible with firmwares like QMK or ZMK to select key switches like the Choc Purple or Choc Pink, which have actuation forces of 25g and 20g respectively.

This is not true in practice, because as typing speed increases, typing accuracy decreases. When one types slowly, it is rather simple to hit the centre of each key with a high degree of accuracy. As one types increasingly quickly, the deviation also increases, meaning one becomes increasingly likely to graze neighbouring keys with one’s fingers or to press a given key’s edge rather than its centre. As a consequence, if the actuation force of one’s key switches is too low, these inaccuracies will register as full key presses, thereby reducing the maximum speed at which one is able to type.

Instead, one should select low-profile key switches with an actuation force just high enough to avoid the problem described above. I do find Choc Pinks work best for me personally, however this is not a popular opinion with mechanical keyboard switches most commonly having an actuation force of greater than 40g.

 

Part III: Advanced Concepts

There exist a small subset of typists who work tirelessly toward the goal of attaining the highest typing speeds possible for a human. For this group, the concepts used start to appear almost alien.

Home Row Numerals
You may notice that firmware like QMK can allow you to map different functions to the same button using custom dead keys, which is a concept known as layering.

One incredibly simple way to exploit this is create a layer where the digits 0-9 are mapped to the home row, the shifted versions are mapped one row below, and keys F1-F12 are mapped one row above. This means one can tap or hold down a key on the thumb cluster, before using the keys normally mapped exclusively to letters and simple punctuation for numbers and symbols as well. This methodology is both faster and more ergonomic than using a dedicated set of number and function keys.

Space Cadet
Those who spend considerable time writing code may notice that typing parentheses by holding shift and then pressing the 9 and 0 buttons to be slow, obtuse, and painful when done too frequently.

Instead, one can map the shift key to the thumb cluster before changing the now unnecessary Left Shift and Right Shift buttons to instead correspond to two Space Cadet Control keys. This means, holding the buttons down will register as Left Ctrl and Right Ctrl, but tapping will register as a left parenthesis and right parenthesis respectively. This makes writing code both faster and more ergonomic.

Auto Shift
Some find that when typing at incredibly high speeds, they accidentally press the Shift key at the incorrect time, thereby either neglecting to capitalise words appropriately or mistakenly capitalising the wrong letter.

Auto Shift is a feature that changes the default behaviour of all keys that can output two different things depending upon whether the Shift key has been held, including all alphanumeric keys. With Auto Shift enabled, tapping a key works exactly as one would expect, however if one holds the key down for an ever so slightly longer duration, the shifted version will be output instead. While this does take some getting used to, learning to employ Auto Shift can improve accuracy when typing at faster speeds.

Home Row Mods
An increasingly popular methodology is the use of what are known as Home Row Mods. This is an alternative to Auto Shift where instead of holding down a key to output a shifted version of that key, holding it down will output Ctrl plus that key.

For example, with Home Row Mods enabled, tapping the A key on the keyboard would output the lowercase letter A, whereas holding it down would correspond to the keyboard shortcut Ctrl + A. Users of Home Row Mods also commonly map frequently used combinations such as Ctrl + C and Ctrl + V to trigger when holding down buttons like the semicolon key and L keys, as combinations such as Ctrl + Semicolon often go entirely unused by the majority of typists.

Tap-Hold Configurations
As seen in the previous two examples, firmware like QMK can allow the user to map two different functions to the same key depending upon whether the button has been tapped, or held down.

This methodology can be applied much more generally. For example, I personally have the Backspace key mapped to my keyboard’s thumb cluster, and use a Tap-Hold configuration such that tapping the key outputs a Backspace, whereas holding it outputs the Ctrl + Backspace keyboard shortcut. Every keyboard shortcut mentioned in Part I can be mapped to a Tap-Hold configuration in this same way.

Auto Correct
Another function incompatible with Auto Shift, this allows the user to automatically replace a common typo with the corrected version of that same word. For example, if when updating a Linux machine you frequently type ‘sudo atp update’ or ‘sudo apt udpate’ instead of ‘sudo apt update’, one can create Auto Correct entries for these typos such that a given misspelling still outputs the correct string as originally intended.

This feature is unpopular as it involves meticulously editing one’s Auto Correct dictionary to prevent it from inserting new errors of its own. Despite this, Auto Correct is still a powerful feature if one is willing to put the necessary time into properly configuring it.

 

Part IV: Expert Concepts

Some concepts require years of concerted effort to start applying to real-world tasks, but can also facilitate feats that would otherwise be quite literally impossible. Here are some of these expert-level strategies:

Stenography
While reading QMK’s documentation or while looking through the settings on the Oryx Configurator website, you may have stumbled upon references to something called ‘Stenography’.

Stenography bears very little resemblance to typing. It is instead a form of shorthand traditionally used by court reporters to document what has been said during trials. The technique enables one to write at speeds beyond 300WPM comfortably, and is one of the only existing techniques that could theoretically enable a human to write at speeds beyond 500WPM. If you own a keyboard that is compatible with QMK, then you own a keyboard that can function as a stenotype machine.

It is worth mentioning that one must download a program called Plover onto one’s computer in order to interface a stenotype machine it. Furthermore, stenography is an incredibly difficult skill that takes years of practice to master. While free lessons do exist on websites like Typey Type, this is by no means a technique for the faint of heart.

Thumb Cluster Pointers
Although interacting with one’s computer using a pointing device like a mouse is inefficient, there are situations where it cannot be avoided. One such example is when working with 3D modelling or CAD software.

If one wants a permanent solution to the problem, the most commonly used strategy is to embed a trackball or trackpad into the thumb cluster of one’s split keyboard. Learning to perform common tasks with a pointing device this different from popular tools like the computer mouse is a significant challenge. This is, however, also the only existing methodology that allows one to interact with the pointing device while simultaneously typing. By including a separate pointing device on each of the two thumb clusters, thumb cluster pointers can even emulate a 3D mouse for CAD modelling tasks while still retaining the unique benefit of allowing users to type and manipulate the pointing device at the same time!

Despite its steep learning curve, the thumb cluster pointer has benefits and abilities that no other existing methodologies possess. This alone makes it an incredibly powerful tool.

Bash, Hyprland, & Neovim
When performing tasks on a computer, waiting is one of the most frustrating problems we face. When we have too many tabs open in a web browser or too many different windows open on our desktop, there will inevitably come a point when our computer begins to experience slowdown. No one enjoys waiting several seconds for a new browser tab to open, and when even Word is experiencing noticeable lag, getting things done becomes arduous no matter how quickly one types. Although there exists a permanent and free solution to this problem, implementing it is a multi-stage process that poses a significant years-long challenge.

The first step in this solution is switching one’s operating system to a Linux distribution. I would recommend Bedrock Linux specifically, as it is the only distribution natively compatible with Debian, Arch, Fedora, and Void software simultaneously. The reason for making this change is simply that Linux-based operating systems utilise fewer system resources than their more popular competitors, meaning this one change by itself will noticeably reduce slowdown on your existing computer. The remaining steps will further reduce slowdown, however they also have the benefit of further reducing how often the pointing device must be used.

After months or years spent using a Linux-based operating system like Bedrock and getting used to Bash, one is ready to move forward. At this point, your computer is likely using a desktop environment like GNOME or Cinnamon, which means using your computer should be rather intuitive for anyone accustomed to other operating systems like Windows or macOS. It is now time to remove that, replacing it with Hyprland. This not only further reduces slowdown, but tiling window managers like Hyprland also natively allow one to accomplish tasks like rearranging and resizing windows without using the pointing device. This increases productivity by allowing a wider range of tasks to be accomplished more quickly than would otherwise be possible.

Finally, after growing accustomed to tiling window management, one is able to move onto the final step. This is switching over to Neovim for editing documents, editing code, uploading documents to Github, and any other task one can possibly use Neovim for. Much like with switching to Hyprland, Neovim simultaneously reduces how many system resources one’s machine requires in order to accomplish tasks, and enables one to start using new keyboard shortcuts and commands to further improve one’s productivity.

While this process is difficult, getting all the way through it will reduce slowdown on one’s existing computer enough to ensure one’s productivity is decided by one’s own skill, not by technical limitations.

Previous
Previous

Subtitling: A Guide to SRT, WebVTT, & SAMI