Go head, tailor your tools
Posted on October 1, 2023 • 3 minutes • 618 words
I recently heard someone else share their perspective that one should not customize their tools. I also fell into this camp, until pretty recently.
The lesson of vi
I made what I believed was a wise choice back in the 90s when I was first getting comfortable in unix (AIX at the time). I decided to eschew other options and learn and stick with vi, at least for editing system configuration files. My reasoning was that vi was always present on any system I might connect to.
As I grew in my career, this choice served me well. AIX, Solaris, BSD, Linux - any remote system I would connect to, vi was there.
I also broadened this concept into a more general sense of “using the standard” and along with that idea, I discarded any notion of ever customizing anything at all, ever. What if I needed to work on a system that didn’t have my customizations? What if I have to use a different computer? What if someone is trying to explain something to me and I’m not fully understanding because I’ve forgotten what “the defaults” are like? After two decades, I can now say that this was a mistake.
There are benefits to this approach, but I now believe they are far outweighed by wasted productivity.
The lesson of EMACS
A few years back I decided to learn Clojure and as a precursor, EMACS. I decided to use Doom EMACS - which comes by default with vi key bindings. My left pinky became very sore. The difference now was that rather than editing a few configuration files here and there, I starting spending most of my day in EMACS. As heavy users of vi know, you need to hit escape
a lot. As EMACS users know, you need to use CTRL
a lot.
There is an ingenious solution to this which lies in the basically unused CAPS-LOCK
key, just to the left of A
on most keyboards. The solution is to use a key-mapping tool to get dual-function from that key:
- Tap the key (press and release it) and you get
escape
- Hold the key down in combination with another key and you get
CTRL-[key]
(CTRL-G
as an example)
So that practically useless key now serves as both a control key and an escape key, plus it’s in a convenient location that puts zero stress on an average pinky!
What’s the problem then? The idea violated my entrenched commitment to never customizing anything. WHAT IF I HAD TO USE A KEYBOARD WHERE CAPS-LOCK WASN’T MAPPED THIS WAY????
Given the severity of the pain in my left pinky, after much soul-searching I decided to try this. I love it. What’s more, becoming comfortable with this customization ultimately led me to customize many other things that have been bothering me for years.
So go ahead, customize your tools
As it turns out, a little tweaking here and there to better match my tools to my tasks and workflow has been a big boon to my productivity and even my well-being. It’s been about three years now and I’ve had times where I’ve sat down at other peoples’ computers, used tools that aren’t configured exactly the same as mine, and even used keyboards that haven’t remapped their CAPS-LOCK
key (*gasp*). No one died and nothing blew up. I may have had a brief period of adjustment, but it was fine. In the end, the daily gains and joy I get from having tools that act exactly as I’d like them to has far outweighed the rare occasions where I need to use a different setup.
So go for it, customize your tools - I wish I had long ago.