University of Melbourne Software Carpentry Bootcamp
Event Information
Description
What is a Software Carpentry bootcamp?
Software Carpentry is a volunteer organisation whose members teach basic software skills to researchers in science, engineering and medicine. Researchers often spend much of their time wrestling with software, but most are self-taught programmers. As a result, they spend hours doing things that should take minutes, reinvent a lot of wheels, and still don’t know if their results are reliable. To tackle this problem, Software Carpentry runs two-day bootcamps at dozens of sites around the world, ranging from ultra-prestigious institutions like Harvard and Oxford to far-flung universities in places like Beirut, Cape Town and now Melbourne!
Who should attend?
The bootcamp is aimed at postgraduate students, post-docs and other research staff at the University of Melbourne 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.
We are hoping to have several discipline-specific tables of 4-6 people, so instead of just signing up as an individual, we encourage you to get together a small group of people from your department.
What do we teach?
In order to accommodate as many people as possible, we are going to spread the content of a typical two-day bootcamp over four afternoons. The following is an outline of what will be taught:
Session 1: The basics
Monday 25 November, 3-6pm
The key to being a proficient programmer is solid fundamentals. In this session you'll learn the basics of the unix shell, which is the cornerstone of software carpentry.
Session 2: Programming like a programmer
Wednesday 27 November, 3-6pm
Monday 2 December, 3-6pm
Have you ever wondered how professional programmers write code? In this session you'll learn the common tricks of the trade, via an introduction to the Python programming language. From defensive programming, error handling and debugging to unit testing and test-driven development, the skills learned in this session are transferrable to any language.
Session 3: Version control
Wednesday 4 December, 3-5pm
Do you work in a small research team that shares code? Do you struggle to keep track of multiple versions of the same code? Would you like an easier way to backup your work? This session will teach you everything you need to know about git, a version control system that can solve all these problems and more.
Session 4: Ongoing support
Wednesday 4 December, 5-6pm
Programming can be a lonely pastime. It's often hard to get feedback and assistance when you run into trouble. To overcome this problem, we want to establish a postgraduate programming community here at the University of Melbourne. At this session, you'll get to have input into how this community is run and what activities it will undertake. Join us afterwards (i.e. from 6pm onwards) at Tsubu to officially kick-off the Postgraduate Programming Society.
What should I bring?
Bring your laptop with some specific software packages installed (see the instructions here). If you don't have a laptop, that's completely fine. We'll pair you up with someone who does.