Scalability and Maintenance

Some of the most useful applications on my Mac are the ones I can use without the need to maintain and tinker with the contents of the app.

Applications with the primary function of holding and managing a library of items — such as “anything buckets“, bookmarking services, RSS readers, to-do managers, and even the computer’s file system itself — can become convoluted and difficult to use as the number of items in their library grows. The grace with which apps such as these scale speaks volumes to their long-term usefulness.

An application that does not scale well requires that as new items are added old items must be removed or rearranged, else the value of all the items is slightly degraded. Applications like this require regular maintenance by the user in order to preserve their usefulness.

An application that does scale well is one in which regardless of the amount of items added to the app, they all carry the same value and ability to be found as when they were first added. An application like this requires little to no regular maintenance by the user in order to preserve the app’s usefulness.

Yojimbo is, in my opinion, a great examples of a maintenance-free application.

I have been using Yojimbo for several years, and it is no less useful today with its thousands of items than it was when I first began using it. Adding a new item to Yojimbo does not require that I take an old item out. When I add a new item to Yojimbo I know that it will not affect all the other items — a year from now I know I will still easily be able to find the item I just added, and that by adding a new item the difficulty of finding other items is not massively affected. The only limit to my Yojimbo library is my hard drive.

Likewise with Notational Velocity and Simplenote. A new note added to Notational Velocity does not devalue the other notes which are already in there. Also, a new note in NV does not make finding past notes significantly more difficult of a task.

Moreover, this is why having just one folder to keep all archived email can be so beneficial when it comes to managing emails. Admittedly, I am very poor at email management, but, one thing that does help me is that I place 99% of all my emails into just one folder. And I use search to find old emails when the need arises.

An example of a system that does not scale well without maintenance from the user? The iPhone Home screen. This thing does not scale well at all. The more apps I add the more I have to fiddle with the placement of the apps which were already there. More apps means more Home screens to flick through and more folders to hide the non-regularly-used apps.

In fact, I now use Spotlight on my iPhone to find apps that are not on my first two Home screens. There are apps on my iPhone which I use but I do not know what folder they are in.

The file-system itself is perhaps the most maintenance-heavy system of all. I think this is why application launchers are so fantastic. They serve as a single point of entry that helps you search for and navigate directly to the file, bookmark, or application you are searching for.

Search is, in fact, a critical component to applications and systems that scale well without maintenance. It’s why Yojimbo and Notational Velocity are still so useful even though they are full of notes and items.

We also see Apple trying to address the issue of the Finder’s maintenance needs by OS X’s tools such as the Dock, and Spotlight, and Launchpad. We see them doing a much better job of addressing the file system on iOS by abstracting it away altogether. From the user’s perspective, iOS has no file system — only apps and the files and media which are in those apps.

The list of apps and systems that scale well are, of course, different for different users. Some people may feel compelled to keep their Instapaper queue empty and thus find it to be an app that does not scale well. Some applications scale well (or not) because of the attitude and approach of the user; others scale well by design thanks to the developer.

Apps which are low maintenance are the apps which end up getting used most frequently. Choosing software and systems that scale well without needing regular maintenance is one way to help ensure that you will actually make use of your tools at hand. Apps that require too much maintenance and tinkering will eventually cease to get used — unless there is an external reason which requires you use that app — and in their place an alternative will arise.

Scalability and Maintenance