I was on the edge of getting kicked out of school just a few months ago (working too much on “other stuff”… long story), but they were kind enough to give me one last year to finish my studies. This means crunch time as I have a bunch of courses to do. One of those is my thesis which is worth a lot of points.
The topic of my thesis is “Peer-to-peer Content Distribution” (or something like that) (the old one didn't pan out and I just posted what I had to the Streaming411 wiki) and it talks about what we all have been doing for years - sharing stuff online. In it, I try to analyse the business side of things, do a lot of comparative analysis between different distribution methods and propose a working distribution system.
There's also a practical side involved. I chose to design and build a publishing system that utilizes BitTorrent for delivery and RSS for publishing. An example of this in action would be the terrific Miro Player. I personally believe very strongly in this distribution scheme.
My webapp is called “Collective” and it allows you to do the following:
- Publish BitTorrent content. Just FTP your stuff on the server, name and tag it and Collective handles the rest.
- RSS across the board. Virtually anything can be an RSS feed - an artist, genre, category, arbitrary search results etc.
- WebSeed and tracking. This means that your webserver can act as a seed on the BT network.
- Media metadata support. By utilizing the awesome power of the getID3 library Collective is able to collect metadata from virtually any media file.
- Searching
- iTunes-like browsing for quickly finding things.
- Comments and ratings. You can't really build a community-powered site without these nowadays.
- Automatic coverart and reviews. The first one actually works (through Google atm, but might switch to Amazon) but doesn't make that much sense as the whole system is first and foremost designed for original content creators (like podcasters or whatever).
The Miro folks have something like this already (called Broadcast Machine), but it didn't look that great the last time I tried it and it missed many features that I thought were essential).
It was initially planned as a desktop application but a server-side solution made more sense the more I thought about it. Now it seems that to rea
I've set up a test server (logins disabled for now). The system's in pretty bad shape atm but the reason I'm posting all this is that I'm trying to push myself to get working on it again. It's the same trick those quit smoking pamflets recommend - tell everyone you're quitting to raise the stakes for yourself. :) Who knows, maybe it'll even works this time…