Over last weekend (February 6-8), I shared a fantastic time in Brussels with people from the XMMS2 team (and a few thousands over geeks and almost as many beers). We got together, mostly off our Google Summer of Code money, and spent some IRL time thinking of how to make XMMS2 better. Thanks to everyone who was involved, it’s been great fun!
Although tilman and DraX hacked fervently on GenIPC, most of what we worked on wasn’t code, but rather discussions on the organisation of the project, the status of projects waiting to be merged into the main tree (GenIPC, service clients, collections 2.0), as well as future projects we want to explore, such as mergestatus (a pimped up iteration of the merge page) and an official GUI (yes!).
The main issue we identified with organisation is the lack of clear vision of where we are heading. Projects like GenIPC or mergestatus are being worked on without a general and agreed upon (let alone written down) specification of all they entail. The decision we took was to try to get tru back into a role of project manager and require proper wiki pages to be written about all the major features that are being developed. I personally want to start blogging more about thoughts and projects I’m working on (I know I’ve said it before, but this time it is true).
I had several discussions with nesciens, who has been hacking on collections 2.0 last summer, and we identified different topics that should be explained on the wiki and possibly discussed with the rest of the team:
- Advanced (insane) queries (to retrieve all sorts of information and structures from the mlib using collections)
- Source goodness (server magic to make collections select the right value according to a global ranking of sources)
- Token operator (to match tokens, which is what you usually search for, using an external token table)
- Other new collection operators (in particular, related to treating medialists, i.e. keep collections ordered throughout the DAG)
Note: most of the links above are work in progress, meaning they’re not total rubbish, but don’t rely on them to launch your personal space capsule.
Other fancy stuff that has been debated:
- Proper serialisation of the collection DAG over IPC
- Usage of
dict to store collection attributes, possibly richer than strings (already started by anders)
- Idlist as a simple attribute in Idlist collections
- String table (optimisation of strings in the DB to avoid duplication of data)
nesciens has already started updating the todolist/roadmap.
And of course, the super exciting new project that nobody even expected: a common effort to work on an official GUI client!
I have a lots of thoughts about this, and I need to summarise all the discussions related to it at FOSDEM. And that will be the topic of my next post!
(Who said you couldn’t have cliffhangers in blog posts?)