This guide will help you setup a software development environment on Mac OS X 10.9 Mavericks and above. By the end, your computer will be configured with the same state-of-the-art tools used by professional software developers.
This guide is mostly compatible with older versions of Mac OS X. So follow along as best you can while Googling any problems you come across.
Included in Mac OS X is the Terminal—an app that runs a Unix shell.
A Unix shell (often referred to as a “terminal”) is a command line user interface between you and your computer’s operating system. In a Unix shell, you can type in commands that tell the computer to do many things: navigate to files and folders, install and run programs, and change configurations. Programmers rely on their Unix shells to do lots of work, quickly and easily.
You’re probably most familiar with the graphical user interface (the “GUI”) of your computer’s operating system. Those are the boxes, windows, and menu items that you click on with your mouse. While that’s technically a shell too, most programmers think of the textual, command line interface when they hear to word shell.
Let’s get our hands dirty and have some fun. First, use Spotlight to launch the Terminal app.
Once launched, you’ll see something like this.
Here’s a quick break down of what you’re seeing in the Terminal app.
Component | Description |
---|---|
Wed Jan 28 08:12:49 |
Date of your last login |
ttys003 |
Name of your last terminal session |
photon |
Name of your computer |
~ (home directory) |
Name of your working directory |
ryansobol |
Name of your user account |
$ |
Prompt symbol |
Any characters you type will appear after the $
prompt symbol. Go ahead and type uname
. After pressing the Enter key, you’ll see something like this.
Here’s what happened:
uname
which appeared after the prompt.uname
.uname
program and handed it control over the Terminal.uname
program told the Terminal to display the word Darwin
.uname
program exited and handed control of the Terminal back to the shell.Simply stated, a Unix shell works in a read-evaluate-print loop or REPL.
The default profile for the Terminal uses small, black text on a white background. Boring! Let’s change that.
Terminal > Preferences
menu item.Settings
Pane.Pro
profile, and click the Default
button. Now, every new Terminal window will look similar to this.