Teaching basic lab skills
for research computing

Our Lessons

Our lessons are developed collaboratively on GitHub. You can check the status of each lesson on our dashboard, view the nightly build, or look at older releases. You may also enjoy Data Carpentry's lessons, which focus on data organization, cleanup, analysis, and visualization.

All of our lessons are freely available under the Creative Commons - Attribution License. You may re-use and re-mix the material in any way you wish, without asking permission, provided you cite us as the original source (e.g., provide a link back to this website). If you have questions about contributing to particular lessons, please contact its maintainers.

Lesson Site Repository Reference Maintainer(s)
The Unix Shell Gabriel Devenyi, Ashwin Srinath
Version Control with Git Ivan Gonzalez, Daisie Huang
Version Control with Mercurial Doug Latornell
Using Databases and SQL Abigail Cabunoc Mayes, Sheldon McKay
Programming with Python Trevor Bekolay, Valentina Staneva
Programming with R Daniel Chen, Harriet Dashnow
R for Reproducible Scientific Analysis Thomas Wright, Naupaka Zimmerman
Programming with MATLAB Isabell Kiral-Kornek, Ashwin Srinath
Automation and Make Mike Jackson
Instructor Training Greg Wilson

Videos

Video recordings of our lessons are listed below; additions are very welcome.

Version Control and Unit Testing for Scientific Software (SciPy 2013, Part 1) Katy Huff
Version Control and Unit Testing for Scientific Software (SciPy 2013, Part 2) Matt Davis
Version Control and Unit Testing for Scientific Software (SciPy 2013, Part 3) Matt Davis
Software Carpentry: Lessons Learned (SciPy 2014) Greg Wilson
Entire workshop at the University of Melbourne (2014) Damien Irving
Software Carpentry: Shell (SciPy 2015) Jens Nielsen
Software Carpentry: Python (SciPy 2015) Katy Huff
Software Carpentry: Git (SciPy 2015) Ted Hart
Software Carpentry: Scientific Python (SciPy 2015) Jessica Hamrick and Matt Davis
Software Writing Skills for Your Research (2014) Martin Hammitzsch

Our YouTube channel has studio versions and screencasts of our older material. You may also enjoy this video (though "enjoy" may not be the right word).

Contributed

These lessons have been contributed by community members.

Lesson Site Repository Maintainer(s)
Testing and Continuous Integration with Python Katy Huff
From Excel to a Database Greg Wilson
Data Management in the Ocean, Weather and Climate Sciences Damien Irving
Controlling a Quadcoptor With Your Mind Isabell Kiral-Kornek
Visualizing Your Data on the Web Using D3 Isabell Kiral-Kornek
Working With Data on the Web Greg Wilson
Intermediate/Advanced R Lessons Scott Ritchie
Programming with GAP Alex Konovalov

Slideshows

We have developed some presentations to explain who we are and what we do. Some of these are animated with Browsercast, and all are available in this repository.

Introducing Software Carpentry Hosting a Workshop Best Practices in Scientific Computing
Software Carpentry: Lessons Learned Teaching Tips Creating a Workshop Website
Creating a Lesson    

Dialogue & Discussion

You can review our commenting policy here.