This week the Part II students demonstrated their finished projects to the rest of us.
Giving a demo requires quite a bit of preparation because it needs to be fast moving and to keep the audience interested about what they are seeing.
Simon presented his secured package management tool. He demonstrated how you can add new packages to the repository and have the client program build a dependency resolution plan. He found an interesting split in package dependencies: packages seemed to either have lots of immediate dependencies (bushy) or a long chain of dependencies but with only a few branches at each level (stringy). Simon had a nice demo idea of preparing breakpoints in his code so that the IDE would stop at interesting points in the execution so he could point them out. He had also prepared a variety of terminal windows with the right commands ready to go so that he didn’t have to spend time typing during the demo.
Tom showed off his optical music recognition system. He showed us his program processing a musical score and he mentioned each processing stage as it ran – I was pleased to see that he had worked out in advance how long this took and made sure his voice-over matched the real execution of the code. After showing it working (and playing the music back to us) he used a series of intermediate images to explain what the processing code had done. He highlighted how well the line following algorithm he used for following stave lines has worked out.
Stephen has built a gaze tracker which works with a commodity webcam. He explained the various tracking stages by showing a video and then showed us a live demo of it working. As always seems to be the way when demoing a machine vision system it actually worked less well during the demo than it has previously but he still managed to show us some interesting results. I thought that for this project the idea of using a prepared video to explain the operation of the system and then following with a live demo was a good approach – it meant that he didn’t have to hide behind his laptop for the bulk of the talk and that we had a good idea of what to watch for when he showed the live version.
Lingnan has been building software to automatically score essays written by people learning English. He had two prepared examples of a bad and a good essay and explained the features that his program looks for. After showing the scoring output he showed how you can configure the classifier, and how important it is to configure the right features with useful thresholds. I liked the fact that he gave some advice for others thinking about machine-learning/classifier-based projects: be prepared to spend a lot of time tuning parameters and experimenting with different options. Much of Lingnan’s demo was done by showing us different text files in vim – which he drove like an expert. However, as a member of the audience it was hard to follow at some points because of the quick way in which different views would appear and disappear as he navigated the interface. When using an editor for editing its a good feature that it quickly jumps to new spots as a result of keyboard presses but probably when doing a demo some sort of visual way of showing the path or the movement through the files would help people follow.
Craig investigated text compression using grammar induction. Despite his efforts the day before the projector took a strange dislike to his laptop and so Craig had to go with a backup plan – which was very well done. He explained the operation of the algorithms he has implemented on the white board and then showed the compression output and ratios on his laptop screen in a huge font. This approach worked well for his more theoretical project since it gave us a chance to understand better what we were seeing in the demo. Craig showed off his grammar fuzzing technique and had a nice bit of audience interaction where he asked for some example strings that people wanted to try.
Well done to all the part II students for a very interesting set of projects and demos. All that remains now is to finish the dissertations and submit them before the deadline: 12 noon on the 16th May.
Two of the project supervisors: Lech Świrski (who supervised Stephen) and Helen Yannakoudakis (who supervised Lingnan) came along to see the show and joined us for dinner after. I’m very grateful to all the project supervisors for their work with Queens’ students this year.