Generic Programming and Library Development
Quarter 4, 2008
The course evaluation was carried out in the form of a structured dialogue at the end of our last discussion session. Each student was allowed to write at most five (5) comments about the course, including what was good and what was bad. Thereafter, the comments received were circulated around and each student could tick the comments he or she agreed on. The comments that got most marks were then discussed in a dialogue.
Number of students who registered for the course: 38
The comments that were discussed at the evaluation meeting are listed below together with the number of marks received.
+ 12: Interesting assignments with hands-on programming
Based on the comments, there were several areas where we were doing well (e.g. hands-on learning, code orientation, real-world orientation, project orientation, future orientation, textbook selection, student presentations, the structure of the course in general). On the other hand, some corrective actions are clearly necessary when the course will be offered next time. The course team considered the following issues.
* According to the first list we received from our administration the course was full booked (max 48 students) and several students contacted the course manager to get a permission to take part in the course. About 30 students took part in the activities on the first week. After asking non-active students to remove their names from the list of registered students, the list contained 38 names. Almost half of the students in the first list were no-shows. So clearly something went wrong somewhere. What is wrong with our administrative procedures?
* This year we failed to provide timely feedback for the students on their T, P, and M assignments. Compared to earlier years the assignments were individual. This doubled the workload of the teachers. In the T assignment we first time required that the answers were handed in directly to the CPH STL CVS repository. Because of several portability problems this caused extra work for the reviewer who used 2-3 hours per answer. This meant that the correction of the T assignments alone required two-weeks full-time work. Additionally, in the P and M assignments our instructions were not clear enough to state that a PDF file is to be handed in (not a compressed package containing all the original files).
The idea of receiving the assignment answers via a version-control system is great. Instead of just commenting the output, the report, we can also provide comments on the work process and tools used. However, a requirement for giving this kind of deeper feedback is that the course is run with teaching assistants! The idea in the course has been to keep the students busy by exposing them systematically with assignments. If the necessary teaching assistants cannot be provided, we have to find another way of running the course.
* Our current course-management system is a simple collection of text files and a makefile that generates the home pages from the text files and transfers the generated HTML files to our web server. This makes the administration of the website easy. However, the current system does not provide a discussion forum or upload of assignment answers. Hence we have also relied on ISIS. We have to take the proposal of using dikutal seriously in order to simplify the use of the web pages.
* As pointed out by several responders, the student presentations are really an important part of this course. It also became clear that some students have to train their presentation skills more. The feedback given for the presenters was in a form of a form filled in by some fellow students (opponents). The feedback could indicate that there were some problems in a presentation, but it seldom gave any concrete proposals how to make the presentation better. We should consider giving this feedback in a debriefing meeting after the presentations. Normally, in one discussion session two to four presentations were given. To make the debriefing meetings feasible, the teachers should hold these debriefings in parallel so that there will only be one or two debriefings per teacher after each discussion session.
* In several occasions we have received feedback that the configuration-management tools used at the CPH STL could be improved. In particular, Windows users have suffered from our fanatic Linux orientation. For example, we should consider using Subversion (instead of CVS) and Cmake (instead of make). Also, there are several known problem areas that could be resolved by giving clear instructions for the developers what to avoid and what to do instead.
Future of the course
The permanent teachers of the course team (Knud and Jyrki) have now given the course three times. Our principle is that the same teachers should not hold the same course more than three times without a break where they can renew themselves. No one else was willing to take over this course, so the course was removed from our graduate program. In a sense this is a pity since the course is important for several research groups and since there seems to be a constant demand for this type of pragmatic course which uses C++ as the basic tool to teach generic programming.
Generic programming and library development will return; we just do not know when and in which form.
We are grateful for the feedback we received, and we want to thank those who provided that for us.
June 7th, 2008
|This page was last modified by Jyrki Katajainen on 09.06.2008.|