My progression (sometimes regression) through text editors has been rapid, frequent and productivity sapping.
Every time I hear of a new editor or a new major version of an editor I drop everything, switch to it and play around with it ceaselessly. When there’s a dry spell in development I just cycle once more through all the editors I’ve already tested in their current state.
Part of me accepts that this is just something I (sadly enough) really enjoy. For me it’s not just a case of finding the right tool for the job, the editor I feel most comfortable in, or what I’m fastest working in. In fact, one of the biggest problems with any kind of app-based schizophrenia is a complete lack of productivity. Anybody can be at least capably fast in an editor provided they’ve learnt at least some of its intricacies, but it’s nearly impossible to be even the slightest bit productive when jumping around.
You’re either stuck in one of two states:
- You’re interrupting your work constantly to figure out how to perform a ‘time saving’ function (like get your equivalent of Zen Coding working) and how to work harder / better / faster in your new editor.
- You’re interrupting your work in order to figure out how to get your new editor to behave more like your old editor.
Either way it’s a disaster and a total time sink, albeit a rather enjoyable one.
The Evolution of the Editor
My needs in an editor started out (and still remain) basic. Since I’m working only on front end design I don’t need to worry about autocompleting PHP variables or any Ruby/Python prettiness. I just need a fast, reliable HTML/CSS editor with support for preprocessors.
So my journey began initially with Panic’s Coda, which I seem cursed to forever talk about. When I began using it Coda was a considerably less capable package (back in 1.#). Yet it was pretty, put everything under one roof and kept everything relatively easy to visualise and manage.
This remains Coda’s strength: cohesion. In fact, it’s not dissimilar to how you might subscribe to one manufacturer in order to achieve a unity between all your devices (hardware and software), such as buying mainly Apple products. Your FTP is sitting prettily next to your HTML, your snippets side by side with your MySQL editor. Brilliant.
Then I moved to Espresso. It was like Coda, but (at the time) a little more impressive. A live CSS preview and the ability to actively rewrite CSS rules for live websites locally was pretty neat. Some of the perks of CSSEdit crammed into another all-in-one package.
The big one. The second I started to get annoyed with Espresso’s handling of completion and Coda’s lack of auto-refresh I began to consider a more modal setup. Everyone talked about Textmate as being the editor, for blogging, for coding, for everything. It sounded like the Swiss army knife I was missing, the editor I’d never need to replace.
Sublime Text 2 (3)
Disaster strikes. Only a year after buying it, Textmate and its successor are shot down. Textmate 2 is made open source, and despite seeing a flurry of activity, now everyone’s moved onto Sublime, the new (and cooler) kid on the block.
It’s non-native which gives me pause, but I bite the bullet. It’s my first experience having to edit an app’s preferences in a text file, with the app itself.
Yet it’s brilliantly fast, at least with small files, and the magic of Emmet particularly makes it shine in my eyes. Combined with great plugins for multiple panes (Origami) and a robust equivalent of Textmate’s command palette, I settle in.
Less than a year after Sublime Text 2 is officially released (and a scant few updates since then) Sublime Text 3 is announced, complete with upgrade pricing and an even higher initial cost.
Do Not Pass Go
Sublime Text is a fantastic editor. It’s easily the best non-modal editor I’ve ever used and I have nothing but respect for its developer. I don’t think a yearly update or pseudo subscription is unfair, particularly if it helps it avoid a Textmate style death. I am in no way complaining, despite how it may sound.
Rather I’m trying to skip ahead to the final stage of my text editor progression. I can see myself getting increasingly bothered by Sublime’s update fees and relatively small amount of visible activity, annoyed at continuously paying for an editor when I honestly don’t need the entire feature-set.
The journey of choosing the right app (or tool) is something I find enormously fun – in fact most of my free time is sadly spent doing just that. What’s the best podcast app? Let’s buy them all!
The problem is when that journey invades your professional workspace as well. Your text editor should be the last place you experiment. Textmate wasn’t broken for me, I didn’t need or honestly benefit tremendously from any new functionality in Sublime, but I do know I did lose time.
The answer to this is to skip ahead, if at all possible, and leap in at the deep end. Pick the very best possible answer or app or tool and roll with it. Learn it.
If you’re trying to learn photo editing, start with Photoshop.
If you’re trying to learn logo design, start with Illustrator.
If you’re trying to learn version control, start with Git.
So what’s the best text editor?
I’m not going to list all the benefits of Vim because about a thousand people before me have done just that.
Essentially, however, it comes down to longevity and ubiquity. Vim isn’t going anywhere. It’s over a decade old and still going strong. It’s already on every ‘nix based system – your Mac, your server, everything. There are hundreds of plugins, an incredible amount of documentation, community support and tutorials.
Yes you’ll be jumping in at the deep end. Yes you’ll have to relearn most everything, and your productivity will take a dive – but if you commit, it’ll likely be the last dive it will take in a long, long time. Don’t just switch on Vintage mode in Sublime, it’s a poor emulation. Do or do not, there is no trial run.
If you’re happy with your editor and don’t feel my compulsive need to fool around with the new kid on the block, then leave be and stick with what you’re comfortable using (Vim will still be here when you’re ready).
But if you suffer from my text editor addiction, the sooner you bite the bullet and see where this progression is taking you the better you’ll be for it, and (more importantly) the better off your clients will be for it.
And hey – I’m actually having a lot of fun.