My Tools

People often ask me what I use to produce the things I make, whether it’s code, videos, books, or music. This page is a list of my tools, organized by what I use them for.

I use macOS for my desktop operating system because of its fantastic accessibility features. I use iOS for mobile. I use Windows 10 through a bootable partition and in a virtual machine for testing apps.

Software Development

  • iTerm 2 for my terminal emulator. I use the Bash shell.
  • Homebrew for installing programming languages, command line tools, and other apps on macOS through the command-line interface.
  • Vim for my text editor with my Vim configuration.
  • Tmux to manage my terminal workspaces
  • Firefox for building and testing web apps. The developer tools are amazing.
  • Browsersync for testing sites on mobile and slow connections.
  • VirtualBox for virtualization.
  • Docker for Mac for working with containers.
  • Vagrant and Ansible for setting up virtual machines and cloud servers quickly.
  • Hugo for static site creation
  • Ruby, Elixir, JavaScript, Sass, and Node.js for building web apps.
  • Go for making command line apps

Image Creation / Editing

Project management

Creating Learning Materials

  • Vim for writing anything.
  • Marked2 for producing PDFs and ebooks.
  • Typora for producing tutorials.
  • Clarify for producing highly visual tutorials with screenshots (Discontinued, but still downloadable.)
  • pandoc for producing PDFs and epubs using automation.
  • OmniOutliner for creating outlines.
  • Deckset for creating presentations.
  • Screenflow for creating videos and screencasts.
  • Hype for creating animations.

Managing Files and Documents

  • Dropbox for sharing files.
  • Evernote for keeping documents long-term.
  • Pocket for things I want to read later.


  • Numbers for tracking business expenses.
  • Freshbooks for tracking freelance work and sending invoices.

Music creation


  • IRCCloud for IRC communications.
  • Slack for work and for communities that require it.
  • Signal for secure communication with family and close friends
  • Google Hangouts
  • Tweetbot for managing Twitter


  • Alfred and the Powerpack.
  • Soulver for quick complex math.
  • Witch for task switching.
  • RescueTime for tracking where time goes.
  • jrnl for tracking what I’ve done today.
  • Choosy for opening web links in any browser I like, not just the default.
  • CleanMyMac for uninstalling and removing files