Michigan State University

Biomedical and Physical Sciences Building 567 Wilson Road Room 1441 East Lansing, MI 48824 (Seminar Room)
Sep 30 Oct 1, 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: Jory Schossau, Leigh Sheneman, Luiz Irber

Helpers: Emily Dolson, Josh Nahum, Eric Bruger

Who: The course is aimed at graduate students and other researchers. Those with little or no experience are encouraged to attend as the primary intended audience. You may also attend part if not all of the workshop applies to you.

Where: Biomedical and Physical Sciences Building 567 Wilson Road Room 1441 East Lansing, MI 48824 (Seminar Room). Get directions with OpenStreetMap or Google Maps.

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

Contact: Please mail jory@msu.edu for more information.

Notes from the workshop: Archived version


Schedule

Day 1

09:00 Welcome and Installation
09:30 Shell Basics
10:00 Data Management
11:00 Data Inspection
11:30 Introduction to IPython Notebook
12:00 Lunch break
13:00 Python First Steps
14:00 Functions
14:30 Coffee Break
15:00 Importing Data

Day 2

09:00 Importing Data: Pandas
10:30 Coffee Break
10:45 Modularization and Documentation
12:00 Lunch break
13:00 Advanced Command Line (scripts and utilities)
14:00 Advanced Topics
14:45 Coffee Break
15:00 ICER and local Compute Resources

Syllabus

(Detailed Syllabus Coming Soon)


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

The Bash Shell (the Unix-style command line)

Bash is a commonly-used shell. Using a shell gives you more power to do more tasks more quickly with your computer. By the end of the workshop you'll be able to say “This is UNIX, I know this!” just like the girl in Jurassic Park!

Python/IPython Notebook

Python is becoming very popular in scientific computing, and it's a great language for teaching general programming concepts due to its easy-to-read syntax. We teach with Python version 2.7, since it is still the most widely used. Installing all the scientific packages for Python individually can be a bit difficult, so we recommend a hybrid installer which does most of the work for you.

I don't know how!

If you're uncomfortable or get stuck on any of the steps, just try to go ahead and download all the files in the links so you at least have those handy. Then, show up a bit early if you can to the workshop and we'll help you out.

Windows

Python

  • Download and install Miniconda for Python 2.7 (not 3). If you don't know if you need 32-bit or 64-bit, then choose 32. We'll assume you've downloaded to your Downloads directory.
  • In the following steps you will install Miniconda by executing the downloaded file and accepting all defaults until it’s done.
  • Open a terminal. To do this, press the WINDOWS key and R at the same time to open the RUN dialog box. Type 'cmd' without quotes and press enter.
  • Install the necessary python packages. Type the following (or copy paste using right-click), again without quotes 'conda install ipython-notebook numpy matplotlib pandas' and press enter.
  • You will be presented with a list of packages installed automatically as prerequisites. Press enter.
  • Keep this terminal open for later.

Git Bash

Install Git for Windows by download and running the installer. This will provide you with both Git and more importantly Bash in the program called Git Bash. Git Bash is your UNIX-style command line.

Software Carpentry Installer

This installer requires an active internet connection

After installing Python and Git Bash:

  • Download the installer.
  • If the file opens directly in the browser select File→Save Page As to download it to your computer.
  • Go back to your open terminal and make sure you're in your home directory. Type without quotes 'cd %HOMEPATH%' press enter. Now navigate to the location of the download using the 'cd' command. This is typically in My Documents\Downloads. So 'cd "My Documents"' enter, then 'cd Downloads'. The double quotes are necessary because there's a space in "My Documents". If you're unsure what folders are available from your current location, use 'dir' to list folders available from your current location.
  • Run the downloaded Software Carpentry Installer python script. Type 'python swc-windows-installer.py' enter. You can close the terminal now.

Mac OS X

Python

Although it's already installed, we need a version of python amenable for all the other things we're going to be installing. For this reason please install the following version of Python.

  • Download and install Miniconda for Python 2.7 (not 3). If you don't know if you need 32-bit or 64-bit, then choose 32. We'll assume you've downloaded to your Downloads directory.
  • In the following steps you will install Miniconda by executing the downloaded file and accepting all defaults until it’s done.
  • Open a terminal. To do this, open spotlight, and type 'terminal' without quotes and press enter.
  • Navigate to your downloads directory. Usually 'cd Downloads' enter.
  • Make sure the Miniconda install script is definitely in this directory 'ls *conda*' enter. You should see the full filename.
  • Now make the script executable. 'chmod +x Miniconda' TAB (the tab key lets you auto-complete filenames up to uniqueness) enter.
  • Now run the script. './Miniconda' TAB enter (again, TAB for auto-complete).
  • Follow the instructions and press enter if there is a yes no question aside from the license agreement, for which you have to type 'yes'. That should have finished.
  • Close and reopen the terminal.
  • Install the necessary python packages. Type the following (or copy paste using right-click), again without quotes 'conda install ipython-notebook numpy matplotlib pandas' and press enter.
  • You will be presented with a list of packages installed automatically as prerequisites. Press enter.

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.

Linux

Python

Although it's likely already installed, we need a version of python amenable for all the other things we're going to be installing. For this reason please install the following version of Python.

  • Download and install Miniconda for Python 2.7 (not 3). If you don't know if you need 32-bit or 64-bit, then choose 32. We'll assume you've downloaded to your Downloads directory.
  • In the following steps you will install Miniconda by executing the downloaded file and accepting all defaults until it’s done. (reminder: you may need to use chmod)
  • Open a terminal.
  • Navigate to your downloads directory. Usually 'cd Downloads' enter.
  • Make sure the Miniconda install script is definitely in this directory 'ls *conda*' enter. You should see the full filename.
  • Now make the script executable. 'chmod +x Miniconda' TAB (the tab key lets you auto-complete filenames up to uniqueness) enter.
  • Now run the script. './Miniconda' TAB enter (again, TAB for auto-complete).
  • Follow the instructions and press enter if there is a yes no question aside from the license agreement, for which you have to type 'yes'. That should have finished.
  • Close and reopen the terminal.
  • Install the necessary python packages. Type the following (or copy paste using right-click), again without quotes 'conda install ipython-notebook numpy matplotlib pandas' and press enter.
  • You will be presented with a list of packages installed automatically as prerequisites. Press enter.

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.