On Computing

I often daydream about not caring about my computer, and being able to go blissfully through my life with little concern about the mix of applications, storage of data, and how I interact with the machine, but that’s just a dream. The truth is I do care. I care a lot. I care enough that I’ve developed my own personal philosophy of computer use. I use this to determine which services and applications I will most likely be happy with. It helps me, maybe it will help you too.

My computing philosophy rests on four pillars: security & privacy, long term data storage and retrieval, simplicity, and power. I value these traits in a computing platform because of the amount of information my computer stores for me, and how much I rely on it for my research and work. I’ve been lucky enough, and privileged enough, to be able to turn my obsession with technology into a career, so my livelihood depends on me knowing how these things work, why they do the things they do, and keeping up to date on current trends and happenings in the field. I care because I have to, but also because not everyone understands the effect the choices they make with the technology they use have on their future selves. I’d like to not care, but I look at computers, applications, and the things we keep and I can’t help but see how things could go wrong. I care because I am compelled to.

This brings me to the four pillars.

Security & Privacy

Maybe I’m getting old, but I believe that I shouldn’t have to give up personal information in exchange for using my computer. I should be able to protect my data as I see fit. I shouldn’t have to worry about security because my computing decisions and platform of choice ship with good, sensible defaults, and easy ways to enhance the default choice.

So, I choose to use a Mac running OS X. I encrypt the hard drive using File Vault, and turn on the firewall to “Stealth Mode”. I use Safari for my primary browser, and I don’t install Flash. I’m not storing anything particularly interesting to anyone, just things that are important to me. A scan of our marriage certificate, all of our social security cards, bank statements going back many years, our birth certificates, details about various health related issues. Things that I don’t believe are the business of anyone else.

For more detailed reasoning on why we should all use encryption, see this article by Bruce Schneier, excerpt below:

This is important. If we only use encryption when we’re working with important data, then encryption signals that data’s importance. If only dissidents use encryption in a country, that country’s authorities have an easy way of identifying them. But if everyone uses it all of the time, encryption ceases to be a signal. No one can distinguish simple chatting from deeply private conversation. The government can’t tell the dissidents from the rest of the population. Every time you use encryption, you’re protecting someone who needs to use it to stay alive.

Long Term Data Storage and Retrieval

Paper has a heck of a shelf life. If kept in reasonable conditions, a piece of paper will long outlive all of us. Unfortunately, as the volume of information you keep increases, so does the storage requirements, and if you are storing everything on paper, you are eventually going to need entire rooms filled with filing cabinets to keep your personal data library. It’s simply not a scalable solution in the digital age.

So, I store nearly everything of interest on the computer. Appliance manuals, copies of bills, academic papers, clippings from web pages, and of course, my own creative work. Since I’m storing the data on the computer, the computer needs to be configured in such a way as to enable retrieval ten, fifteen, twenty, or even fifty years from now.

To ensure the availability of my data in the future, I tend to use open formats whenever possible. I use plain text instead of Microsoft Word documents. I print complex documents to PDF. I do use some applications where I store data in a proprietary format as an intermediary step, but when the document is complete and I’m storing for future reference it is exported to either plain text or PDF. Any system that either cannot do this, or makes exporting of data to an open format complex or difficult is quickly discarded.

Simplicity

Even though I care about keeping my computer secure, and about making sure the things I write today will be accessible twenty years from now, doesn’t mean I want to spend hours upon hours tweaking my system. When I plug in my computer to an external display, I just want it to use that display, no mucking about. When I want to install a new application, I want that to be as straight-forward a process as possible.

I want the applications I use to behave in a consistent manner, and I want them to integrate deeply with the operating system. That way I don’t have to think about what key combination to press or how to accomplish a given task. When everything works as intended, the combination of applications all function in a similar way. I have one important exception to the simplicity rule, MacVim, but that is only because I’ve been using Vim for fifteen years and I know exactly how it works. However, in service to simplicity even this old stalwart servant may be removed from my machine soon. Plain text editors and writing tools have gotten very, very good in the past few years.

Power

There is absolutely no need to trade power for simplicity. In a mature, well designed system the two go hand in hand. Power is a general term that could mean many things depending on the context it is used in, even when speaking specifically about computers. The power I’m talking about here is the ability to handle complex, long-running tasks. To be able to keep up with the demands of a high-stress environment and to respond correctly when needed. The ability to run multiple, high-resource applications simultaneously without issue.

In my job I never know when things might need sudden and immediate attention, and I need my computer to be there for me when that happens. That means I don’t have time to recompile X.org or muck about with my network driver or worry about closing apps because I have too many of them open to deal with the issue at hand. I need my computer to be able to handle whatever might come around gracefully and without getting in my way.

Power is similar to flexibility, and incorporates certain attributes of a flexible system, but one that is more flexible than powerful will collapse under stress. A system that allows unlimited customization will not be able to adequately prepare for unexpected shifts in the demands placed on it. It’s easy to mistake one for the other, until the Director of Infrastructure is standing over your shoulder asking why this server just crashed and why it isn’t back up and running again yet. Then the difference becomes crystal clear.

Summary

I’ve grown to use my machines in a certain manner, and expect them to behave in a certain way. I also expect that whatever system I’m using is going to respect my privacy, provide a substantial amount of security, and be powerful enough to do what I need it to do. These requirements may limit my choices, but they also provide focus and clarity on the technology I will allow into my life.