Stephen Mizell Watching the world go by too quickly

Hello from Vim

I have had quite the journey when it comes to text editors. When I started tinkering with code, my first editor was Notepad that came with Windows 2000. No line numbers, no syntax highlighting—just a blank white screen and a save button. It’s funny to think of the many hours I spent in that editor, and I wish I could go back and see the code I wrote.

Editors all the way down

Later in life I moved on to Notepad++. I used it for writing PHP code, and it was a breath of fresh air. Next in line was BBEdit. I bought it online thanks to my wonderful mother, and they mailed me an installation CD. Snail mail was much faster than our dial-up.

TextMate was not far behind, but was prophetically named “The Missing Editor.” It was rarely updated, and we were all waiting around for the next big release of it, which I finally gave up on. If anyone sees this missing editor, please notify the authorities.

I took a job at a local university and started working out of Linux primarily. I used Bluefish as my editor of choice because it was installed on the computer I inherited. When I started over on my own setup, I went with gEdit. These were the dark years.

I left that university and moved on to a local manufacturing company. I had a Windows machine there, but kept a Linux VM around for writing code when it called for it. Sublime Text 2 (ST2) was all the rage, so I gave it a go and really enjoyed using it. It was lightweight yet very powerful. Its only flaw was that it had pop-ups telling me it was unregistered or something.

I finally made it to the place where I am today, and the first thing I installed on my new company laptop was ST2. But this time, it wasn’t so kind. I was working on Node.js projects, and for some reason, the indexing would run for the entire project on each key stroke. I did everything I possibly could to fix this, spending hours deleting every ST2 file I could find and reinstalling, but I never could get this fixed. So I gave up and gave the Atom editor a try.

Out of the box, Atom worked for me, but it was a little slower than ST2. I spent close to a year in it primarily, and had nothing but positive experiences with it feature-wise, though performance was sluggish at times. This was rare, and worked for me.

Landing on the moon

Throughout all of this time, though, anytime I would ssh into some box, I would type a nice little command vim and load up an editor right there in my terminal. I knew how to get into insert mode, save files, and quit, but that was it. I never had line numbers or syntax highlighting, but it worked for what I needed.

Just this last week, something changed in me. I’m not sure what it was, but I decided to actually give Vim a real try and see if I could make it. As I was making my journey through all of these editors, I would hear of people who used Vim or Emacs as their primary editor and was astonished. I couldn’t imagine using something so primitive. Yet today I’m writing this post in Vim, and I’m quite happy with my experience.

Timelessness

I was a big fan of Why the Lucky Stiff or _why for short. I learned a lot of Ruby from his book and always enjoyed the various writings he did. But one day he disappeared from the internet, along with all of his stuff. Right before he departed, he said in a tweet:

programming is rather thankless. u see your works become replaced by superior ones in a year. unable to run at all in a few more.

What a sobering thought as a software developer. We are always jumping on the bandwagon of the latest and greatest framework or library, and we forget about the code people wrote just a few years ago that no one touches anymore. Do people use BBEdit or TextMate anymore? Perhaps, but we don’t hear them spoken of much anymore. I can’t help but wonder how the authors of the code-of-the-past feel as we all move on.

_why also said in his last tweets:

if you program and want any longevity to your work, make a game. all else recycles, but people rewrite architectures to keep games alive.

Vim has held its ground since the early 1990s, and has been made available on just about any platform. It’s been available for 25 years or so, which is an eternity for software. Maybe Vim will pass the test of time, and maybe the secret is to build a game or a terminal editor.

Long Commitment

Vim is at least my ninth editor I’ve used as my primary editor for my work. But unlike the other programs, it appears you have to really commit to it for a while to see the benefits. Well, here’s to giving that a shot.