The Hardware
Recommendations
Macbook Pro 15″
Anything between 2012-2015 will perform good with a Quad Core CPU (i7) and 16GB of RAM.
Regarding the latest 2016 model, you can find out why MacBook Pro 2016 isn’t loved by developers .. yet. Please comment if this turns out as an advantage in the end, but I doubt..
Mac Mini
The 2012 model is the only one offering the quad core i7 cpu. Memory upgrade is possible up to 16GB even if oficially max 8GB are said to be supported.
The Software
There are many ways to work as a web developer on macOS. You can use the already built-in apache web server, you can use the MAMP stack, or use a virtual environment. I prefer the virtual environment for the big advantages of portability, disaster recovery, server consolidation, etc.
Starting from a clean install of MacOS Sierra, this is how & what I work with for web development:
- Google Chrome
- PHPStorm
- Vagrant
- VirtualBox
- HomeBrew
- iTerm2
- Fish
- Fish Plugins, Shell Themes, Terminal settings
- Sequel Pro
Homebrew
- Homepage: https://brew.sh
- Quick install:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Vagrant
- Download: https://www.vagrantup.com/downloads.html
- Install host manager & auto network plugins:
vagrant plugin install vagrant-hostmanager vagrant-auto_network
VirtualBox
Fish
- Homepage: http://fishshell.com/
- Install:
brew install fish
- Setup:
You will need to add: /usr/local/bin/fish to /etc/shells. Then run: chsh -s /usr/local/bin/fish to make fish your default shell.
Fish Plugins, Themes, Fonts
- Oh-My-Fish plugin:
curl -L https://get.oh-my.fish | fish
- Oh-My-Fish bobthefish theme:
omf install bobthefish
- Powerline terminal fonts:
- Link: https://github.com/powerline/fonts
- Quick install:
# clone git clone https://github.com/powerline/fonts.git # install cd fonts ./install.sh # clean-up a bit cd .. rm -rf fonts
- iTerm2 users need to set both the Regular font and the Non-ASCII Font in “iTerm > Preferences > Text” to use a patched font
Other settings
Git global config
git config --global user.name "yourname"
git config --global user.email your@email.com
Console default editor
ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/subl
export EDITOR='subl -w'
In the end
This is a living article, it will be updated as I go / remember other things that I missed and worth mentioning.
These should be enough to get you started on a new machine, be able to clone a remote vagrant box and up it, have a nice shell and terminal, an IDE and a DB manager.