I've been looking for an artist to make me a nice logo ever since the start of the project. A few artists gave it a try but they didn't succeed in creating anything worth showing to anyone. I couldn't possibly blame them since:
- Its not very clear to everyone what Rygel is and I suck at explaining things.
- Its hard to represent it even when you learn what it is.
So what happened was that I told Sebastian that I was so jealous of his new logo, he asked Klaus to attempt to do the same for Rygel. He did and after a bit of talking and him trying different ideas, we finally agreed on this:
Some people like it, some people don't but I like it. I think Klaus did a pretty good job, keeping in mind this wasn't an easy one. If you are one of those who don't like it, feel free to provide better alternatives or suggestions for Klaus.
Tracker or no Tracker
About an year ago, we (mostly Jens Georg) wrote a plugin (media-export) for Rygel that exposes folders on filesystem on the UPnP network. Although that meant us re-implementing some wheels and getting hated (no i know Ivan still loves me :)) for not being active member of Tracker revolution, I think this was still the right decision because:
- The stable tracker version (0.6) we were using sucked big time in many ways, a fact admitted by every Tracker developer I've talked to regarding this.
- AFAIK most GNOME developer (not involved with Tracker project) and distribution packagers didn't feel very positive about the project. Rygel was getting part of the heat for depending on it and that wasn't helping in gaining popularity for a new project.
- It wasn't really very difficult to implement media-export in Vala, I didn't need to spend a lot of time on it myself and I didn't feel like standing in the way of a new plugin that I'll get almost for free and will satisfy a lot of people.
So now its mid'ish 2010, the world has changed and so has Tracker:
- Tracker is now a blessed GNOME dependency. That means no one can say 'boo' at me anymore for depending on Tracker, while I walk the streets. More than enough people are now positive about the project.
- New Tracker APIs are very different from that of 0.6, richer easier, dynamic, complete and future proof. Not to mention its based on existing and proven technologies/concepts: RDF and Sparql.
- Most of the performance issues that tracker 0.6 was known for, has been addressed appropriately.
- Tracker is now nicely divided in different components so an application can easily depend only on the parts that it really need. For example, Rygel won't have to depend on evolution since it doesn't need any email-related stuff.
- I made sure 'nmm' ontology of Tracker has the needed UPnP properties that I will need in Rygel.
Some people still just don't like the very idea of Tracker and for those lost souls, I quote Owen Taylor:
I think it will definitely be hard to implement our ideas without something that looks a lot like Tracker, and since we have Tracker something that looks a lot like Tracker is most likely Tracker :-)
So keeping these facts in mind I've decided to:
- Strip down almost all the functionalities of media-export so it only exposes the file-system hierarchies on UPnP network without any metadata. Actually this is exactly what Lennart wanted in the first place when he asked for this plugin. With metadata extraction in place, we are no better than tracker 0.6 anyway.
- Remove media-export from preferences UI. Keeping in mind what kind of users will still use media-export in its new form, its quite enough that they can configure the directories to export by manually editing the configuration file.
- Provide an easy way for the user to specify which media from tracker-store to expose on UPnP network. Since user chooses the files to harvest for metadata and keep in tracker-store using tracker's preferences UI, I think it's better if this option is also provided in there but I need to discuss with Ivan yet regarding this. If that is not feasible, I'll do this in rygel-preferences.
- Unit tests: In the last release we introduced a few unit tests. This is just the beginning and we intend to write units for at least all core modules.
- MediaServer v2: Iago and Juan talked about this in their blog and announced that they already have implemented v2 so now I have to do my part and implement the consumer part in Rygel: i-e Port v1 code to v2 and I am already on it.
- DLNA compliance: Looking at the results of DLNA CTT session we had last time, we've a lot of work to do here. Hopefully mostly small fixes here and there.
- Getting married on 29.05.2010. This is the hardest one but I'm sure I can do it. :)
Some facts that I forgot to mention/explain when I posted the blog entry and to reply to some comments I received here and on IRC:
- media-export is not being dropped. Please read carefully before making such assumptions and then saying 'Boo' to me for that. :)
- I still don't plan to have a hard dependency on Tracker at all. It will still be one of the plugins. If you want something like Tracker that is not tracker, you are more than welcome to take the existing media-export code and maintain it as separate or part of your project/process.
- Once gst-convenience library that Edward and Arun are working on, is in a stable state and delivers to it's promises of speeds (so far it has), we'll re-add export of metadata in media-export but this time around, we'll do it on the fly and won't need to deal with databases and stuff.
- Tracker has always (even in the 0.6 days) provided easy ways for specifying which directories you want it to index so once we've a way to tell it which of the indexed media to expose on UPnP, we've all the features the media-export currently provides.
I'll leave the comments about the Logo for Klaus to reply. :)
OK OK, I get it that I am making a lot more people unhappy than I am making happy with the 'media-export' plan. So based on that and the fact that Jens is willing to keep maintaining media-export for me, I'll leave this as is. I'll just move code in the core that only media-export uses into media-export plugin. I myself will embrace the future and concentrate on Tracker integration. :)