On Sunday afternoon, I had the pleasure to design and modify my girlfriend's, Alex, MySpace page for her band. It was a really fun experience. Often my work is solitary, programming alone without a pair. Sunday was my first experience for a longtime working with a pair. While it wasn't pair programming, you could describe it as pair design. She had a vision, and I had the technical skill set. While the project was relatively simple, there were a few constraints we were working with: the MySpace interface and my design skill set. Through the afternoon, there were ideas being bounced between us, and refinements moving forward. I loved it.
The hours flew by, and before we knew it it was time for dinner. Alex was keen to keep going since we were so close. I knew in reality that we had another couple of hours to go. So I said, "I want to keep this fun". I knew after a couple of hours, we would be tired and hungry. No more fun.
So we stopped, published what we had, and committed to finishing it the following weekend. It kept it fun.
I think we need to stop more often to keep things fun. Often we just keep going for the sake of finishing something completely. The web is great medium where we can publish work in progress, and come back to refine it. Often we have this notion of only publishing "completed" work. In reality, it's never completed and will always need refinement.
How do you keep it fun? Let me know in the comments.