University of British Columbia

Oct 18-19, 2012
9:00 am - 4:30 pm

New! Setup instructions have been added to this page. Please make sure you go through them the day before the boot camp starts, and mail us if you have problems.

What: Our goal is to help scientists and engineers become more productive by teaching them basic computing skills like program design, version control, testing, and task automation. In this two-day bootcamp, short tutorials will alternate with hands-on practical exercises. Participants will be encouraged both to help one another, and to apply what they have learned to their own research problems during and between sessions. Attendants are offered online office hours: regular events to get one-on-one help from Software Carpentry instructors, online.

Note: we are running two boot camps simultaneously, one using Python and another using R. Please be sure to register for the one you want.

Who: The course is aimed at postgraduate students and other scientists who are familiar with basic programming concepts (like loops, conditionals, arrays, and functions) but need help to translate this knowledge into practical tools to help them work more productively.

Content: The syllabus for this boot camp will include:

Contact: Please mail for more information.

Required software

You should ensure the following software is installed on your laptop before you arrive so that we can get started promptly:

If you run into any trouble, please mail for assistance.


The easiest way to get Python and all the scientific packages you'll need is the Enthought Python Distribution. Download EPD Free, install, and you're done. If you want to be more complicated:


R can be downloaded here. We will use a few packages in the boot camp, including lattice, plyr and data.table. Once R is installed, you can get these packages by typing the command "install.packages(" at the prompt, and following the instructions. Please be sure to install the knitr package this way; you will also need pandoc for the lesson on reproducible research.

A popular text editor for R is R-Studio. Alternatively, if you want an editor that can handle multiple languages, you might want to consider ESS (Emacs Speaks Statistics), available as a bundle here.


If you are on Linux or Mac, you already have Bash (it's what runs in a terminal window).

On Windows, you should install Cygwin, which provides the Bash shell and many other Linux command-line tools. You will have to ask for the svn package to be installed (either at install time or by rerunning the Setup program later on), as Subversion is no longer part of the default installation.

Firefox with SQLite Manager

You can install Firefox from the Mozilla web site. The SQLite Manager add-on can be installed through the "Add-ons Manager" in Firefox.

A Text Editor

If you use Linux, you probably already have a favourite text editor. Emacs, Vim, and Nano are popular choices, but there are many others. On Windows, you can use the Nano editor that comes with Cygwin, or Wordpad (which comes with Windows). On a Mac, you can use TextEdit (which comes pre-installed).


Testing the installed software

We recommend that you try the following simple tests to ensure that everything is installed and working correctly before the course starts.