In this post, I’ll share the key tools and configurations I use when setting up a new macOS environment for software engineering.
I’m a fan of Firefox and a bunch of other tools, but I’ll keep this to developer-related tools.
I believe it is better than the built-in Terminal. Probably.
Configure the following shortcuts from this tutorial.
⌥ ⌫for deleting a word
⌥ ←for going back a word
⌥ →for going forward a word
Set the Login command in profile to open
tmux or reuse an existing session. When I accidentally close the window, this keeps me from terminating a long-running program.
Managing passwords and keys is 100x easier with 1Password and they’re more secure than a lot of the other options out there. Their SSH key management and git signing support is a must-use.
I used to call the folder
~/Development, but if you call it “Developer”, then Apple will reward you with a special folder icon.
If you also take a lot of screenshots, you’ll want to see this post about setting up a screenshot folder.
macOS changed the default from
zsh in 2019 so if your previous computer was an Intel-based MacBook you’re in for a very-similar experience.
Oh My Zsh
It is a framework for managing shell plugins.
The one-stop-shop for managing Java/Python/Ruby/whatever versions. If you use Ruby, I recommend enabling the legacy versions so you can use the other version manager
It is the most popular way to install command line tools.
It makes my command prompt look nice.
Command line tool for jumping back in to a project you were working on. For example, if I type
z ad, it drops me back into the Advent of Coding project.
I also like to keep this command handy for clearing out
git branches that have been merged to
This post was more for me to remember what I use than for others, but I hope some folks found it useful anyway!