I wasn't planning on diving back into the world of running the voting site teavee.com, but after writing a blog post about the history of the site I couldn't stop thinking about it.
The biggest problem I had back in 2006 was dealing with hosting options. Now that Google App Engine is available and free, it seems there was no excuse. Might as well put teavee back up and see what happens. I took the votay code base and changed a few things around. Biggest lesson learned from votay is to go ahead and repeat data. So I have "Show" objects stored in the DataStore as well as "Winner" objects. Each show and winner model have a title, permalink, summary, and votes. But forget about trying to join a winner's table over to the show table. Instead, at the end of each week I create new Winner objects with the data copied over from the Show objects. When listing winners I have all the data needed. No joins required.



















