In large display paradox resolved I made a tongue-in-cheek claim that mouseless tiling windows managers were the future:
In the not-too-distant future, every user will have adopted a mouseless tiling window manager to make managing windows on a large display a breeze.
It's unlikely that my prediction will come to pass, but perhaps programmers can be convinced to go mouseless? To explore that question we need to answer another: why do we use a mouse in the first place?
The very first Apple Macintosh was realeased in 1984. It was the second Apple computer to come with a mouse1:
In a New York times review of the Macintosh, Erik Sandberg-Diment had to explain how the mouse was used:
As to the mouse, it is part and parcel of the Mac revolution, and it will probably be the reason you either sign up for or turn your back on this machine. To a large extent, the Macintosh works with what has been termed a ''finder environment.''
YOU find either a word or an icon or pictogram on the screen representing what you want the computer to do, then slide the mouse on your desk to move the cursor into position over that screen object, then press the button on the mouse to activate that particular part of the program.
That early explanation of a mouse alludes to its strength: it's a great tool for exploratory learning2.
Once you know how to use the software, however, it becomes clear that moving the mouse around the screen and navigating various layers of menus is really slow. There's also the transition time of moving from the keyboard to the mouse, and back again.
Given that the mouse is slow and programmers spend a lot of time at the keyboard, it makes sense to keep them there. This is the essence of mouseless programming: moving everything to the keyboard.
Getting into mouseless programming is really easy. You need two things:
- A mechanical keyboard3;
- Software with keyboard shortcuts for everything.
I use the Blackbird Tenkeyless Cherry Mx Backlit Mechanical Keyboard by Max Keyboard:
The backlight makes it really easy to recognise keys when glancing down, especially in low light. It also comes with a comfortable wrist pad.
As for the software, I use the following tools on a daily basis:
- vim (see: Which text editor should I use?);
- command-line programs such as
Using these tools I rarely need to use a mouse. This increases my speed and productivity because I'm able to maintain a meditative flow, letting my fingers do the legwork.