Twitorfit

My latest project went live on Monday this week. It's another Twitter-based toy along the same lines as hotornot but it uses your Twitter account and profile picture. Since launch it's proved very successful and has spread quickly due to its viral nature.

The site is called Twitorfit and was the brainchild of a Twitter-based conversation between Nick Halstead of fav.or.it andáAndy McLoughlináandáZuzanna Pasierbinskaáfrom Huddle. You can read the full story on the Twitorfit blog.

Twtiorfit ScreenshotTwitorfit Top 10 Screenshot

Rate users then see the top 10 "twits" and "fits"

Development of the site took a little under 20 man-hours in total from concept to launch including several rewrites of the core architecture. I'd like to thank Daniel Saxil-Nielsen, the designer at fav.or.it, for sorting out the design and Alex Forrow, their sysadmin, for sorting out the live server. They botháresponded to my requests quickly and efficiently leaving me able to concentrate on getting the code done.

I'm hoping to do another post with a bit more detail about how Twitorfit works, and the specific techniques I used to ensure it would stand up to the initial peak in traffic that this type of project tends to get. For now I'll just say that it's written in PHP5, uses a MySQL database and Memcache. It's running on Sun hardware provided by the Startup Essentials program.

The site currently asks for your Twitter username and password when you log in and/or register which is less than ideal, but until they release their much-awaited OAuth implementation it's the most user-friendly way to authenticate Twitter users. It does not store your password and aside from login verification and the optional tweet when you register it does not make any requests against the Twitter API as you.

In summary it's been a fun little project to work on, and the feedback so far has been fantastic. If you're not on Twitter yet you should be - get your account here, and when you're done be sure to register on Twitorfit and get rating!

blog comments powered by Disqus