Development Tools

Here are some apps for macOS or iOS which I have paid for or voluntarily use frequently enough that I would be willing to recommend them to other people. The first list contains things which I think are useful even for non-developers; the developer specific software follows that. And, at the end I list some clutch hardware.


Having a tool to reliably and securely store a lot of passwords is essential for almost everyone nowadays. 1Password does that and keep them synced across devices. This is my top pick because if I were to loose this tool it would take me a long time to recover, both the access and the piece of mind.

1Password Website

Things is a well thought out and beautifully designed app to keep track of todo items. Many people use OmniFocus, which also seems to be a great tool, but I don't need the extra power. I normally have to use Jira to keep track of work items, so I just need to keep track of all my non-work things.

Things Website Things on Mac App Store Things on iOS App Store

Sometimes I want my window to be full-screen, but not the full-screen that hides the menu bar, like what the green button used to do before full-window full-screen was a thing. That's why I got Magnet. If I pull a window to the top of the screen then it automagically snaps to full screen. When I have my external monitors attached it is also useful for arranging VSCode to take up 2/3 and iTerm to take up 1/3.

Magnet Website

Spotlight used to be great, but now it struggles to show the most relevant results. And, it's so slow at times that the results will change just when you are getting ready to choose something. Also, I'm a terrible speller and Alfred offers spelling corrections.

Alfred Website
Dark Sky

This app gives very good hyper-local, short-range weather forecasts. Do I pack up and go home or stay and wait out the storm? This app has helped me choose wisely many times.

Dark Sky Website

Development Specific


I am always in a terminal window, and I usually have more than one open. Tabs are nice for this, but panes are even better. Sure, I could open a single terminal and then use tmux, but I've never got into that habit. As an added benefit, iTerm2 can send keyboard input to multiple panes, which is super slick.

iTerm2 Website
Visual Studio Code

I have recently switched to using VS Code as my main code editor for software development. As of yet I am not sure it is any better than Sublime Text, but time will tell

Visual Studio Code Website

Here are the plugins I frequently use:


Paw is a full-featured HTTP client that lets you test and describe the APIs you build or consume. It has a beautiful native macOS interface to compose requests, inspect server responses, generate client code and export API definitions.

Paw Website

This is a tool which locally centralizes developer documentation. You can either google your coding question and decide whether you want to trust the unknown person on Stackoverflow, or you could just look at the docs. I usually prefer the latter, so use it all the time when I am developing.

Dash Website
Sublime Text

Prior to switching to VS Code, this was my favorite general purpose text editor. I started using it because it could quickly open and replace text in very large files. I kept using it because it makes navigating to files and sections within files quick (CMD-p to fuzy search file names, CMD-p then @ to search within the current open file) and it makes editing multiple lines at once very easy (columnar editing or at arbitrary locations with the CMD-d hotkey); for some text manipulation tasks this has replaced using small command line scripts. As an added bonus, it is also available on Windows (in addition to OS X and Linux), and the license is cross-platform. There are some very good text editors out there, but when you code for a living you should buy the best.

Sublime Text Website

Here are the plugins I frequently use:

Panic Coda

This used to be my tool of choice for creating and managing static websites, especially ones which had ftp interfaces. It's still a great tool, but I no longer build websites the way I did when I was using Coda.

Coda Website

I normally just use the command line for git, but when I don't, this is the app I use.

Git Tower Website



I normally use a CODE 87-Key Mechanical Keyboard with Cherry MX Blue switches. It is a very nice mechanical keyboard with backlit keys and a removable cable. If I am doing pairing or need a keyboard when I am not at my desk, I still pull out my old Apple Wireless Keyboard (A1314, MC184LL/B). This is a surprisingly good non-mechanical-switch keyboard, it is much better than the new Apple Magic Keyboard. Sometimes I think about bringing when I travel with my 2018 Macbook Pro, which has a terrible keyboard with no-travel keys. The Apple Wireless keyboard somehow costs more than my CODE keyaboard, probably because it is no longer made and also better than the ones which Apple currently makes.

Wasd Keyboards Apple Wireless Keyboard

I switch between my old Apple Magic Mouse and a Logitech MX Master 2S. I like the non-mechanical touch interface of theMagic mouse, but it is not very ergonomic and more dust sticks to the bottom of it than other mice. The Logitech is functional and ergonomic, but the mechanical components are not as sexy.

Logitech MX Master 2S Apple Magic Mouse