The Pure Joy of Learning
It's 10:00 am on the first Saturday of school at C.U. (University of Colorado). No projects have been assigned yet. No significant homework. So why do we have 24 C.S. students in the Computer Science Engineering Lab? They're about to compete in the first annual Windward / C.U. Code War. Participating doesn't count toward a grade. It fulfills no school requirements. It doesn't pay. So why are they here?
For the same reason some people will spend an entire day playing basketball in a tournament. The pure joy of competing at something you love. These 24 students woke up early and spent their Saturday designing and writing code. Did they enjoy it? Every single one said they want to do it again next year. Why? Because a lot of us programmers love what we do. Yes we get paid well for it, but it's not the pay, it's that we love the work.
Events like this add significantly to the college experience. First off, it helps reinforce a joy in learning purely for the sake of increased knowledge. That is one of the fundamental tenets of learning.
Second, it provides a more diverse learning experience. A code war is different from an assigned project. With an assigned projectc everyone can get an A and the criteria to do so are very clear. In a code war there is only 1 winner and so you have to strive to write better code than the others, without knowing what the other teams are creating.
Third, I think back to what one mom said when we were complaining about driving our daughter's soccer team all over the state for games -- that it's cheaper than drug rehab. Providing compelling events for students that keep them busy helps reduce the time they're learning the hard way that dumb behavior has consequences.
Article continued (with video) at Huffington Post - The Programming Olympics.