New Macbook Setup for Developers
Macbook DX Dev

New Macbook Setup for Developers

Scott C. Krause | Wednesday, Mar 24, 2021

MacBook Setup for the Pros 2021

Setting up a new MacBook for software development can be tricky. Here I provide the simple basics to get you started.

I realize that some developers may be migrating from Windows to OSX for the first time and that can be difficult. Especially when onboarding as a new employee. Every development environment is unique but the main apps that you want working fast are Finder, Git, Node, NPM, Java, Scala, Shell, VSCode and xCode.

Whenever possible I will provide a verification step to make sure the command worked. I’ve also included a list of the most productive Chrome extensions and VSCode extensions. I will try to keep these instructions up to date with the most recent changes.

Default Mac Shell

nano ~/.zshrc

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/" ] && \. "$NVM_DIR/"  # This loads nvm


Apple Command Line Dev Tools

xcode-select --install

xcode-select --version

Finder Config

chflags nohidden ~/Library
defaults write AppleShowAllFiles true
defaults write ShowPathbar -bool true
defaults write ShowStatusBar -bool true

killall Finder

Menu > Finder > Preferences [ Select Drive ]


/bin/bash -c "$(curl -fsSL"

brew --version

Chrome Browser

Visual Studio Code


Git good at Git

git clone -b BRANCHNAME --single-branch REPONAME

git config --global ""
git status
git branch
git checkout master
git pull origin master
git branch
git checkout -b temp
git checkout BRANCHNAME
git rebase master
git push origin BRANCHNAME
git status
git push origin BRANCHNAME --force-with-lease
git difftool --tool=vimdiff branch1 branch2 -- ./some/file.txt
Git Command Line


curl -o- | bash
nvm --version
nvm install --lts
node --version
npm install -g npm
mpm --version

Global NPM Packages

npm install -g typescript supervisor live-server svgo
npm install -g npm
npm list -g --depth=0
npm config ls -l
Node Version Manager

Java 8 SDK

brew update
brew tap homebrew/cask-versions
brew install cask adoptopenjdk8
brew install jenv
echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(jenv init -)"' >> ~/.zshrc

java -version
ls /Library/Java/JavaVirtualMachines
ls /Library/Java/JavaVirtualMachines/jdk1.8.0_251.jdk/Contents/Home

See Also



brew update
brew install scala brew install sbt brew install sbt@1
scala --version

Scala Build Tool

brew install sbt@1
scala --version
sbt --version
sbt clean (Optionally delete .ivy2 )
/usr/local/etc/sbtopts -mem 2048    (Optional Increase Mem)


brew update&& brew install golang
mkdir -p $HOME/go/{bin,src,pkg}

nano ~/.zshrc
export GOPATH=$HOME/go
export GOROOT="$(brew --prefix golang)/libexec"
export PATH="$PATH:${GOPATH}/bin:${GOROOT}/bin"
Node NPM Git Golang