presented at event ITiCSE07: 12th Annual Conference on Innovation and Technology in Computer Science Education Conference