So yesterday was the first day of SIGCSE, and I attended some great panel and BOF sessions. The last two sessions of the day were BOFs – gatherings of people interested in discussing a common topic. The first one I attended was Web-Cat. I haven’t used Web-Cat and didn’t really know what it was for, but I did know that it was an open-source (tick!) tool, used by many universities (tick!) for automatic web assessment, but that it extended beyond simple automatic marking to do other things (tick!). I didn’t really know what those other things were, but as my most common complaint about our local automatic marking system is the focus on grading I was interested in finding out more.
It turns out that Web-Cat has some really nice plugins for automatic feedback, using annotations at a per-method or per-code fragment level, and also uses existing static and dynamic analysis tools to provide feedback on the test coverage of student’s own tests of their code. These are really nice features that I would love to see in our own system. What I particularly liked was the focus on testing and the software development process – the system can be used to simply test the output of the student’s program against that of a test solution, but it is a lot more useful and flexible than that, and can be used to guide students to solve their own problems by pointing them at areas of their programs that are under-tested or that do not perform as expected. One of the nice aspects of the feedback that can be provided is that it does not have to be code related, i.e. you can include feedback hints that ask students to read a textbook chapter, or anything else that you like.
One problem, though, is that due to the complexity of the system, you need to add plugins for each programming language that your students will be using. There are already sophisticated plugins for common languages, but this is a definite limitation of the system, but not an unexpected one.
The other BOF session I attended yesterday was on the future of textbooks, or more specifically, the future of e-textbooks. What will they look like? What can they include? Do we have any good examples of systems that we could adopt now? Do we know what kinds of interactive or additional items we would want to include?
There was a lot of discussion, and a lot of people contributing ideas and examples from industry and research areas, but not clear solution – not that I was expecting one. There is a lot of work to do in this space before we have anything that resembles a clear standard, or a platform that can be adopted by authors. But what an exciting space to work in!
Some of the systems that were mentioned included: http://www.learnlab.org/, http://ctat.pact.cs.cmu.edu/, http://thinkcspy.appspot.com/, http://www.inkling.com/