My 2024 MacBook Setup for Software Development

Here’s an insight into my setup, workflow and tools to build software

Anthony Gordon
5 min readJun 21, 2024

It’s been over a year since I published a Medium story about my MacBook setup! It was a popular read so here’s my 2024 update.

16-inch MacBook Pro M1 Max

2024’s been a big year for software! I’ve discovered some new tools to keep me productive as a developer. I’ll share everything that’s changed.

My Work Machine 💻

I use a 16-inch MacBook Pro M1 Max, this computer has been incredible! It’s by far the best MacBook I’ve owned, I don’t foresee myself changing it anytime soon. Performance is still amazing, it’s able to complete tasks without making a sound and the battery life is great.

The only con to using this machine is the weight, it’s heavy. The 14-inch would suit people who need to travel with their work but I prefer the 16-inch for software development.

I almost upgraded to an M3 Pro

I tried the M3 Pro machine at the start of the year but decided to keep my M1 Max. I was only seeing a 3/5 seconds difference in compile times so it wasn’t really worth the upgrade.

14 inch MacBook Pro M3 Pro vs 16 inch MacBook Pro M1 Max

Maybe the £3,599.00 M3 Max would have been a better machine to test against but it’s very expensive!

My Favourite IDEs 🛠️

I use 3 different IDEs, 2 primarily for web + package development and 1 for mobile development. Let’s take a look at those tools.

Visual Studio Code — Full Stack Projects

When working on bigger projects, I will rely on Visual Studio Code. I’ve been using it with copilot to maintain and build new projects. No complaints, it’s an amazing IDE!

Sublime Text 4 — Small Tweaks in my Projects

Using Sublime Text 4 is still amazing, it’s definitely the fastest text editor I use and the keyboard shortcuts make manipulating text super simple.

Android Studio — Mobile App Development

I use Android Studio for building my Flutter projects because of the UX. Its clean, simple UI makes it easy for me to stay focused while coding.

Software Tools 🧰

My daily tools haven’t changed much but I have discovered a few new ones that I’ll share.

Laravel Valet — Running websites locally

I use Laravel Valet because it’s easy to configure. If you build Laravel sites I’d recommend it! You can also try Laravel Herd.

Sequel Ace — DB Client

Most of my projects use PostgreSQL or MySQL and I find Sequel Ace to be the best way to view my databases. It’s a free download from the App Store.

Red 2 — Redis Client

If your projects use Redis, Red 2 is a great client to inspect your data. It’s free on the app store too.

Termius — SSH & SFTP Client

When I need to manage servers, I use Termius! This tool is a game changer, it’s easy to set up and helps organize your servers.

Bear — Note taking

I use Bear instead of the Apple Notes app simply because of the search functionality. I’ve found that Apple Notes isn’t always able to find the contents for what I’m searching for but Bear does.

iTerm 2 + Oh My Zsh — Terminal

I’ve been a user of both for a while now. It takes about an hour to set up properly but once you’ve added all your plugins and fancy theme it works great. Check out this video from Nuno Maduro to make your terminal look amazing https://www.youtube.com/watch?v=27Fi2RcdBFQ

DBngin — Database Management Tool

You can create new PostgreSQL, Redis or MySQL instances using DBngin. I set it to run my services automatically on startup, it’s a nice tool.

Postman — API Testing

When I need to test an API endpoint, Postman is my go-to tool. It’s free to get started and they have a MacOS app.

Code to Image Converter — Sharing Snippets

I use 10015 to generate images for code snippets if I need to share them on social media.

JSON Editor Online — Viewing & Editing JSON

I’ve been using this site for over 7 years! It’s great for beautifying JSON payloads and inspecting data.

Regex101 — Testing Regular Expressions

This is a popular site for creating regular expressions. I think they nailed the UI, it’s easy to use and one of my favourites.

How I Stay in the ‘Zone’ ⌨️

Staying in the ‘zone’ is one of the hardest things to master as a programmer. It’s important that we can create and fix things fast while not feeling burnt out.

Over the years I’ve found a few hacks to keep me productive, here’s the list:

  • Don’t spend all day listening to music (limit yourself to 2/3 hrs a day)
  • I usually take 2 naps throughout the day. The first one’s around noon and the other is around 6 pm
  • Have a todo list for what you want to achieve each day
  • Drinking water first thing in the morning
  • Stay off social media while working
  • If you’ve been stuck on a bug for more than 1 hour, take a break and get some fresh air. Stress often leads to chaos.

Last thing… when I wake up, I’ll try to learn 1 or 2 new things and it makes me a little less average than I was the day before. Keep learning, connect with the right people and it’ll help keep you in the ‘zone’.

Here’s a playlist I’ll often listen to for coding.

Closing out

The MacBook Pro M1 Max is still a beast in 2024. I‘ve only heard the fans 3 times since owning it. I’m sure the next M4 Chips will be amazing in the MacBook too but I think most developers can save money using an M1 Max or M2 machine.

Thanks for reading,

Anthony Gordon

https://linktr.ee/agordn

--

--