I have decided to take a quick break from my more business-oriented writing of late to focus on something that people seem to have an interest in: how I have my computer set up and configured. This post will necessarily be in more of a catalog format than article, but hopefully no less useful.
I switched to a Mac a few years ago, completing the circle of computing life as I did, as I started with an Apple IIc around 1981. In between I fell in love with various computers from the Amiga, Atari ST, early IBM machines, to Linux and finally to the pinnacle of all things computing: the NeXT. Ever since then I think I have been subconsciously trying to get my desktops to look as fluid and work as well as the NeXT machines did, with varying levels of success. Some of my choices reflect that impulse.
I will preface this by saying that this is how I have my computer set up and configured, and is by no means the right way–it just works for me. The software I use is what I find interesting or useful to my workflow and style, but I am always looking for improvements. This catalog, then, will probably be out of date five minutes after I’m done writing it all down.
Microsoft Outlook. I have installed and used Postbox, Thunderbird, and a couple of others, but I keep falling back to Outlook. Perhaps it is a little bit of the Stockholm Syndrome (though not IPv6 Stockholm Syndrome), but I can’t seem to find anything else that matches everything feature-for-feature that I need. It’s all a compromise somewhere, somehow. With Outlook I have to put up with the usual Microsoft Bloat, but I compensate with a lot of memory and processing power.
Google Chrome. I’m sure someone will castigate me for this (as if the last section wasn’t bad enough) but I just find that it works well, is lightweight, and does everything that I want reasonably well.
Cord is my go-to for connecting to remote Windows servers, though this is always in flux. I do much more via PowerShell than ever before, so pure Remote Desktop Protocol just doesn’t get used as much as it used to in my environment.
Evernote is my main tool in the “remembering stuff” category of tools. I use it to grab and catalog things that I find interesting or useful. I use tags and different notebooks and such within the tool, and it suits me nicely. I did switch to the premium edition quite a while back, and it’s well worth it as far as I’m concerned.
Tweetbot and sometimes my own command-line client (written in Python as a learning exercise) if I’m feeling plucky.
TextEdit, VIM (though I use a fairly customized version and configuration, more on that later).
A lot of these tools revolve around specific tasks. For instance, I use Markdown Pro to compose all of my blog posts, this one included. It gives a nice appearance to things without a lot of the fuss and extra baggage of full-weight word-processors, and I can export the completed work in HTML or PDF format. Not particularly fancy, but it gets the job done. My only complaint here is that the formatted portion of the screen (split-screen composing window) doesn’t keep up with the raw-text side. Minor annoyance, but if I could find something that solved this I’d probably switch products.
I also use BBEdit for some things, though I’m finding I use it less these days than a couple of years ago. It’s definitely one of those tools you either learn and love, or hate. There’s a fairly steep barrier to entry in both price and learning, but you may find it useful for its syntax highlighting, scripting, etc. More useful for raw code editing (HTML, XML, C, etc.) than for articles and such.
LaTeX has been my go-to for any kind of serious document creation (resumes, manuals, scholarly papers, etc.) for years now. I will warn you that it is absolutely not for the feint of heart as it is basically an old programming language for document markup. Most Masters and PhD theses are written in this language, as are most scholarly research papers. It is well worth learning, and once you do you’ll never use anything else as it creates the most hands-down beautiful documents you’ll ever find. A lot of people will be turned off by the steep learning curve (you have a lot of code to learn, and a lot of compiling to even get a viewable document) but if you have the patience, go for it.
The link above is to an OSX-specific set of packages, and I recommend you start there. You can also look at The LaTeX Project and a nice Document Guide/Wiki to get started. The CTAN Archive is a great place to browse for packages and whatnot. Happy hunting!
I use iTerm2 instead of the built-in terminal program shipped with OSX. It has many nice features (too many to list), is more customizable, and is just better. Go get it. You’ll thank me. While you’re at it, get the Solarized package and install it for everything you have. In addition to a uniform color palette, it helps across the board with aesthetics when working in any of the supported applications.
Integrated Development Environments (IDEs)
I use two primary tools for coding on my Mac: XCode when I’m doing something using the Cocoa Frameworks (not often) and Komodo IDE 8 for everything else (mostly Python these days). Your choices here are likely to be highly personal depending on how much programming experience you have or are likely to do, and in what environments. You can do any kind of programming or scripting in any kind of text editor, of course, but I find a nice IDE to be a comforting thing to have around. I also have my VIM install configured with syntax highlighting for the languages I use.
I use a ton of other programs from WireShark to DropBox to get my work done; VPN clients, various photography suites (another hobby of mine), to things like 1password for password storage. Unfortunately, this post is longer than I expected already so I’m stopping it here. I’ll come back with a part II soon, and hopefully there I can include all relevant portions of my actual configurations (.vimrc, screenrc, tmux_conf, .bashrc, .profile) as well as all of the OSX-specific hacks I’ve made over the years to get my Mac to behave like I want it to.
In the spirit of giving back, I’d love to hear from anyone else as to what nifty software, configurations, or hacks you use to get things done on your Mac and why you like them. As I said at the top, many of these things are just what I’ve done, but I’m always open to suggestions and better ways of accomplishing things.