For this lesson, in addition to having Popper (last section on this page), you need to have Bash, Git, Python, Docker installed on your system. If you have completed the Software Carpentry lesson for any of these, you do not need to do the setup again. If you have not installed one or more of these, you will find instructions on how to do so below.
Bash is a commonly-used shell that gives you the power to do simple tasks more quickly.
If you are on Windows 10, we highly recommend to install the Windows
which will give you a full Linux environment. On older versions of
Windows, we recommend you download and install a linux
emulator such as MobaXterm or
Cygwin to use with Git and Docker. The commands
in this lesson assume a POSIX-compliant
Unix, so having an emulator will
allow for a better learning experience.
The default shell in all versions of macOS is Bash, so no need to
install anything. You access Bash from the Terminal (found in
/Applications/Utilities). See the Git installation
video tutorial for an
example on how to open the Terminal. You may want to keep Terminal in
your dock for this workshop.
The default shell is usually Bash, but if your machine is set up
differently you can run it by opening a terminal and typing
There is no need to install anything.
For this lesson, you will need an account at GitHub for parts of this lesson. Basic GitHub accounts are free. We encourage you to create a GitHub account if you don’t have one already. You will need a supported web browser in order to use the web interface of these services (current versions of Chrome, Firefox or Safari, or Internet Explorer version 9 or above).
For students, GitHub offers the Student Developer Pack which offers free access to some developer tools and services that you would otherwise need to pay for.
For OS X 10.9 and higher, install Git for Mac by downloading and
running the most recent installer from this
After installing Git, there will not be anything in your
/Applications folder, as Git is a command line program.
Alternatively, you can use
homebrew to install Git and many
If Git is not already available on your machine you can try to install
it via your distro’s package manager. For Debian/Ubuntu run
apt-get install git and for Fedora run
sudo dnf install git.
Git packages are available for unix terminal emulators such as cygwin. If you installed the Linux subsystem, then you can use the package manager of the corresponding distribution to install it.
In order to run the examples of this lesson, the Docker container runtime will need to be available on your machine. Please visit https://www.docker.com to download and install the version compatible with your system.
Make sure you can run the
hello-world example provided by Docker to
confirm your installation was successful. More information about
getting started and running hello-world can be found at
NOTE: Due to time constraints, we can’t provide Docker installation support. We suggest contacting your system administrator or consulting the Docker documentation and forums if problems are encountered.
Python is a popular language for research computing, and great for general-purpose programming as well. For this lesson, a minimal installation of Python 2.7 is required, which is available by default on macOS and Linux, as well as on unix terminal emulators for Windows such as Cygwin.
When you’re writing code, it’s nice to have a text editor that is
optimized for writing code, with features like automatic color-coding
of key words. The default text editor on macOS and Linux is usually
set to Vim, which is not famous for being intuitive. If you
accidentally find yourself stuck in it, try typing the escape key,
:q! (colon, lower-case ‘q’, exclamation mark), then
hitting Return to return to the shell.
An easier to use editor available on all platforms is
nano. It is available by
default on macOS and Linux.
To get started with the CLI tool, please install Popper by following the instructions on this page. Note that we have only thoroughly tested on macOS and Linux. For Windows, we recommend using Popper with the Windows Subsystem for Linux.
To get an overview and list of commands check out the command line help: