Katy Huff and I are back from Trieste, Italy, where we were instructors in the Advanced School for Scientific Computer at the ICTP. This was a different sort of workshop in many ways. First of all, it was 2 weeks long and the students were from all over the globe. Countries represented include Russia, Bangladesh, China, India, Pakistan, Albania, Iran, Palestine, Ghana, Nigeria, Chad, South Africa, Serbia, Romania, Ukraine, Argentina, Ecuador, and Colombia. The level of effort they showed was astounding: between our exercises and the project they brought from home, many students were in the computer labs until 11:00 at night.
There are a few things that we've learned:
"All in" works.
Two things really set our students apart. First, they had all traveled a long distance to be at the workshop, which set the tone for the week. Second, the workshop required that each student bring a project from their own research so they could apply some of the ideas of the workshop right away. This was the most successful element of the workshop because it lowers the barrier to entry for new technology even further.
But it requires a different sort of instruction.
For instance, instruction didn't stop when the lecture ended. It carried through meals and often into the night. Students were in the lab until 11:00 or later, and that provided good time to help with one on one questions. While this style of teaching is more rewarding for the instructors (I thought!), it also requires a larger commitment in terms of time and energy than a 2 day workshop. We didn't have the 5 to 1 student to teacher ratio that we try to have for most workshops. I think we could have benefited from a few more instructors, particularly when we broke into individual projects. Fortunately, several of the students started pitching in to help introduce tools like Paraview that could help other students.
Another advantage to the longer, project oriented format was that each person came away with a new tool that uniquely fit their needs. For several people, this was Python and matplotlib. We had more than one person change their original project idea based on the material in the first week. For several people, valgrind seemed to be a tool they would continue to use. Several people also started using doxygen. The cool thing about this style of workshop is that valgrind and doxygen weren't even on the syllabus: they came out of recognized needs and were introduced either through special sessions or through one-on-one instruction.
The big takeaway
I hope to teach another workshop like this whenever one is available, but there are other lessons that we could apply to our 2 day workshops. First of all, the idea of a student project makes a lot of sense. It would be interesting to add a day to the workshops that is devoted to applying ideas in each student's project. Another idea, which we've kicked around before is a few "choose your own adventure" sessions to allow time to introduce tools to meet the needs of the specific audience.
Special thinks to Graziano Giuliani, Antun Balaz, and Stephano Cozzini for organizing this workshop. This was one of the best experiences I've ever had, and I hope to do it again soon!