Nathan Knowler


I am a workflow junkie, so I’m always refining what I use. This page is an outline of the hardware and software that I use on a daily basis with varying degrees of details about those choices.

Devices and Operating Systems

I’ve used MacBook Pros as my daily driver for the last decade. I like macOS. I can make it feel like Linux, but still benefit from the OS exclusive apps it has, which is especially important for my work as a web developer.

I do have a desktop PC that I built when I was a teenager. It serves as a backup work computer and a gaming rig. Currently, I have it dual-booted with Manjaro and Windows 10.

My current phone is an iPhone 13 Pro. Boring, I know.


Generally, I just use my MacBook’s keyboard and trackpad. I do have an ErgoDox EZ that I use when I use a second monitor or if I am using my desktop computer. It’s tough to get used to since often I just need to get work done. I know I just need to take a few weeks of dedicated use to force myself to get better at it. I suspect it will be like learning anything with a steep learning curve (e.g. vim, tmux, etc.).

I have an old 24-inch BenQ monitor that I use. It’s not a high DPI screen which both isn’t great for regular use, but also is good for testing some designs. One day I’ll upgrade it.

For audio, I use a first generation Focusrite Scarlett 2i2 as an audio interface. I run that into a set of PreSonus Eris E4.5 studio monitors. I get the most use out of my first generation Sennheiser Momentums. I’ve replaced its cable about four times and the muffs at least once. I love them.


Most of the configuration for the software that I use is store in my dotfiles repository. I wrote a piece about how I go about maintaining these dotfiles.

On macOS, I use yabai as a tiling window manager along with a Hammerspoon configuration called Stackline and a spacebar as my status bar. On Manjaro, I use Sway.

I’ve replaced Spotlight with Alfred on macOS. I have a number of workflows that I use with this.

I use Alacritty as my terminal emulator. It’s written in Rust, so it’s fast. I wish it had support for ligatures, but I still prefer it over Kitty.

Along with Alacritty, I use tmux as my terminal multiplexer. I have the two integrated really nicely with some nice keyboard shortcuts.

zsh is my shell of choice. I do tend to write all my scripts in Bash though. I use Prezto as my base configuration, but do have it stripped back a fair bit. On top of that I use Starship as my prompt.

Neovim is my general purpose text editor. I love it. Check out my dotfiles to see what plugins I have installed.

Surfin’ the Web

For browsing, I use Arc and I love it.

I really like Hypothesis for annotating web pages.

Reading, Writing, and Listening

I use Apple Books on mobile and desktop. For podcasts I use Pocket Casts. I also use it for audiobooks when I have the actual files.

NetNewsWire is my RSS reader. I use it with nb for bookmarking. I use nb for notetaking as well. I really like it so far since it uses Git under the hood and lets me use my editor for writing.

Markdown is my preferred text format, but for more formal work, I use LaTeX.


I’ve used “25th Hour” as a dynamic wallpaper on macOS for the last couple of years.

Iceberg as my colour scheme for pretty much everything. Dank Mono is the font I use for code.