You know what's weird? Lab classes are. In computer science, in Scotland, that is. Maybe they are less odd in other places. Or, for I know, all lab classes in the sciences are deranged. Here's what might go on in a typical lab.
Lab classes don't really start at an appointed time. Students are often working in the labs prior to the class, so they might already be working when the lecturer or teaching assistant arrives. This also means you get random students from other year groups in the room during your lab classes, which is dreadfully confusing. Judging from the students' aggrieved expressions when I chuck them out, it is not common for other lecturers to mind. When other students start to drift in, they typically collect the lab worksheets from a table on the way in and start to work on the exercises. Or maybe just look at Facebook. Students will continue to wander in throughout the class whether it is their lab slot or not. Throughout the class, students might put up their hands for help and a staff member will scurry over to their computer and talk to them quietly. They also put up their hands when they want an exercise checked off for marks. Sometimes they seem surprised if I ask them to explain how their program works. Why don't I want them simply to copy code from their friends, they might wonder to themselves? Students also tend to drift out of classes when it suits them to "finish work at home" which could well mean "discussing it in the pub with friends". This is the way it is, it is the way I was when I was a CS student and perhaps, in some quarters, the way it always will be. So why am I remarking on it?
Consider, if you will, the sort of helpful learning and teaching behaviour you might expect to see in other settings. A teacher might:
- welcome the class, and explain the purpose of the class as well as the activities which the students should perform. (OK, this is not altogether unusual but it is not universal in my dept.)
- spend time with each student to discuss their general progress and help them to plan work as well as solve current problems. (I particularly like doing this as only lab classes are small enough to do this).
- draw everyone's attention to a commonly occurring problem and discuss strategies for solving it
- get a student to show off a good piece of work
- mention when someone figures out a new way to approach a problem
- relate learning which is occurring in the lab to concepts from the textbook or lectures
- hold a short plenary session at the end of the class to recap on what the students learned and give them pointers for what to focus on next time. Discuss with them what they feel were important points.
This last point is something which my teaching guru Cathrin Howells has impressed on me over the years as we work with groups of kids. She has a mantra which is "don't crash the bell" i.e. don't let a lesson finish in a rush when the bell goes (or in university settings when the timetable slot ends) and everyone is in the middle of a task. Finish the hands-on part of the lesson in plenty of time for a plenary so everyone had time to reflect on what they learned and discuss it.
This is hardly exotic stuff. But it is pretty rare in my experience as a lecturer or a student. Why is culture so hard to change in computer science? It seems that there are a myriad of lost learning opportunities, particularly chances to strengthen a sense of community between learners, because of these strange traditions. And the saddest thing is that because I am coming into this semester 2/3 of the way through, I don't think I am going to be able to tackle it properly until I get a new, fresh, pliable class to work with. It is very hard to change the pattern of classes once expectations of what is considered to be acceptable behaviour have been established.