What’s On is a project to track songs played by radio stations around North America. It was mostly an excuse to learn how Amazon SimpleDB works.
The project source is available for download.
It comes in two parts:
- Airplay scraper
- Django interface
Many radio stations use a common format to list their songs played, with a history of about 12 hours. My scraper runs every 4 hours to get the latest songs, and stores them in Amazon’s SimpleDB.
Every night, new data in SimpleDB is converted to JSON and imported into the project’s Django database.
Right now, there are only about 30 stations available, and the current design with the SimpleDB architecture limits me to 500. After that, a database redesign would be needed.
It’s pretty basic right now, a few features I’d like to add are:
- Infinite scrolling
- Weekly/monthly popularity
Eventually, with enough data, I’ll be able to do some other statistics. Tracking the spread of a newly played song would be fun. Right now, there’s too many ‘new’ songs that are just not in the regular rotations.