Find us on GitHub

Software/Data Carpentry Instructor training workshop

June 30 - July 1st, 2016


Instructors: Christina Koch, Karin Lagesen, Lex Nederbragt


Software Carpentry and Data Carpentry's mission is to help scientists and engineers get more research done in less time and with less pain by teaching them basic lab skills for scientific computing. This hands-on two-day workshop covers the basics of educational psychology and instructional design, and looks at how to use these ideas in both intensive workshops and regular classes. The workshop is a mix of lectures and hands-on lessons where you practice giving a short lesson using approaches learned and implement some of the teaching techniques which we will discuss. This is training for teaching, not technical training; you do not need any particular technical background, and we will not be teaching that. This workshop is based on the constantly revised and updated curriculum.

Who: The course is aimed at everyone who is interested in becoming a better teacher. In particular, this training is aimed at those who want to become Software and Data Carpentry instructors, run workshops and contribute to the Carpentry training materials. You don't currently have to be an instructor or a teacher to attend this workshop, but you do need to be willing and committed to becoming one and to improving your teaching techniques.

Where: Vilhelm Bjerknes' hus, Moltke Moes vei 35, Oslo.. Get directions with OpenStreetMap or Google Maps.

Requirements: Participants should bring a laptop that is Internet connected and has a functioning browser. If you have it, a device for recording audio and video (mobile phones and laptops are OK) is useful as throughout the two days, we are going to record one another teaching in pairs or threes. It does not have to be high-quality, but it should be good enough that you can understand what someone is saying.

Please also read the Preparation section below. You will also receive some further information before the workshop so please check your email.

All participants are also required to abide by Software Carpentry's Code of Conduct.

Registration: Sign up here.

Contact: Please email for more information.


Day 1 09:00 Welcome Who is who? What are we going to do these two days?
09:10 Novices and Formative Assessment How can we describe the difference in learning between a novice and competent practitioner?
09:45 Terms What common vocabulary do we need to talk about teaching and learning?
How can we describe teaching and learning how to teach?
10:30 Morning Coffee Break
10:45 Teaching as a Performance Art How do teachers improve?
11:45 Morning Wrap-Up What have we learned?
12:00 Lunch Break
13:00 Expertise and Memory How can we describe the difference in learning between a novice and expert?
How is memory a limiting factor in learning?
14:15 Afternoon Coffee Break
14:30 Performance Revised How does having a concept map change the way you teach?
15:15 Cognitive Load How does inquiry-based learning perform compared to guided learning?
What is cognitive load theory, and what predictions does it make about the effectiveness of different teaching practices?
What is the split-attention effect, and how should it affect the design of teaching materials?
16:05 Afternoon Wrap-Up What have we learned?
16:35 Finish
Day 2 09:00 Live Coding How do we teach programming using live coding?
10:15 Morning Coffee Break
10:30 Carpentry Teaching Practices What teaching practices are common to Software and Data Carpentry?
11:00 Motivation and Demotivation What motivates and demotivates learners and instructors?
11:45 Morning Wrap-Up What have we learned?
12:00 Lunch Break
13:00 The Carpentries What do I need to know about the Software and Data Carpentry organizations?
14:00 Learning Objectives How can I design effective lessons?
14:15 Afternoon Coffee Break
14:30 Learning Objectives How can I design effective lessons?
15:30 Afternoon Wrap-Up What have we learned?
16:00 Finish

We will use this Etherpad for chatting, taking notes, and sharing URLs and bits of code.


Please see the course materials website for course material.


Please read the following before the workshop begins:

  1. Success in Introductory Programming: What Works?
  2. Top 10 Myths About Teaching Computer Science
  3. The Science of Learning
  4. Software Carpentry: Lessons Learned

Please also go to the Software Carpentry lessons page and the Data Carpentry lessons page to have a look at what we currently teach. You are not expected to go through these in detail, but it would be helpful if you knew what the major topics are.