I know about that. Many of my favourite moments in my current job are "having fun" with the thing. For instance, I wrote a fortunes module (our product is a groupware product run over an intranet with a web browser). It was nearly as much fun writing it as putting good fortunes in there!

A more productive moment was aggregating a whole heap of functions for drawing HTML form controls into one function. Suddenly they all had the whole range of options and parameter processing that was duplicated incompletety amongst the older functions. That was fun. And doing some very fancy manipulation of school marks for reporting that required PHP arrays of 5 and 6 dimensions. I've had a client ask to see how that works... :-)

Wade.