Setting up a new MacBook Pro / by Joseph Palumbo

Let's start with the bad news first...

If you're like me and don't care for the new Touch Bar variety of MacBook Pros, you were probably unnerved by the fact that Apple no longer has the 13-inch Retina MacBook Pro available on their site. 

 A screenshot taken of https://www.apple.com/shop/buy-mac/macbook-pro/13-inch on December 26, 2017. The Retina MacBook Pro is not listed. 

A screenshot taken of https://www.apple.com/shop/buy-mac/macbook-pro/13-inch on December 26, 2017. The Retina MacBook Pro is not listed. 

Does this mean they're doing away with the rMBPs altogether? 

I currently have a 13-inch rMBP (Early-2015) that I bought "maxed out" when Apple introduced the new Touch Bar MBP. I bought it thinking Apple would immediately discontinue the previous model and I wanted one that was "future proofed" in hopes of staving off the inevitable need of buying one of the new models. 

I was happy to see Apple kept the Retinas around, but now that the 13-inch model is gone, it might be only a matter of time before the 15-inch model is EOL'd too. 

My laptop needs have changed since I bought the 13-inch. I've been thinking about upgrading to a 15-inch model specifically for more mobile screen real estate, but held off because it was a necessity. Now with the disappearance of the 13-inch, the EOL of the 15-inch might be on the horizon. So, much to the chagrin of my credit card, I bought a 15-inch MacBook pro with the highest specs available:

  • 2.8GHz quad-core Intel Core i7
  • 16GB RAM
  • 1TB SSD

Merry (unexpected) Christmas to me 🎄🎅🏻

I'm OCD about my computer

Have you ever looked at someones screen and see files and folders scattered all around their desktop?

 The stuff of nightmares 

The stuff of nightmares 

That stuff makes my skin crawl.

I'm super OCD about the setup and organization of my computer. Probably because I like things organized and structured in general, but more so because I work (and live, to some degree) on my laptop.

It's my primary tool. It's my virtual office. I need it to be organized and efficient. I need to be able to find what I'm looking for when I need it. I need it to be predictable and intuitive, like a great sidekick. So over the decade of almost exclusive Mac-use I've become very opinionated about how a new Mac should be setup. These opinions are suited to my needs, wants and biases, but based on what I've seen on other people's computers, I think some of you could benefit from a few of my basic guidelines. 

So here it is. For all of you who just got new computers (Mac or otherwise), I'm going to document, in as much detail as possible, on how I go about setting up a new computer right out of the box. 

Why not just migrate?

That's a fair question. After years working at the Genius Bar I'm of the opinion that too many things can go wrong when migrating data from an old computer to a new one - even if they're running the same version OS. Preferences can get corrupt. Programs can not function properly on the new machine. Even though it's easy, it's just not worth it to me. 

On top of that, I just prefer to start "clean" with a new computer and bring over only what I know I need. I tend to own a computer for at least a couple of years. In that time my peripherals and software needs change. By constantly migrating from computer to computer I'm bringing over drivers and software from that Epson Inkjet printer that I threw out in 2010. No thanks. I like to keep my software as minimal as possible. 

Ok, now back to business. 

The Setup

Run Updates

It's a necessary evil, but you've gotta do it. 

Initial System Configuration

Now that updates are all installed, let's dig into Preferences and make some necessary changes...

Let's start with the Dock

 Having "everything" in my Dock is too cluttered. 

Having "everything" in my Dock is too cluttered. 

I prefer to take everything out of my Dock. The advantage? I can always tell what Apps I have open because they're in my Dock. 

 When you remove everything from your Dock, you can always see exactly what Apps are open. 

When you remove everything from your Dock, you can always see exactly what Apps are open. 

In fact, I rarely launch Applications from my dock, so I tend to keep it hidden. 

 Maximize your screen real estate.

Maximize your screen real estate.

Adjust Resolution

And speaking of screen real estate, I tend to use the highest resolution possible, at least while my eyes are still good. 

display pref.png

Keyboard

A couple of things with the keyboard. First, make sure you allow "Full Keyboard Access". This allows you to tab all over the display. 

 Keep your fingers on your keyboard

Keep your fingers on your keyboard

Secondly, there are a number of custom keyboard shortcuts that I use. It's a feature that not many people use in MacOS, but as long as it's an option/control/setting that appears in an app's menu bar, you can map it to a keyboard command. 

For example, I like to quickly toggle between Navigator and Light Table view when I'm making a Keynote presentation. 

keynote view menu.png

But there isn't a keyboard shortcut for that out of the box. 

However, I can add my own keyboard shortcuts using the Shortcuts option in Keyboard preferences. 

Before...

app shortcuts.png

After...

Screen Shot 2017-12-26 at 4.51.58 PM.png

Going a little deeper

There are a couple of other customizations I like to do that aren't available in System Preferences. 

Configuring Screenshots

By default, Mac OS will place screenshots (⌘- Shift - 4) onto your desktop. This can get unruly very quickly. To keep them organized and handy, I configure MacOS to store screenshots in ~/Pictures/screenshots by running this command in Terminal.

$ defaults write com.apple.screencapture location ~/Pictures/Screenshots

I then place that folder in my Dock and sort them by Date Added to ensure the most recent ones are at the top. 

 This ensures I'll always have quick access to my screenshots. 

This ensures I'll always have quick access to my screenshots. 

Secondly, MacOS saves ccreencaptures as lossless PNGs. While the quality is great, these can take up a lot of space. I change the file type to JPG by running the the following command: 

$ defaults write com.apple.screencapture type jpg

$ killall SystemUIServer

Here's a great article to learn about how to configure MacOS Screencapture

First Apps First

Not all apps are created equal. Some of them definitely require priority boarding in order to expedite the setup. Here are the "First Class" apps that I always install first. 

1Password

I keep all of my passwords and sensitive information in 1Password. This includes keys for applications yet to be installed. 

Dropbox

Admittedly, with all of the options for cloud storage, including App-specific storing and syncing, I've become a little tepid about Dropbox and it's high price tag. But I've used it for years and it's become a useful archive for all sorts of documents and photos. I also use it to sync data across a few of my apps. 

Alfred

Not only is Alfred one of the first things I install, I switch the keybindings to launch it instead of Spotlight when I press ⌘-Spacebar. Spotlight is mapped to ⌥-Spacebar. 

Alfred will sync most of its settings using Dropbox

I can write an entire long form post on why and how I use Alfred, but that is a story for another time. 

TextExpander

Much like 1Password, TextExpander holds a number of snippets that have become hardwired into muscle memory. 

Xcode

I use Xcode to build iOS apps, but it's also required to install Homebrew. It also install git which I use to import all of my projects and finished tools from Github. 

Terminal

I spend an astonishing amount of time in Terminal, so I'm particular how I have it setup. Here's a basic workflow of what I do in Terminal when setting up a new Mac. 

  1. Import SSH keys
  2. Import .bash_profile 
  3. Install pip
  4. Install Homebrew
  5. Using Homebrew, install...
    1. tmux
    2. htop
    3. AWS CLI (Don't install it from AWS' documentation) 

Applications

In alphabetical order...

Coda 2 - Still my favorite environment for web development
ColorSnapper2
DaisyDisk - Amazing beautiful and useful app for determining what's taking up disk space
Divvy - Windows management
Evernote - Notes going back for years
Firefox
Firefox Developer Edition
Google Chrome
Kindle
Mac-tracker
Postman
Python 3.6
Safari Technology Preview
ScreenFlow
Skitch
Spotify
Tor Browser
Transmission
Transmit
VLC
VMware Fusion
Visual Studio Code
VyprVPN
duet

Bootcamp and Virtual Machines

Using VMWare Fusion I install Linux Mint and Kali Linux as virtual machines

One of the last things I do is install Windows 10 via Bootcamp giving it 120GB of drive space on my SSD. 

What else did you expect?

That's it. Not sure what else you expected.

I wouldn't really call the an exhaustive description of how I set up a new Mac, but it's certainly not lazy either.  

How do you do it? 

I'm such a fan of sites like Uses This and The Sweet Setup. If you've got anything special you do for your computer (Windows, Mac, or Linux). I'd love to hear about it.