Stuff I use – macOS

I’m ruthless when it comes to the apps and tools I use. I could have used a piece software for a decade but if it becomes unmaintained or lags behind an alternative I’ll drop it. I’ll also try anything out in the name of a potential productivity or minimalism improvement. Here are the applications and software that have made the cut. For now.



I used the indispensable Homebrew package manager to install most of the software on this list. I don’t like the way it tries to update everything before running the command I want it to. Otherwise it’s perfect.

Karabiner-Elements + Hammerspoon

I use these in a few ways integral to how I work. I bind CapsLock to ^++ and use it to launch all my apps with a single keyboard shortcut. When pressed alone it counts as a single ESC press. I’ve replaced the use of various window management tools over the years with a home-baked approach cobbled together in Lua.


I’m not sure how it’s happened but my +TAB muscle memory has been miscalibrated to fail me almost every time. It could be because I often use +W to hide an application window which then makes it impossible to un-hide from the +TAB.

I found AltTab last week and it’s a game-changer. Another Open Source tool, the aim of the software is to replicate the Windows Alt-Tab pane but it’s the most feature-complete and responsive application switcher I’ve ever seen.

The thumbnail previews are nice but overall my favourite feature is preventing the pane from showing applications which don’t have any visible windows.

In defiance of the name I’ve mapped it to +TAB and I’m never looking back.

Keeping You Awake

Useful for when you want to keep a recipe or similar open without the screen dimming after a while.


I used standalone licenses of 1Password for over a decade but couldn’t bring myself to finally stump for a subscription to an app that seems to be getting worse by the year. BitWarden has been an admirable replacement that syncs across all my devices (macOS, iOS & Android) with minimal fuss. After using it for a few months I bought a modestly priced subscription.

Menu Bar

Battery Indicator

A customizable replacement for the stock battery indicator. I can’t remember the core reason I started using this but it’s nice.


This helps me keep track of a number of timezones and has a dispensable keyboard shortcut for quick-at-a-glance checks. Just like Battery Indicator it’s very customizable and works well.


The product design restraint on this tool is remarkable: it has a single feature.

Aware keeps a running total of how long you’ve been actively using your Mac. That’s it. It doesn’t force you to take a break or shame you for getting lost in some code, it’s just a simple reminder of the time you’ve invested in the current task.


I used to use Vanilla but Dozer is an actively-maintained Open Source alternative. It allows me to hide all the menu bar cruft that I don’t always need visible.

I’m not sure why I insist on making the menu bar as clean as possible but this helps me with my #goals.



After extensive evaluation of other notetaking tools I always slip back to Workflowy — and for good reason. The multi-platform app now houses, as a non-exhaustive list, my many todo lists, nodes, writing outlines, meal plans & newsletter planning.

The keyboard shortcuts are a little janky and the iOS experience leaves a lot to be desired but the reliability, collaboration, minimal interface & longevity puts it ahead of alternatives.

Firefox (Nightly)

The slow decline of the multi-platform browser landscape is depressing. Despite some missteps, Mozilla’s Firefox is still a competent choice and Nightly has a sweet logo.

This could be a separate post but my “couldn’t live without them” add-ons are: uBlock Origin, Intention, Hide Feed & Auto Tab Discard.


There are thousands of “text expanders” or snippet tools out there. My pick is aText for the one-time cost and flexibility. This has saved me countless hours of typing: any text I copy-paste more than once goes into aText.


Sublime Text

After a few years of using VSCode I’m back using Sublime as my daily driver. The visual cruft and overstuffed sidebars of VS Code were becoming a little too much – I missed the simplicity and speed of a native text editor. There’s more setup required and the plugin ecosystem is a little stale but it feels good to be back.

Sublime Merge

My use of Sublime Text for years led me to use Sublime Merge on release. I love the keyboard-oriented interface and native app experience. As a mediocre git user who often resorts to fresh clones to avoid reading the docs Sublime Merge is a dream to use.

Is it necessary? No. Does it feel nice to use good software? Yes.


This provides an efficient, iterative runtime scratchpad for NodeJS/JavaScript without making me spend my entire life in Dev Tools. RunJS helps me be a little more atomic about my development and is the closest I get to writing tests for my personal projects.


I’ve been seduced by the raw speed of this GPU based terminal emulator. I didn’t notice the latency when typing with iTerm2 but now it’s painfully obvious.