DEV Community

Cover image for A Software development setup on Apple Mac
Nalaka Jayasena
Nalaka Jayasena

Posted on

A Software development setup on Apple Mac

This is my current setup- sharing for my future self and anyone else that stumbles on here.

Table of Contents

The bare necessities

The Command Line Developer Tools:

xcode-select --install
Enter fullscreen mode Exit fullscreen mode

The default installation location is /Library/Developer/CommandLineTools, you can double check with xcode-select -p. Check the contents of the usr/bin sub-directory for all the tools that this gives you.

The Homebrew package manager.

iTerm 2 - a great replacement for the built-in terminal app.

Oh My Zsh - spices up the shell.

Visual Studio Code - code editor

The development editions of Chrome and Firefox web browsers:

Note taking:

  • Evernote - great for taking a quick note on the phone and picking up from the computer
  • Typora - surprisingly good markdown editor

Communication and media:

And some miscellaneous utilities:

Back to TOC.

JavaScript

Volta is great for managing JS command line tools.

Install with:

curl https://get.volta.sh | bash
Enter fullscreen mode Exit fullscreen mode

Later when Volta needs to be updated, repeat the same command.

Install Node.js

volta install node
Enter fullscreen mode Exit fullscreen mode

Install any JS tools from NPM with volta install package-name - e.g.

volta install serve          # Serve a local directory over HTTP
volta install prettier       # Code formatter
Enter fullscreen mode Exit fullscreen mode

Later, a tool can be updated by repeating the install command.

Back to TOC.

Rust

Use the Rustup script:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Enter fullscreen mode Exit fullscreen mode

Update with rustup update

Self uninstallation is supported with rustup self uninstall

Back to TOC.

Java

Download the .dmg installer for the latest stable Java SDK from Oracle and run.

Back to TOC.

Top comments (9)

Collapse
 
donohutcheon profile image
Donovan Hutcheon • Edited

I have to use Mac for work - I really hate it. Over priced, under powered and generally awful (when compared to Linux and even Windows now-a-days). But I use Many Tricks Witch for alt-tab switching - makes my life somewhat bearable. Caveat - Its a paid app though - you would think this would be tablestakes functionality - that's Apple for you.

itermocil is also a useful tool especially if you have a whole environment of microservices you need to run in development. Being able to run Docker natively would be better but hey! Make lemonade when you have lemons :-)

Collapse
 
nalaka profile image
Nalaka Jayasena

I also moved from Linux & Windows as the daily driver to Mac, so I empathize with how you feel. I even brought some task switcher app in my early days - don't remember the name, and I don't use anymore.
The thing is, you eventually you get used to the Mac way of doing things, and then you really don't want to to go back to Linux or Windows. :)

Collapse
 
back295 profile image
Marko Korhonen

I use "dotfiles" repo approach to setup my Mac(s).

Basically Brew.sh, Oh My Zsh and from there software using Brewfile. Symlinks certain dotfiles from the cloned repo.

See it here: github.com/back-2-95/dotfiles
Does not include any secrets or private stuff.

Collapse
 
nalaka profile image
Nalaka Jayasena

Never tried this approach, which makes me really sorry that I didn't :)

Thanks to your comment, when moving to Big Sur, I will definitely use a dotfile repo instead of manually copying over my dotfiles!

Collapse
 
koistya profile image
Konstantin Tarkus

Looks good :)

Collapse
 
svasylenko profile image
Serhii Vasylenko

Why Evernote and not built-in Notes?

Collapse
 
nalaka profile image
Nalaka Jayasena

I guess personal preference- also, I use Android phones.

Collapse
 
humzakhan profile image
Humza K.

Have you tried Notion? You will drop Evernote in a heartbeat if you did :)

Collapse
 
nalaka profile image
Nalaka Jayasena

I had looked at it sometime back but didn't use it because there was a restriction on the number of blocks we can have on the free plan. But after your comment, I went back and found that they don't have that restriction anymore. So yes, you maybe right about dropping Evernote after all. I've imported all my Evernote stuff into Notion and so far it was great. The mobile apps are not as fast as Evernote but I can live with it given all the extra features that Notion has. So thanks! :)