Contextual Background
In MSc Creative Computing, students come from diverse backgrounds in terms of their technical know-how in the field of computing. For many students, it is their first time getting on with programming languages or setting up programming environments on their computers. While some students already have skills in coding and programming.
Evaluation
So far in the classroom, my colleagues and I have focused more on delivering knowledge on the conceptual level, such as methods and theories. This is typical because we think conceptual-level knowledge and ideas are more important than technocentric know-how and are often worth discussing in the limited class time. However, this is often not a sufficient approach to support the diversity in students’ training needs. In my past two years of experience as a lecturer, I observed students at the beginning level put in a lot of effort, and often struggle to catch up with the technical aspects.
Therefore, to move forward, it is worth exploring how to support this diverse training needs on technical skills, and how to effectively equip students with practical skillsets that are sufficient for them to start exploring the creative aspects of computing.
Moving Forward
Code repositories:
I usually maintain online repositories (e.g., link) within the UAL network to keep course related source codes. For each week, there will be one or two notebooks as as interactive task sheets – studenst follow and work through the example codes provided in the notebook to learn the practical side of the unit. This is also a typical workflow in computer science – developers use code repositories to share open-source content, as well as an approach suggested by the literature in the pedagogy of AI/ML (Raman and Kumar, 2022). Introducing this approach in pedagogy can be an opportunity to learn the professional practices in the field.
I experimented with this approach in the Mathematics and Statistics for Data Science unit, and I received students’ feedback in which they mentioned that they appreciated the well-prepared materials. Moving forward, I will keep using and adapting this approach, for instance, providing more documentation to the repositories and clearer guidance on how to set up and navigate the repository, as well as undertaking actions that can ensure accessibility.
Asynchronous step-by-step tutorials:
Instead of having synchronous workshops, which are technical training in coding and programming, having learners follow pre-recorded video tutorials in a step-by-step manner can also be a beneficial approach. This has been an effective learning strategy for computer science education in engineering or more technical departments. It typically offers the benefit of allowing students to follow their own pace, tailor their own technical equipments, or adapt to their routine of setting tools and materials.
Several colleagues of mine have experimented with this approach, and they are generally well-received by the students. I will dedicate more time to offering these asynchronous resources as supplementary materials to my teaching.
Reference
- Raman, A., Kumar, V., 2022. Programming Pedagogy and Assessment in the Era of AI/ML: A Position Paper, in: Proceedings of the 15th Annual ACM India Compute Conference, COMPUTE ’22. Association for Computing Machinery, New York, NY, USA, pp. 29–34. https://doi.org/10.1145/3561833.3561843