Uses
Inspired by Wes Bos, this page details the things I use to stay productive. Let's dive in.
Last updated: February 21, 2023
Editor & Terminal
- My editor is Neovim.
- My theme is Tokyo Night. I made a theme called Electron Highlighter and spent an absurd amount of time on it and eventually came to realize I didn't want to keep tweaking it or making versions of it for new apps. Tokyonight is great, and there are plugins for lots of applications. Maybe someday I'll spend the time necessary to get Electron Highlighter working how I want in Neovim, but until then, I'm happy with Tokyo Night.
- My font in my editor and terminal switches between Berkeley Mono and MonoLisa. Berkeley Mono feels like a font from the early days of computers and I freaking love it (it's the font you see on this website). Mono Lisa is highly readable and looks excellent. Both fonts are an aboslute joy to use. If I have to stare at a font all day, it's worth paying for one I enjoy looking at. For my terminal, I used the nerd-font font patcher script to add a bunch of extra icons to it.
- I use Kitty for my terminal. I used iTerm for a very long time, but what sold me on Kitty was how every option is in a single config file, so it's super portable, and it's also cross-platform. The single config file works great for my dotfiles setup.
- I use zsh as my shell, specifically oh-my-zsh. Their plugin system makes it super easy to add functionality.
- I use a terminal prompt called Starship. It's built in Rust so it's super fast (nobody likes slow terminal prompts), and customizing is done via a TOML file so it's dead simple to make it look exactly how you want. I can't recommend it highly enough.
I have a lot of terminal aliases and scripts to help me be more productive. Here are a few of my favorites:
afk
starts my screensaverweather
gets the current weather in your area - try it out! Runcurl wttr.in
in your own terminal.please
=sudo
. Stole this idea from Paul Irish, but I can't seem to find it in his dotfiles anymore.rm
=trash
. I installed trash-cli, so settingrm
equal totrash
means instead of losing something forever when I runrm
, 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 Apps
I used to prefer having desktop apps for everything, but these days I try not to use too many apps, and generally prefer to use web apps for most things (because portability). Things like Notion and email that I could use an app for I just use the web app. Most of my time is spent in a browser, terminal, or Slack (I tried Slack in the browser and just couldn't make it stick. Might give it another go sometime). Here's the rest:
- For my browser, I'm using Arc from The Browser Company. It's still in early release. It's Chromium based, but is a totally rethought browser experience. I'm absolutely loving it. Before Arc I used Firefox for years.
brew install --cask firefox
- I use 1Password for password management across all my devices, and at this point I think it's safe to say that I couldn't live without it. I use the 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.
- I use Raycast for launching apps, emoji picker, dark/light mode toggle, lorem ipsum generator, snippet manager, clipboard history, window management, and a confetti cannon (seriously). It took a lot for me to leave Alfred but Raycast is really incredible.
brew install --cask raycast
- Kap is the best app I've found for doing screen captures (for videos only - the builtin macOS screenshot utility is perfectly fine for screenshots). You can easily export them to MP4 or GIF. Super useful for showing UI changes in GitHub PRs.
brew install --cask kap
- Insomnia is an excellent REST client, used for testing API calls that also has top notch GraphQL support.
brew install --cask insomnia
Desk Setup
- I have a 32" 4K curved monitor mounted to the wall with a swivel wall mount.
- To the left of my monitor, my laptop (currently a 16" MacBook Pro) sits on a Curve stand by TwelveSouth. It frees up desk space and is really minimal.
- I use a ZSA Moonlander keyboard.
- I use HyperX Cloud Alpha gaming headphones. I'm fully remote and have these on nearly all day, so comfort is super important, and they are ridiculously comfortable.
- I use the microphone built in to my headphones.
- I use a Logitech C920x webcam. Any standalone webcam will be a significant upgrade over the builtin webcam on your laptop.
- I'm currently in the process of renovating an unfinished area of my basement and converting it to my office. So right now my desk is a folding table. The ultimate goal is a 72" IKEA table top mounted to Fully Jarvis adjustable desk frame, with the monitor and my laptop sitting on mounts. I'll post pictures eventually.