Field Notes

Two Lessons from the Software Carpentry Instructor Workshop

November 09, 2014 | In 30 days / teaching

While developers know our tools, we rarely know much about teaching. I discovered that for myself as a RailsBridge TA. Have you ever tried to explain the command line? Have you listened to the words coming out of your mouth? "Next, type cd dot dot slash. Then type m-k-d-i-r (space) temp." Welcome to programming. Wait, where are you going?

Software Carpentry is a programming workshop for scientists and engineers. Software Carpentry shares computing tools like version control that let scientists work more efficiently. The time can be reclaimed for research.

The Software Carpentry organizers also teach programmers about pedagogy so we can help instruct. The online class takes place over three months. I was lucky enough to attend the two day in-person workshop in September. Two ah-ha moments stand out among all the material we covered.

Ask two questions when you plan a lesson: what should students be able to do after the class? What are the steps to get there? This is reverse instructional design. It seems like the only logical way to go about it approach, now that I've heard it. My earlier strategy had been to say a lot about a topic and hope we arrived at the destination.

The second takeaway was how hard it is to speak plainly and simply. We practiced teaching a five minute lesson on a topic of our choice in small groups. We gave it four times in all, refining it as we went. Our lessons had all improved, but they still contained jargon.

I'll write more later about putting it into practice at our company lunch-and-learn.

Are you involved in grassroots programming training? Mozilla Labs is organizing instructor hangouts to let us connect and trade notes.