Inspired by Wes Bos, this page details the things I use to stay productive. Let's dive in.


Time is a huge factor in staying productive. Your editor is the one tool you spend most of yours in and you should invest in optimizing your workflow skills. You'll benefit from them every day.
  • VS Code

    I am probably one of the last people to make the switch to VS Code. I'll probably do a write-up on why I switched, because it took a lot for me to leave Atom. For now, I'm really enjoying VS Code.

  • Electron Highlighter Syntax

    I wrote my own theme. It's a slightly more vibrant version of Atom's One Dark syntax theme that I've customized to my liking. I have spent way more time on this theme than I care to admit.

  • Operator Mono

    I have used a number of fonts over the years. Operator is what I currently use in my editor and terminal. It's highly readable and looks excellent. If I have to stare at a font all day, it's worth paying for one I enjoy looking at.


  • Hyper

    It's super easy to customize and very performant.

  • fish

    Fish is my shell. Much better than bash in my opinion. I used zsh for years (both oh-my-zsh and prezto) and fish is a much more enjoyable experience. The intelligent autocomplete has changed my life. It's amazing. Also super easy to customize. It used to have a lot of incompatibilities with bash scripts which was annoying because you couldn't copy them and run them, but many of these things have been made compatible so it's much better than it used to be.

  • Hyper Electron Highlighter

    The theme is my Electron color scheme from Atom, ported to Hyper.

Here are a few of my favorite aliases I've set up:

  • afk starts my screensaver
  • bitly followed by a URL runs a Python script to get the shortened link and copies it to my clipboard. Mostly useful for Rickrolling people.
  • weather gets the current weather in your area - try it out! Run curl in your own terminal.
  • please = sudo. Stole this idea from Paul Irish, but I can't seem to find it in his dotfiles anymore.
  • resource re-sources my shell if I've made changes
  • rm = trash. I installed trash-cli, so setting rm equal to trash means instead of losing something forever when I run rm, it dumps it into my trash so I can still recover it if I need to. I've been burned too many times.
  • gpub = git push -u origin $(git_current_branch). When you start a new branch in git, it's super annoying to have to set the upstream origin the first time you're pushing that branch. This alias makes it easy to publish a new branch.

Desktop Applications

I use a variety of other desktop applications to get things done. I'll elaborate a little on why I chose some of them, especially in lieu of other popular applications. If you can install the app via Homebrew Cask I will include the install command.

  • Brave Browser

    Brave is a browser that puts your privacy first and automatically blocks trackers and ads. I always loved the idea - especially because it made many sites load faster - but there were a few things that kept me away, mostly extensions. In late 2018 they switched from their own browser shell, called Muon, and began using Chromium, and along with that change we got access to every Chrome extension and the Chrome dev tools. I switched immediately and never looked back. At this point, it's essentially Chrome without Google tracking everything you do, plus built-in ad-blocking. brew cask install brave-browser

  • Apple Notes

    I was using Bear for a while and it's really great (LOVE the markdown support), but ultimately I switched back to Apple Notes because I can't have shared notes with my wife in Bear. If they ever add that, I'll probably switch back.

  • Reminders

    I used Wunderlist for years and loved it, then realized that Reminders could do everything I needed in a todo list app, plus being able to add items to my lists via Siri is a huge benefit. I can even share lists with my wife, like a grocery list, and we can both add/remove items.

  • Tweetbot

    I love Twitter, and I use it as my primary source of news/information, but I can't stand the ads and their official desktop app wasn't updated for years. Years ago I got Tweetbot for iOS and fell in love. Then they came out with the desktop app, and it's awesome. Ever since I started using the desktop app, I find that I keep up with it much better.

  • Kap

    Great app for doing screen captures with options for exporting as a GIF or video file. Super useful for showing UI changes in GitHub PRs. [website, download] brew cask install kap

  • Slack

    basically the go-to app for team collaboration. I like it pretty well. Slackbots are fun to build when you have some free time. brew cask install slack

  • Rectangle

    This might be the most underrated app ever. Windows computers have some handy built-in capabilities for managing your application window placement, but macOS doesn't have that. Rectangle gives you keyboard shortcuts for rearranging and resizing your windows, and also gives you "window snapping", where if you drag a window to a certain edge of the screen it will snap to fill part of the screen. I will never be able to use a Mac without this app again. [website] brew cask install rectangle

  • Insomnia

    A REST client, used for testing API calls. I previously used Postman for a REST client, but I came across Insomnia and it's really great. It also has excellent GraphQL support. brew cask install insomnia

  • MongoDB Compass

    I use it for interacting with Mongo databases. It's pretty solid.

  • 1Password

    I use 1Password for password management across all my devices. I pay about $60 a year for a Family Plan because it gives me shared folders so my wife and I can both use it for shared logins and also keep our own logins separate.

  • Newton Mail

    Netwon is my favorite email client I've ever used. It's minimal, fast, and works with all the different email providers I need it to. It's an excellent email client, and I will gladly pay the yearly subscription fee for something I use so often. It also has an accompanying iOS app.

Desk Setup

At work:

  • I have two 23" monitors mounted on monitor arms to a sit/stand desk that I didn't pay for.
  • My laptop (15" MBP) sits beneath the two monitors, centered on the desk.
  • I use Apple AirPods and can't recommend them enough.
  • When I'm not standing, I sit on a buoy stool. My company had a few of them sitting around our building and I snagged one instead of using a normal desk chair. I love it. I have bad posture and this helps a lot.
  • I use an Apple Magic Keyboard and Apple Magic Trackpad. I love the gestures on the MacBook touchpad, so I opted for the Magic Trackpad instead of a Magic Mouse, but I do hear excellent things about the mouse.

At home:

  • I have one 23" Acer monitor
  • To the left of the monitor, my laptop (15" MBP) sits on top of an mStand by Rain Design. I love it. It also helps keep the laptop cool so it doesn't overheat.
  • I have some Logitech speakers and subwoofer that I plug into my laptop most of the time when I want to listen to music.
  • The desk itself is an IKEA table top mounted on a frame I built out of steel pipes that I spray painted black.