AMOS Conference (Melbourne)

Theatre 2 (room 109), Alan Gilbert Building, University of Melbourne
Feb 14-15, 2013
9:00 am - 4:30 pm

Food: Morning and afternoon tea will be provided, but not lunch (there are plenty places on campus to buy lunch).

Program:

Thursday morning: Intro to Python (basic control structures, lists, strings, functions, etc)
Thursday afternoon: Program design and testing
Friday morning: Version control and regular expressions
Friday afternoon: Databases and wrap-up

Online follow-up exercises: go into the above topics in more detail, in addition to using the shell, matrix programming, using spreadsheets in a disciplined way, data management, and software development lifecycles.

Greg Wilson (Software Carpentry) and Mike Rezny (ARC Centre of Excellence for Climate System Science) will be delivering the content. We've also lined up a number of computing gurus from institutions including the Bureau of Meteorology, CSIRO, Monash University and the University of Melbourne, who will circulate the room and answer any questions that you might have.

Laptops: Participants are required to bring their own laptop, as the boot camp involves a mixture of lectures and hands on exercises. The lecture theatre has desk facilities where you can plug in and charge. If you don't have a laptop, don't stress, we'll pair you up with someone who does.

See below for software installation instructions.

NOTE THAT REGISTRATION FOR THIS BOOT CAMP HAS CLOSED.

Software Setup

There are certain bits of software that need to be installed on your laptop prior to attending the AMOS Boot Camp.

You should ensure that you have the software installed before you arrive at the boot camp. Preferably as soon as possible. This is particularly important so that practicals can proceed smoothly on the day and the tutors can concentrate on assisting with course content rather then installing software.

Here is a list of the software that will be required:

Please use the following check-list to see if you have the software or not. Further down this page there are software installation instructions for Windows, Mac, and Linux systems, as well as details of how to get support for installing the software prior to attending the Boot Camp.

Getting a terminal window

Most of the checks assume you're using a terminal window (also commonly called a command-line shell or terminal emulator). If you don't know what this is or how to get one then please go to our page on getting a terminal window.

Bash shell, the UNIX shell we like to use

At the prompt, enter:

$ whoami

You should be told your user name, e.g.:

mjj
http://www.gnu.org/software/bash/manual/bashref.html

A text editor for writing your code

Whatever editor you use is up to you. To see if your favourite is installed try one of the following, or just try and create a text file.

nano:

Notepad (for Cygwin users):

TextEdit (for Mac OSX users):

VI:

Emacs:

XEmacs:

Python for scripting

Any Python 2 version from 2.6 onwards is recommended. We have not yet tried Python 3 so please stick to Python 2.6 or 2.7 versions.

To check that it's installed and what version you have, at the prompt, enter:

$ python --version

You should be given a version number, e.g.:

Python 2.6.6

Now, check its behavior:

$ python
>>> print 2+2
4

And, check it has the sqlite3 relational database library

> import sqlite3

If all is fine it won't complain.

http://www.python.org/

Python setuptools for installing Python packages

At the prompt, enter:

$ easy_install --version

You should be given a version number, e.g.:

distribute 0.6.10

or a warning:

usage: easy_install [options] requirement_or_url ...
or: easy_install --help
error: option --version not recognized

Python nose for running unit tests

At the prompt, enter:

$ nosetests --version

You should be given a version number, e.g.:

nosetests version 0.10.4

At the prompt, enter:

$ nosetests

You should be given a test report, e.g.:

........
Ran 0 tests in 0.003s
OK

Git for using version control

At the prompt, enter:

$ git --version

You should be given a version number, e.g.:

git version 1.8.0

BitBucket for using remote version control repositories

For version control practicals, we use BitBucket to enable repositories to be used remotely and to be shared. To get a BitBucket account for version control practicals, just sign up for free at https://bitbucket.org/.

SQLite for a lightweight relational database

At the prompt, enter:

$ sqlite3 -version

You should be given a version number, e.g.:

3.6.20
http://www.sqlite.org/

Firefox (for the SQLite manager below)

Depending upon your operating system either start up Firefox from its menu or icon, or, at the prompt, enter:

$ firefox

http://www.mozilla.org/en-US/firefox/new/

Firefox SQLite manager for a relational database

Once Firefox is running:

http://code.google.com/p/sqlite-manager/

What to do if you do not have a piece of required software

Please see the operating system-specific installation instructions below.

Support

If you run into any problems installing the software please try to resolve them in the following order:

  1. Try to obtain assistance from the IT support staff at your home institution.
  2. Send an email, outlining your problem in as much detail as possible, to:
  3. Mike Rezny (Michael.Rezny@monash.edu)
    for Mac specific or general assistance
    Scott Wales (Scott.Wales@unimelb.edu.au)
    for Linux specific or general assistance
    Simonn Michnowicz(Simon.Michnowicz@monash.edu)
    for Windows specific or general assistance
  4. If you are attending the AMOS conference, bring your laptop to the Boot Camp helpdesk at the Centre of Excellence in Climate System Science booth. Details of when the helpdesk will be manned will be emailed before the conference.

Please also email any of the support people above if the instructions are incorrect, ambiguous, or if you have any other suggestions that will make the installation process easier for other users.


Operating system-specific Installation Instructions


Instructions common to all

The following software has the same installation instructions for all operating systems.

Firefox SQLite manager

The SQLite Manager add-on can be installed through the "Add-ons Manager" in Firefox.


Ubuntu

Tested using Ubuntu 10.04, 11.04, 12.04

Ubuntu already comes with

All installation needs to be done as a root user or user with certain administrator privileges. If you have such access you can do:

$ sudo su -

Then enter your usual password.

Install Emacs or XEmacs

This is only necessary if you want to use this as your text editor.

Run:

$ apt-get install emacs23
$ emacs --version

Run:

$ apt-get install xemacs21
$ xemacs --version

Install Python setuptools

Run:

$ apt-get install python-setuptools

Install Python nose

Run (note the underscore):

$ easy_install nose

And check:

$ nosetests
----------------------------------------------------------------------
Ran 0 tests in 0.003s
OK

Install git

Run:

$ apt-get install git
$ git --version
git version 1.7.0.4

Install SQLite

Run:

$ apt-get install sqlite3
$ sqlite3 --version
3.6.22

Fedora 17 or Scientific Linux 6.3

The yum commands were tested using Fedora 17 and Scientific Linux release 6.3. These instructions are quite likely to work with other versions of these Linux distributions. However, the versions of the installed packages may be different.

The standard distributions already come with...

All installation needs to be done as a root user or user with certain administrator privileges. If you have such access you can do:

$ sudo su -

Then enter your usual password.

Install Emacs or XEmacs (only if you want to use emacs as your text editor)

Run:

$ yum install emacs
$ emacs --version

Run:

$ yum install xemacs
$ xemacs --version

Install Python nose

Run:

$ easy_install nose

And check:

$ nosetests
----------------------------------------------------------------------
Ran 0 tests in 0.003s
OK

Install git

Run:

$ yum install git

And check on Scientific Linux 6.3:

$ git --version
git version 1.7.1

or on Fedora 17:

$ git --version
git version 1.7.11.7

Install Firefox

Run:

$ yum install firefox

Windows

[Tested using Windows 7 Enterprise, SP1 2009]

For Windows we use Cygwin which provides for Linux/UNIX interaction but fully integrated with the Windows file-system (unlike, for example, a virtual machine).

Install Cygwin for bash, make, text editors, SQLite, Mercurial and Python

Now, finally, you can select the packages to install...

Hint. If you have trouble finding any of the packages below, you can search for them in the "search" window

Now, set up the path...

Install Python setuptools

Install Python nose

Install Firefox

You can download Firefox from the Mozilla web site at http://www.mozilla.org/en-US/firefox/new/.


Mac OSX

[Tested using Mac OSX 10.6.8 and 10.7.4]

Mac OSX already comes with

All installation needs to be done as a root user or user with certain administrator privileges.

Install Python nose

Run (note the underscore):

$ easy_install nose

And check:

$ nosetests

----------------------------------------------------------------------
Ran 0 tests in 0.003s
OK

Install git

Follow the instructions at https://help.github.com/articles/set-up-git

Note that the red button, "Download GitHub for Mac", only supports Mac OSX for version 10.7 or later.

For Mac OSX 10.6, use the "Download and install the latest version of Git"

And check from a terminal window:

$ git --version
git version 1.8.0

Install Firefox

You can download Firefox from the Mozilla web site at http://www.mozilla.org/en-US/firefox/new/.

Note that red button "Download GitHub for Mac" only supports Mac OSX for version 10.7 or later.

For Mac OSX 10.6, use the "Download and install the latest version of Git"