This summer I had the pleasure to teach two PhD level modules: Introduction to R and Programming and Project Management. Both of these classes are designed to equip rising second-year PhD students with the necessary programming skills needed for independent research.
I also participated in the Teaching in Triangles program as part of my effort towards earning a Certificate of College Teaching. This program consists of pair-wise peer observations (with other PhD students who are teaching summer classes), and we get extensive feedback on the content and style of our teaching. Here are the two main lessons for me:
- It is challenging to achieve a balance between pure lecturing and student discussions, especially in software classes. I designed the classes to contain short, in-class assignments that allow students to check their understanding right after a new concept/procedure is introduced. But when I explain the recommended solutions, I tend to lecture on and on without leaving much time for students to ask questions.
- Students are more engaged when they feel they can contribute to the class. In the last class when I talked about programming and project management in collaborative projects, I asked students to brainstorm the good practices in this setting and emphasized that they would need to share their insights with the rest of the class. My students were super engaged and raised good points that complemented my lecture.
My experience as an instructor also makes me realize how much effort goes into course preparation. Bravos to the good teachers I encountered throughout the years! Hopefully I will become a better teacher over time.