The tools I use & why I use them
I've spent a decade honing my engineering and design workflows, but never
really bothered to share all the tools that make my days more productive and
My main criteria when evaluating the tools I use each day are:
- Do they enable me to work close to as fast as my brain can think?
- Do they make the experience of working a joyful and rich experience?
Here's a list of all the tools I use on a near-daily basis, and why
they make me a better craftsperson:
Quicksilver is the original Mac app launcher. Although it sometimes feels dated
next to Spotlight, it's scriptable and lets you perform actions on your
searches. Although if I'm being honest, I usually just use it to launch apps
If you're still hunting for apps in your Applications folder by hand,
definitely download Quicksilver and work it into your workflow. You'll be
surprised you could live without it before.
Ever get frustrated trying to optimize your screen real estate in OS X? I like
to work with a terminal on one half of the screen and a browser on the other.
Trying to size the windows in this way using the mouse cursor is a bad time.
Divvy is a window management tool for OS X. It allows you to quickly size
windows into exact screen portions.
I have mine configured for three quick keyboard shortcuts to allow me to make
the currently-focused window occupy the left half, right half, or entirety of
I used to have a tic where I'd open a new browser tab, type "f", and press
Return to launch Facebook. Then I quit Facebook, and the tic shifted to typing
"r" and launching Reddit. Ever been there?
I've surveyed a bunch of Mac content filter apps for keeping me focused when
I'm working, and Focus is by far the best one.
It has support for blacklist- and whitelist-based filtering, timers, schedules,
and a special "Hardcore Mode" which doesn't let you turn it off in the middle
of a timer or schedule.
When you visit a blocked site, you'll be forwarded to a page with an
Having trouble staying on task for hours at a time?
What if you tried staying on task for just 25 minutes? Think you could do that?
Whenever I'm feeling distracted, I use the Pomodoro
Technique to keep me going.
The gist of it: Work for 25 minutes and then take a break for 5. Repeat several
Pomodoro One is a minimalist Pomodoro timer I use when I'm in crunch mode. It
keeps me focused for hours because I know a break is just around the corner.
Get Pomodoro One
I've tried so many personal task management tools and OmniFocus is the best one
there is, hands down.
Built by disciples of David Allen's Getting Things
Done methodology, OmniFocus keeps all your tasks
organized by project and context.
My favorite feature is the Inbox, where new tasks live until you get a chance to
sort through them. It has integration with iOS's "Send to" feature, so I'm
always able to forward articles and ideas directly to my OmniFocus for later
reading without losing a beat.
OmniFocus is amazing for tracking tasks, but often I just need to archive bits
of information for retrieval. This might be account numbers, usernames, license
keys, or lists of books I want to read.
I've tried so many freaking Mac mail apps.
All of them have a common problem: They're slow when put under real-world load.
I delete a ton of email, just like I'm sure you do. I found that every desktop mail
app I used would lag when I was doing rapid-fire deletion.
Plus I really wanted an interface with Vim-like keyboard shortcuts.
The GMail interface is fast and had keyboard shortcuts. But I
like to isolate myself from email during the day because it's almost as much of
a productivity suck as Slack.
That's when I found Mailplane. It's a Mac app that wraps a nice desktop
interface around GMail. Although it doesn't satisfy my dream of having a single
inbox for all of my three email accounts, it does a great job of showing me
my email, letting me batch through all my messages to get to zero, and getting
the hell out of there.
Vim is the best text editor on the face of the earth.
And that will be the most hotly-contested statement on the face of the earth.
But seriously: Before you learn them Vim keybindings seem archaic and confusing.
But they're built for speed. And once they're part of your muscle memory,
they'll come as natural to you as the alphabet.
As I said before, one of my criteria for choosing my tools is if they get me
closer to being able to work as fast as I think.
Here are some of my favorite Vim plugins that enhance my workflow:
vim-pencil: Rethinking Vim as a tool
for writing. I'm using it to write this!
ctrlp.vim: Full path fuzzy finder
for Vim. It's like the Quicksilver launcher for your text files.
NERD Tree: A file tree explorer.
Tmux is like Divvy (above) for your terminal. Split a terminal window in half
without using the mouse, deploy new shells, and keep your entire session
running even if you close your terminal window. Here's me editing this article
using it (and Vim) right now:
Probably the biggest reason I use Tmux is because it enables IDE-like
functionality without leaving the terminal. For those of you using Emacs, you
might not find a use for Tmux in your toolbox. But being that Vim is a text
editor first and foremost means you have to look elsewhere to do things like
display an editor and shell in the same screen.
Tmuxinator enhances the Tmux experience by giving you the ability to fully
configure Tmux workspaces and launch them with a single command.
Imagine you're working on three different web projects. Each of them has a
server process, a file you're editing, and maybe a test runner. Instead of
launching all of these as separate terminal windows every time you want to
switch projects, Tmuxinator allows you to configure Tmux workspace templates so
that switching projects is as simple as typing
Plus, in case you ever accidentally close a terminal window like I do all the
time, your session is saved right where you left off. Just use Tmuxinator to
re-launch your session and everything will be right where you left it.
Powerline is a nifty little status line plugin for Vim, Tmux, ZSH, and others.
It displays things like the current time, CPU utilization, and more.
If you're not using a static site generator for your blog, I implore you to
consider it! It reduces your maintenance overhead since you don't need to bother
with configuring and maintaining a server or database.
And with services like Disqus and my own
Formbot, it's hardly necessary to run a server
application for most blogs.
There are plenty of static site generators and
they all have their pros and cons.
Being a Ruby enthusiast, I settled on Middleman. It has enough features,
including a robust blog plugin.
Plus it has support for external
pipelining, which I use to generate image
thumbnails in Gulp.
Try using Middleman
Amazon S3 & CloudFront
I've used S3 to host my static sites for years. Despite its learning curve, S3
offers unlimited storage and bandwidth at a relatively low cost.
I use the gem middleman-s3_sync
to sync my Middleman sites to S3.
Hosting a Static Website on Amazon Web
2014 MacBook Pro
In my opinion, the 2014 and 2015 Retina MacBook Pros are the best laptops Apple
They balance fast speeds, elegant design, and ports (yes, there are ports!) for
I think it's the most refined notebook computer in history. And I'm sad Apple
decided to veer off that path with gimmicks like the Touch Bar.
So for now, I'm staying in 2014.
Buy a MacBook Pro from 2015 before they run out!
iPhone 7 Plus with Defender Case
This is the best smartphone I've ever used. Even though in its Otterbox Defender
case it's as big as a 1980's carphone, the iPhone 7 Plus feels like putting a
computer in your pocket.
Visit the iPhone 7 site
WASD Keyboard with PBT keycaps
I didn't believe the hype at first.
An entire subreddit devoted to mechanical keyboards?!
Spurred by some pretty brutal wrist pain, I sought relief through new hardware.
I looked at Amazon review after Amazon review and people were recommending
I settled on the WASD 87-key keyboard. The Wirecutter
A $150 keyboard?!
Yes, and I spent $100 on custom keycaps. It's not for everyone. But I can tell
you my fingers are happy all day long pecking away on this gorgeous keyboard.
And like a good mattress, a good keyboard returns on investment over years of
Build a custom WASD keyboard