The workshop at University of Southern Denmark, Odense was my first workshop for Software Carpentry, the same is true for Luis as well. We had taught before, Luis more than me, but it was still exciting for me to see how this workshop would go given that we never taught together before. While I taught bash, regular expressions and Git, Luis taught Python, unit testing and SQL. Initially, make was also on that list, but due to time constraints was kicked out to make room for a second Git lecture.
Around 30 persons attended the course, mostly from SDU and the Max-Planck Odense Center (MaxO). All in all, the workshop was well-received and the attendees as well as the instructors were highly motivated. But there is still lots of room for improvement:
- The shell lecture was way too slow, so that I could not do any of the demos. This was bad for a couple of reasons, but mainly because people did not know about even the most basic things which were needed for the Git part.
- The regular expressions lecture should also increase in speed. Also, we (= SWC instructors) must be aware that Apple ships old BSD versions of the commonly used command line tools. These lack essential features, so that grep output cannot be colored on OS X!
- Git just cannot be taught in 1.5 h to people without any prior knowledge of version control, at least not in a comprehensible way. Git is so incredibly powerful and the concepts behind it are so intricate that it is easy to cognitively overload people. Therefore, I dropped the make lecture and did a ’Git Double Feature‘ instead. Also, I noticed that I am suffering from expert's blind spot: when asked about where one can see the files of different branches on the computer, I realized that this feature of Git was so obvious to me that I did not explain that at all.
- Probably the most interesting/realistic way to show Git is to have a new repository created before the workshop. That repository already contains some linear commits with simple scripts. People will clone it during the workshop and do some work in a new branch. While they are doing that new commits are added to the master branch, which people should fetch/pull and see the effect.
- Showroom: Now and then we need to be able to show people
what great things they can do with tools we teach. This would serve two
- People would see right away the usefulness of what we are teaching. This should boost motivation.
- People have a moment to relax.
The workshop was held on a Thursday and Friday and it was obvious that people, especially after lunch break on Friday, were mentally quite exhausted already. At that time I noticed just how much information (as measured in the ’unit‘ mind map connections) we conveyed during the two days. And that is what the ’showroom‘ is thought to be for.
Big thanks go to Owen Jones from SDU for organizing, things really worked out great.
PS: Danish pastry is as good as its reputation.