Show and Tell YC: Built a webapp in ~14 hours
tweetsnap.com
tweetsnap.com
:) Right.
Needless to say, the first thought I had when I woke up was "wouldn't it be cool if..." and the rest, as they say, is two days of pure hackery. I give you the end result: TweetSnap.
It's a really simple premise: enter your Twitter username, get an image back which you can put on your site to show your latest tweet.
It's designed for people who uses websites/etc which don't allow the typical "insert javascript snippet for AJAXy awesomeness" but does allow you to hotlink images (great example: forum signatures).
I haven't looked to see if anyone else has done this yet, mainly because I just did this for fun and I don't really care :) But try it out, give me your feedback. Temperamental results to be expected while on shared hosting :)
For the techies:
- Rails 2.1 w/ a minimalist MySQL DB
- Image generation done with RMagick 2.5
- XML parsing with Hpricot
- Message parsing a combo of htmlentities and a custom lib (supports characters like ø™¡)
The next time you query that user, it'll return that file unless it's been longer than a certain amount of time (currently set to 15 minutes). If it has been, a request is made to Twitter. If they've updated their message, a new image is generated, otherwise the stored file is used.
The time between updates is stored in a single handy constant that I can alter to adjust for bandwidth.
First day was getting it to work, second day was design. Replies aren't filtered (although I'd like to do that at some point, for the moment I'm happy to keep it simple).
Biggest effort went into RMagick, which was incredibly frustrating. On the second day I rewrote the majority of the stuff I wrote on the first day so that it was better organised and less of a mess.
EDIT - I dont know if this is a bug or not, but under the "generate html" part, you dont have the <IMG> tags?
One person I sent it too messed it up as a result :)
oh yeah any memory problems with the rmagick? just curious.
I have no idea. It's all on shared hosting atm. More of an experiment than anything else. If it needs more grunt, I'll get some proper hosting.
I think the solution is to make the tweetsnap link have a link to the user's twitter stream. For example:
<a href="http://tweetsnap/twitter/tipjoy">
<img alt="Tipjoy" src="http://tweetsnap.com/twitter/show/tipjoy.png" />
</a>
The href leads to a page that shows the same form to make your own tweetsnap widget, but the page could have a side bar that grabs the last few tweets from @tipjoy and a link to http://twitter.com/tipjoyWhat I'm thinking basically is, people can upload their normal avatars to your site, which you use as the backdrop for your image.. and based off emotions that they tweet (love, hate etc) it can overlay a translucent colour on it?
So in effect, changing the mood of someone's avatar, based off their Tweets?
Just a thought :)
We had our fun with image hackery with featurelist. A lot of users discuss things on forums, etc, where they can't post javascript/flash, so we created little banners like this so users can get other people to vote for their feature requests:
Make a slightly narrower version, and I'll put tweetsnap in my sidebar here: http://tipjoys2cents.blogspot.com/