Ten Mac OSX Applications I couldn't live without
It's basically impossible for me to imagine living today with any operating system other than Mac OSX. It has, at this point, become an extension of my body. The way I work on OSX is probably possible to replicate under a Windows or UNIX environment, but it would be a mammoth task. I often run into people who are new to the world of OSX and who are trying to learn their way around it. I find myself showing them cool applications in a piecemeal manner. It's occurred to me, though, that I should probably just write a blog post describing how I work, and then refer people to it in the future. Not all of these things will be applicable to you, but it's definitely worth your time to consider adding them to your tool set. Without further ado, then, here are the OSX applications I could never live without.

Firefox 4 + Pentadactyl
As far as I can tell, every other person in the world has abandoned Firefox for Chrome. I can certainly understand this, Chrome's a great browser. I use it myself as my secondary browser. However, Firefox has something Chrome won't have any time soon: Pentadactyl, a fork of another extension called Vimperator. This is a Firefox extension to give the browser a keyboard navigation system that's similar to what's possible in the vim text editor. A major theme of this blog post is going to be that you absolutely need to know how to get around your computer without the mouse, and being able to browse the web using only the keyboard is invaluable. I won't claim that it's always the way I browse the internet (see the section on Better Touch Tool), but it's great in plenty of situations. It's my opinion that switching between keyboard and mouse is what really slows you down. I'm aware that there are a few efforts to bring this functionality to Chrome, and I've tried them all. None of them compare. Fundamentally, the Chrome API is just too limited to allow anything of equivalent quality to exist. Learn how to use Pentadactyl to browse the web and many parts of your life will become incomparably better. Furthermore, Firefox 4 (the current beta) is very competitive in the performance category, so you don't lose too much that the Chrome users have. You need to download a nightly build of Pentadactyl to use it with Firefox 4, but it's worth it.

Aquamacs
I'm a recent Aquamacs convert. It's only really in the last year that I've switched to it as my primary text editor. Prior to that, I was a dyed-in-the-wool vim user. Realistically, I think there's a lot of value to both editors, and I still use vim occasionally, especially for editing over an SSH connection. Emacs is my tool of choice for most things, though (and I've come to feel that syncing things locally is almost always better than editing over SSH). Emacs' limitless customizability ensures that you can replicate basically any feature of another text editor in it. I'm also a big "emerging languages" fanboy, and Emacs is where you're most likely to find good editor support for the newer programming languages. Clojure, especially, is a big part of my life right now, and of course Emacs has by far the best support for it. If you've never developed software interactively using a tool like SLIME, you have no idea what you're missing. I could probably write another twenty paragraphs about Emacs here, but frankly, you're probably already an Emacs user or are happy with your existing text editor. Either way, you've heard it all before. There's a competing OSX version of Emacs called Carbon Emacs, but Aquamacs works a lot more like a native OSX app, and I love the command-line tool it bundles.

iTerm 2
iTerm 2 is a fork of the popular iTerm terminal emulator. It's only very recently become a usable alternative, which is great. The veteran Emacs user is probably at this point thinking "Wait, you use iTerm? Why not use one of the shells built into Emacs, like *eshell*, *shell*, or *term*?" In point of fact, I've used all three of those extensively, and the issue of shell selection has been a tricky one for me. It's far from a closed issue in my mind. Right now I'm mostly using iTerm instead of one of the Emacs native shells because it performs well and can drop easily into interactive applications like bpython or even vim as needed. Aquamacs comes with an awesome command line tool that lets me type "aquamacs filename.txt" to open it in my running Aquamacs instance seamlessly... just like I used to do with vim. So far, this really is the best of both worlds. The built-in OSX terminal is pretty great, but iTerm will get you some things that it doesn't support. My original reason for seeking it out was for 256-color support, which I use for pretty vim color schemes. It also has full-screen mode which I use a lot (fullscreen is great for my small 11-inch Macbook Air screen).

Quicksilver
Quicksilver is absolutely necessary for the serious keyboard enthusiast. You can use it as an application launcher, of course, which I do often. It's also equally valuable as an application-switcher. Suppose while writing this post, I decided I needed to IM my friend about something. Obviously I'm not about to switch from keyboard mode to mousing mode for something like that, that would be slow! Instead, I hit Cmd-4. This is a Quicksilver trigger that I've set up which opens Adium. I highly suggest setting up triggers to switch to applications you commonly use. This is the best method for application switching that I've found, it usually beats hunting around for the right application with Cmd-Tab (the sole exception, I think, is for going back to the previous application). Quicksilver is also how I pull up specific folders in Finder when I want to use Finder instead of the terminal... and you can use it to do things like unzip a downloaded file or mount a .dmg, all of which speed up your life. I'm aware that Quicksilver is not actively maintained any more, and that many of its former devotees are moving to competitors like LaunchBar. I haven't personally been convinced to put up the $35 for a LaunchBar license, but it may become necessary in time.

LyX
LyX is a document editor that I'm a big fan of. It's basically a GUI for writing LaTeX, the typesetting language of choice for most papers in computer science and mathematics. I've taken notes with LyX for a long time, and it's come to the point where I typeset basically everything with it. It's usually a better choice than Word, as long you don't have very specific formatting requirements in mind. LaTeX is a good tool for making professional looking documents quickly, and it's easy to drop into mathematical equations for times when that's necessary. Now that I've got some experience with it, I can take notes with LyX in a mathematics lecture just as quickly as I could with a pencil or pen. Writing math is a bit slower, but the fact that I type about five times as fast as I write gives me a chance to catch up. LyX also integrates with the clipboard pretty well. For example, you can select a diagram in OmniGraffle and paste it straight into LyX as an image.. the OSX clipboard is unquestionably one of the best parts of the Mac experience.

SizeUp
SizeUp is not free, but it's only $13 and worth every cent. It adds keyboard shortcuts to OSX to move windows around. This is amazingly useful for configuring two windows to show up side-by-side or for maximizing a window. The impossibility of replicating the "maximize" behavior in Windows is pretty much my least favorite OSX design decision, so SizeUp is a godsend. Incidentally, the runner up for my least favorite OSX design decision is the inability to cut files with Cmd-X in Finder, and you can buy a program called PathFinder to rectify that. That annoyance doesn't even come close to the lack of maximize, though. The green "zoom" button basically always does the wrong thing.

KeyRemap4MacBook
KeyRemap4MacBook is incredible, and virtually unknown. Basically, it lets you arbitrarily remap keys in the operating system, either system-wide or at the individual application level. It's also pretty easy to customize if you're not afraid of getting your hands dirty. One thing it does that I love is remap my Caps Lock key. Basically, I have Caps Lock set to send Ctrl in System Preferences, and then I can set it up with this program so that Caps Lock when pressed alone sends Esc and when pressed with another key sends Ctrl. It's actually like having two keys in one... totally awesome. I also frequently use it to add stuff to applications that are otherwise lacking. For example, I've got it set up so I can scroll up and down in Preview using J and K. Pretty sweet. It comes with many useful default keyboard shortcuts, such as the ability to set up more Emacs-style keybindings system-wide, so you can, for example, set up C-x C-s to save a file. Excellent.

Better Touch Tool
As I've indicated, I'm a big fan of the keyboard. I also think, however, that you use a computer in either "keyboard mode" or "mouse mode". The thing that really slows you down is having to switch between these modes. When I'm in "mouse mode", I don't want to have to type if at all possible. This is where Better Touch Tool comes in. It's basically like KeyRemap4MacBook, except for the trackpad. You can use it to define arbitrary trackpad gestures, either system-wide or for specific applications. For example, when I'm in Firefox, I use a bunch of trackpad gestures all the time. 3 finger swipes up and down take me to the top or the bottom of the page. A 3 finger tap opens a link in a new tab. I've got gestures for closing tabs, opening the most recently closed tab, even a few for navigating to sites I read all the time. Don't underestimate the usefulness of trackpad gestures, they can improve your life almost as much as keyboard shortcuts.


Fluid+Gmail Notifier
Fluid and Gmail Notifier both work together in my email strategy. Gmail Notifier is kind of an easy one. I like to know about new emails right away. I tried the whole "not obsessive-compulsively checking your email" thing, and it didn't work for me. Gmail Notifier gives me Growl notifications when I get a new email. It's cool like that, and my only wish is that it would check more often. Fluid is another useful program. It allows you to make what it calls a "Site-Specific Browser". This lets you treat a web page like an application. It gets its own dock icon and everything. Fluid also does a great job with Gmail notifications, pushing a dock badge when you get a new email. I used Fluid exclusively without Gmail Notifier for more than a year, but when I started working on smaller screens, I started to realize that the OSX dock just takes up too much room for the amount of information it provides. So now I auto-hide the dock, and find myself almost never missing it. Fluid is still great, though, especially for Gmail and Google Reader. I can be in Gmail in one second with Quicksilver. Incidentally, you should learn the basic Gmail keyboard shortcuts now if you don't already know them.

Dropbox
I hesitate to even mention Dropbox, because I feel like everyone in the world already knows about it. Dropbox is the best piece of software written in the past five years, hands-down. If you don't have Dropbox, get it. If you do have it, you probably aren't using it enough. Every single thing you do needs to be in Dropbox by default. End of story. Dropbox handles backup, it handles syncing, and it handles versioning. It's saved my life so many times that they all blur together into one perpetual wave of gratitude. The idea of creating content that's not in Dropbox is terrifying to me.
If you liked this, you should click here to subscribe for regular updates