I just bought my first ever personal Mac, and I thought it was a good opportunity to document my process of setting it up, and all the things I install!
I expected to focus on the things that were difficult to install and that gave me issues throughout the process, but I can happily say that I didn't run into any issues while getting everything set up! So, here's what I did and why!
I use Chrome pretty exclusively, and I have for a while. It's developer tools are great. I struggle on Safari, so this is the first thing I got set up! I just downloaded it through Safari. I synced my settings and favorites by signing into my G-Mail account.
Spectacle is a window management tool so that you can use keyboard shortcuts to move around windows on your monitor. I have been using this for awhile, and I'm completely dependent on it -- I really struggle to navigate computers without it to be honest! This one was important! I also downloaded this one through the browser, I wanted it set up before I did anything else.
Homebrew is a package manager you to install stuff really easily on MacOS. I honestly couldn't imagine getting anything installed without it at this point.
Here's the command to install it:
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
rbenv for setting up Ruby environments. It allows you to easily switch between versions, and set them for different projects. I set my global Ruby version to
2.5.1 which is the version
$ brew install rbenv
I then added
eval "$(rbenv init -)" to my .zshrc (which would be your Bash Profile if you don't use Zsh). This just loads rbenv automatically whenever I open up my terminal.
$ rbenv install 2.5.1 $ rbenv global 2.5.1
Python was my first programming language, and it is still the one I have the most professional experience with. There are a lot of ways to get Python installed, but I personally prefer installing it without Anaconda. I find that I have fewer installation issues down the road. It also automatically installs pip (the Python package manager) so I don't have to worry about setting that up down the road.
I also installed IPython right away since I use that pretty much every day for testing pieces of code.
$ brew install python3 $ pip3 install ipython
The third language to set up is Node. This one is usually not too bad, I haven't had too many Node installation issues in the past.
$ brew install node
I've been using Visual Studio Code as my text editor for a while, and I obsessed with it. I have a full post on my setup.
brew to install it, though for applications you want a desktop icon for, you add
cask on, and it will do that for you!
$ brew cask install visual-studio-code
Git is pretty important; it's definitely a must install! I again installed it through HomeBrew.
$ brew install git
I also set up a global .gitignore so that certain files are always excluded from version control.
Then, I set it up so that I use Visual Studio Code instead of Vim for Git.
$ git config --global core.editor 'code --wait'
I also set up my GitHub SSH keys so that I don't have to type in my password all the time.
I use the Fira Code font for both my terminal and VS Code. I love the ligatures and how it looks!
$ brew tap caskroom/fonts $ brew cask install font-fira-code
I use Sketch for all of my design work -- here's a little bit more about my work flow.
$ brew cask install sketch
I use Zsh with ITerm2 for my terminal setup. You can read all about that here! I installed ITerm2 with Homebrew. Zsh comes installed on Macs, though I used oh-my-zsh to finish the setup process.
$ brew cask install iterm2 $ sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
I also installed Fantastical2. It is an improved Google Calendar that allows you to sign in with multiple accounts and view all of your calendars as once. For me, this is critical since I have work, blog, and personal calendars. I accidentally double booked myself once by looking at the wrong calendar, so I'm very careful about checking all of them now!
Even though Slack is mostly for work, I also have a couple organizations that are social, so I have those on my personal computer as well. They are mostly the ones for meetups in my area. I again used Homebrew to install it.
$ brew cask install slack
This whole set up took very little time and went super smoothly. I've had a lot of installation issues in the past, so I was super surprised, to be honest! Feel free to tweet me your favorite apps that I should install!