I just read Flinging Fish for Fun and Profit, a short little essay on how Pike Place Market in Seattle turned to dwindling business into a success by making it fun.
Obviously having fun at work is largely attitude, but I'm wondering what practical things can be done to have more fun with programming and related tasks? In Pike Place they were able to find more fun by chucking a fish across the market rather than carrying it. What do you do to make programming more fun?
Edit: To be clear I'm not making the assumption programming inherently is not fun. But certainly there are tasks or times when it is tedious or trying (making long commits, dealing with cludgy tools). The fishmongers took the tedious but necessary task of moving fish from point A to point B and made it fun. How do you do the same?