Canadian Applied and Industrial Mathematics Society

Delta Bessborough Hotel, 601 Spadina Crescent East, Saskatoon, SK
Jun 22-24, 2014
9:00 am - 4:30 pm

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.

Instructors: Dhavide Aruliah, Ian Mitchell

Who: The course is aimed at graduate students and other researchers.

Where: Delta Bessborough Hotel, 601 Spadina Crescent East, Saskatoon, SK. Get directions with OpenStreetMap or Google Maps. Sessions will be held in the William Pascoe room.

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

Contact: Please mail admin@software-carpentry.org for more information.


Schedule

Sunday 09:00-12:00 Introduction the Unix shell and task automation (data)
12:00-14:00 Lunch break
14:00-17:00 MATLAB programming for data analysis (datascripts)
Monday 15:00-18:00 Version control with Git
Tuesday 16:00-19:00 Modular programming in MATLAB
We will use this etherpad for collaborative note-taking. Another valuable resource is the paper Best practices for scientific computing (2014).)

Setup

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

Overview

Editor

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 Mac OS X 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, followed by ':q!' (colon, lower-case 'q', exclamation mark), then hitting Return to return to the shell.

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

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 github.com.

MATLAB

MATLAB is a very popular commercial environment for scientific computing. For this bootcamp, we will assume that you have installed MATLAB already on your system in the operating system of your choice. We will assume that you have some experience in working with MATLAB (e.g., basic loop constructs, branching, functions, etc.) from which to build higher-level programming skills.

Windows

Git Bash

Install Git for Windows by download and running the installer. This will provide you with both Git and Bash in the Git Bash program.

Editor

Notepad++ is a popular free code editor for Windows. Be aware that you must add its installation directory to your system path in order to launch it from the command line (or have other tools like Git launch it for you). Please ask your instructor to help you do this.

MATLAB

As MATLAB is commercial software, you will have to arrange to have a licensed copy of MATLAB for your Windows system.

Mac OS X

Bash

The default shell in all versions of Mac OS X is bash, so no need to install anything. You access bash from the Terminal (found in /Applications/Utilities). You may want to keep Terminal in your dock for this workshop.

Editor

We recommend Text Wrangler or Sublime Text. In a pinch, you can use nano, which should be pre-installed.

Git

Install Git for Mac by downloading and running the installer. For older versions of OS X (10.5-10.7) use the most recent available installer available here. Use the Leopard installer for 10.5 and the Snow Leopard installer for 10.6-10.7.

MATLAB

As MATLAB is commercial software, you will have to arrange to have a licensed copy of MATLAB for your Mac system.

Linux

Bash

The default shell is usually bash, but if your machine is set up differently you can run it by opening a terminal and typing bash. There is no need to install anything.

Editor

Kate is one option for Linux users. In a pinch, you can use nano, which should be pre-installed.

Git

If Git is not already available on your machine you can try to install it via your distro's package manager (e.g. apt-get).

MATLAB

As MATLAB is commercial software, you will have to arrange to have a licensed copy of MATLAB for your Linux system.