Archives

Categories

Debugging as a Demonstration Sport

I was watching So You Think You Can Dance [1] and thinking about the benefits that it provides to the dancing industry. The increase in public appreciation for the sport will increase the amount of money that is available to professionals, and getting more people interested in dancing as a profession will increase the level of skill in the entire industry. While the show hasn’t interested me much (I prefer to watch dancing in the context of music videos and avoid the reality TV aspect) I appreciate what it is doing. On a more general note I think that anything which promotes interest in the arts is a good thing.

I have been wondering whether similar benefits can be provided to the IT industry through competitions. There are some well established programming contests aimed at university level students and computer conferences often have contests. But the down-side of them in terms of audience interest is that they are either performed in exam conditions or performed over the course of days – neither of which makes for good viewing. The audience interaction is generally limited to the award ceremony and maybe some blog posts by the winners explaining their work.

There are a number of real-world coding tasks that can be performed in a moderate amount of time. One example is debugging certain classes of bugs, this includes memory leaks, SEGVs, and certain types of performance and reliability problems. Another is fixing man pages.

A way of running such a contest might be to have a dozen contestants on stage with their laptops connected to a KVM switch. They could choose tasks from the bug list of their favorite distribution, and when they completed a task (built a deb or rpm package with the bug fixed and updated the bug report with a patch) they could request to have their port on the KVM switch and their microphone enabled so that they could explain to the audience what they did.

Points would be awarded based on the apparent difficulty of the bug and the clarify of the explanation to the audience. A major aim of such an exercise would be to encourage members of the audience to spend some of their spare time fixing bugs!

Basically it would be a public Bug Squashing Party (BSP) but with points awarded and some minor prizes (it would be best to avoid significant prizes as that can lead to hostility).

1 comment to Debugging as a Demonstration Sport

  • I’ve done many programming competitions over the past five-or-so years; certainly the conditions have varied: yes there are many competitions that are performed under exam conditions, but there are also many that aren’t — those that I’ve been in have been at a high school level.

    The SEARCC International Schools’ Software Competition (which I participated in in 2005), was held in a lab with many windows, with an Audience (admittedly mostly consisting of coaches and Aus. Computer Society people) watching in the next lab: also, problem submission was performed using removable media, so there was much frantic movement between labs getting solutions to the judges (I’ll see if I can dig up a picture).

    Also, UNSW Progcomp (http://www.cse.unsw.edu.au/~progcomp) has a Grand Final which is held on the Uni’s Open day, and hundreds of spectators come and go through the two or three hours that the competition extends over.

    I’ve been reliably informed that both of these competitions were quite exciting to watch, as the frantic solving of problems escalates as time runs out. This considered, I think that computing competitions, organised well can definitely be an exciting spectator sport.