Hi folks. For the general happiness, herein I announce that my GSoC project achieved what I'd proposed three months ago. Although this post is inspired in this project, it doesn't focus on its results. Today's topic is about sharing.
As usual in free software communities, Amarok has always been open to new ideas. Their flow from the most unexpected places and some of them often becomes real. Our software development and design is sustained by collaboration, but are ideas and processes the only things that could benefit from it?
Up to now, in Amarok, we were able to bring some "collaboration between softwares" by the means of some well-known web services. Last.fm, Jamendo and so on. They provide lots of functionality that can enhance the interactivity between you and other people around the world. However, these functionalities often provides no more than a way to access their content and use to restrict some functionalities (e.g. upload content) to the web interface. And since these web services are usually proprietary, we don't have much to do besides providing limited interaction in our desktop applications.
That is, as always we can't rely on proprietary software for anything different from what makes them profit. Even though they have their merits, "part-featured" APIs and imposed limitations makes them as useful as a crutch. You would use one only if you can't walk on your own.
Tomahawk guys understood this problem better than anyone before. They pushed their ideas forward and, as a result of this, we now have a ground-breaking music player with the interactivity that an application from the web 2.0 era deserves. And, fortunately, Tomahawk is free software.
This single characteristic made possible for me to adapt part of their source to fulfil my needs. My GSoC project is done and we now have two players that are able to share music in a decentralised manner. Both can synchronise and stream tracks from each other seamlessly. With no leecher, between the endpoints, to stop us from doing what our society value(a.k.a. sharing) by "rough consensus".
Finally, LibTomahawk isn't perfect yet, but nothing can resist to hard work. It's only a matter of time ;}. Also, if you want to know more about my project, its future, timelines, then just keep in touch with this blog and consider adding it to your favourite feed reader ;}.