University of British Columbia, Vancouver, BC
May 12-13, 2014
9:00 am - 4:30 pm logo

General Information

Software Carpentry's mission is to help scientists and engineers become more productive by teaching them basic lab skills for computing like program design, version control, data management, and task automation. This two-day hands-on bootcamp will cover basic concepts and tools; participants will be encouraged to help one another and to apply what they have learned to their own research problems.

This workshop is aimed at graduate students, post-docs, and other researchers intending to do workshops this summer through To register, please visit this page on the web site.


Instructors: Jenny Bryan, Shaun Jackman, Andy Leung

Where: University of British Columbia, Vancouver, BC. Get directions with OpenStreetMap or Google Maps.

Classroom: Henry Angus Room 434, room specs, Angus building via UBC Wayfinding

Requirements: Participants must bring a laptop with a few specific software packages installed (listed below).

Contact: Please mail for more information.


Students can go here for a more detailed syllabus.

Monday May 12 Tuesday May 13
8:30 - 9:00 am light breakfast available light breakfast available
9:00 - 10:15 am Basics of the R working environment and language Writing functions, Intro to data aggregation
10:15 - 10:45 am* light refreshments available light refreshments available
10:45 am - 12:00 pm Care and feeding of R objects Conclusion of data aggregation, including plyr; The shell, focus on file inspection and manipulation
12:00 - 1:00 pm * lunch on your own lunch on your own
1:00 - 2:15 pm Version control, introduction The shell cont'd and Version control, cont'd
2:15 - 2:45 pm * light refreshments available light refreshments available
2:45 - 4:30 pm Making figures with ggplot2 Creating workflows and automated pipelines
* times approximate, but there will always be two sessions before lunch and two after


To participate in a Software Carpentry bootcamp, you will need working copies of the software described below. Please make sure to install everything before the start of your bootcamp.

TL;DR version: make sure you have the Bash shell, Git, R, and RStudio. For detailed instructions, go here.

The Bash Shell

Bash is a commonly-used shell. Using a shell gives you more power to do more tasks more quickly with your computer.


Git is a state-of-the-art version control system. It lets you track who made changes to what when and has options for easily updating a shared or public version of your code on


R is a programming language that is especially powerful for data exploration, visualization, and statistical analysis. To interact with R, we will use RStudio, an interactive development environment (IDE).