Fast Software, the Best Software — by Craig Mod
Fast Software, the Best Software
On the benefits of speedy software, and how it affects user perception of engineering quality and overall usability
Originally published by: Roden 028
I love fast software. That is, software speedy both in function and interface. Software with minimal to no lag between wanting to activate or manipulate something and the thing happening. Lightness.
Software that’s speedy usually means it’s focused. Like a good tool, it often means that it’s simple, but that’s not necessarily true. Speed in software is probably the most valuable, least valued asset. To me, speedy software is the difference between an application smoothly integrating into your life, and one called upon with great reluctance. Fastness in software is like great margins in a book — makes you smile without necessarily knowing why.
One of my most used, most speedy pieces of software is nvALT.1 It’s an oddly named, very bland application. Just a database of plain text files with a plain text editor bolted on. But it’s fast. The fastest piece of text cataloging software I’ve used. It opens instantly and produces results instantly. My nvALT database is full of ten years of notes. Open it and your cursor is already in the search field. It is keyboard friendly software: If you’re ever not in the search field, just hit ESC, and you’ll land there. Type a few letters and all the notes with those letters appear. It is the best instantiation of an off-board brain I have. Any piece of text with value in my life gets dumped into nvALT.
nvALT syncs with Simplenote. This is handy because nvALT is macOS only. So you can use the Simplenote iOS app to keep your extra brain nearby on the go. Simplenote also has a macOS app. You may think: Why not use the Simplenote desktop application? Because — it’s not quite as fast. We’re talking milliseconds, but it’s enough that you feel the difference. It’s the difference between the $1000 Japanese garden shears and the $150 garden shears. They both cut just fine, but if you work in the garden all day, you will (probably?) feel the difference.
I write mainly in Ulysses. Even now, I’m writing this in Ulysses. Ulysses works well for organizing large-ish bodies of writing. The organization is mostly of why I use it.2 But it can slow down. Ulysses has slowed down on a number of occasions. If I have a 5,000 word article and type towards the top of it, it sometimes can’t keep up with my typing. It re-renders the whole thing with each keystroke. This drives me bonkers. But the organization and simplicity of the application outweigh this sometimes-slowness. Still, the slowness feels indicative of unseen rot on the inside of the machine. The slowness is like an off smell. I don’t trust the application as much as I would if it didn’t slow down on such a small text file. 5,000 words is nothing. Faith is tested: It makes me wonder how good the sync capabilities are. It makes me wonder if the application will lose data.3
Speed and reliability are often intuited hand-in-hand. Speed can be a good proxy for general engineering quality. If an application slows down on simple tasks, then it can mean the engineers aren’t obsessive detail sticklers. Not always, but it can mean disastrous other issues lurk. I want all my craftspeople to stickle. I don’t think Ulysses is badly made, but I am less confident in it than if it handled input and interface speed with more grace. Speed would make me trust it more.
As a counter example, Sublime Text never slows down for me. I can throw a 50,000 line file at it and it zips along. You may wonder why I don’t write in Sublime Text (as I sometimes wonder). And the answer is: It’s just not quite nice enough for full composition. Sublime’s typography, spell check, file organization (no keywords, inability to organize order willy-nilly, etc) — just not as refined. Sublime Text is optimized for code, not words. Whereas Ulysses is word-focused. The difference is subtle but meaningful. That said, Sublime Text has — in my experience — only gotten faster. I love software that does this: Software that unbloats over time. This should be the goal of all software. The longer it’s around, the more elegant it should become. Smooth over like a river stone. I have full trust in the engineering of Sublime Text because I’ve used it for over a decade, but also because it always feels like a fast, focused tool (even though it’s actually very complicated) and has only become faster the longer I’ve used it.
Adobe Lightroom does not feel like a fast, focused tool. Nor does Photoshop. At one point, they did. It’s why I chose them. Photoshop in the 90s was very fast. I don’t think I’m invoking some halcyon fantasy. It was truly a sparky piece of code. Similarly, I started using Lightroom around 2007 because it was so much faster than Apple’s Aperture. But Aperture is gone and Lightroom has not smoothed out over the years. Lightroom...