Summer of Code: Acceptance and projected milestones

I’m pleased to announce that Google’s Summer of Code has announced which projects have been accepted. I’m pleased to let you know that our own Oliver Chalres and Lukáš Lalinský have been accepted to both work on our Next Generation Schema. Congratulations to both of you — this should be an exciting summer!

As the first act of getting ourselves organized for Summer of Code, the three of us have agreed to the following milestone schedule over the summer:

May 25: Object model and read-only user interface in place. This is essentially equivalent to Lukáš’ NGS-p implemented in Catalyst/Template Toolkit based on Oliver’s work from the last year. With this milestone users will be able to convert an existing database to the NGS schema and be able to browse the data in the new schema via the read-only user interface. No editing will be possible at this point in time.

June 29: The basic types are in place for editing artists, labels, and release-groups. Release and track level edits will not be complete.

July 27: Release and release related edit-types will be in place, but without a complete UI. The release edits will take a lot of work to get right so, we’ll have these edits in place, but may not be able to finish a working UI for them.

Aug 31: All remaining edit types are in place and the NGS enabled server enters a final beta phase.

Note that SoC doesn’t officially start until May 23 — we’re not wasting any time — in face our first milestone is due 2 days after SoC starts. Can you tell we’re serious this year?

Upcoming releases: Release groups and Next Generation Schema

In the past month there has been a ton of activity behind the scenes here at MusicBrainz and I can finally give a cohesive update on our plans for the next few months.

The much anticipated Release Groups release has been coded by Lukas in a weekend code sprint based on the old Mason codebase. Even though we had declared the old codebase as end-of-life, we have decided to push release groups out using the older code in order to satisfy the needs of the BBC and other customers. As part of this release, I will also add ISRC support and include a handful of bug fixes. Expect this release in May — I’ll post again when the date is firmly set.

And what is even more exciting is that we’re about to start work on our much anticipated Next Generation Schema (NGS). Discussed and planned over and over again, we’ve finally settled on an approach that appears to make everyone happy. As part of SoC, we’re likely going to accept Oliver and Lukas’ proposals to work on NGS over the summer. The goal is to implement all of the new schema in one release based on the TemplateToolkit/Catalyst work that Oliver has been working on since last summer. We’re going to take a step back and create a new object model/schema and then glue the TT UI onto the new object model.

The schedule puts the TT/Catalyst/NGS release into final beta test on August 31, with a release following in 15-30 days after that date. Please note, however, that there will be no other release based on Oliver’s TT work before NGS is release in September. We had to skip that release in order to pull in the schedule to make the target date of August 31.

I am quite excited by the work that is being done in the server area right now — we’re on our way to get past some significant hurdles. Just yesterday I got a first glimpse at the MusicBrainz site partially translated to Dutch — startling at first, but quite exciting when you think about it.

Many thanks to Matt Wood at the BBC for having the patience and dedication to work with MusicBrainz. Many thanks to Lukas for the coding sprint to get Release Groups off our collective plate. And of course many thanks to Oliver, Nikolai, Brian for your continuing hard work on TT. And thanks to everyone who has been supporting this team over the past few months.

Please help us test the new Collections feature

Our test server is back online and ready for you to come test Niklas’ new Collection feature!

If you’re interested in taking a look, head to our test server.

Log in with your usual account name and the password ‘
Then head to the Collection menu and give the new feature a spin!

We’re now tracking issues in our bug tracker. Set ticket component to MusicBrainz Server, milestone to Server 2008-11-XX and assign to: Niklas.

Documentation for the new feature is here — its still very basic, please help out with documentation or add your documentation comments to the wiki page. There is also documentation for the web service.

Sorry for the long wait!

UPDATE 1: There is a batch add script — stay tuned for details on this.
UPDATE 2: If you have problems logging in, clear all of your cookies for all domains.

Google Summer of Code projects announced!

Google has announced which summer of code projects and MetaBrainz accepted three sexy proposals. A big, fat round of congratulations go out to:

  • Niklas Berglund, Music Collection: “This project aims to make it easy to keep track of new releases of your favorite music artists, and making it easy to see which of their releases you are missing in your collection.”
  • Oliver Charles, Port the existing mb_server code base to use Template Toolkit templates, “I will split the current Perl code base of mb_server into separate Perl files, and corresponding Template Toolkit templates. I will do so by writing some in-between bridge Perl code, and extracting existing HTML from the mb_server code into templates.”
  • Alexander Hupfer, Wizard for PicardQt: “New users often find that PicardQt is difficult to use or/and have problems to use it the right way. The wizard will solve both shortcomings by guiding the user through the necessary steps when using PicardQt including file import, library organisation and handling of duplicates.”

We’re quite excited by the applications we received this year — our experience from last year allowed us plan our approach better. We were able to quickly identify good students with proposals that we liked and help them along to make their proposals better and to have them fit smoothly into our plans for the next few months. Also from this you can see that we’re going to stick with perl for a while longer while we clean up the existing code base to make it ready for adding more complicated features drawn from the NGS proposal.

This is quite exciting! Thank you to Google for supporting us again and congratulations to Niklas, Oliver and Alexander!

Google Summer of Code 2008

After a bumpy ride in 2007 we plan to participate in Google’s Summer of Code project again. However, we’re going to change quite a few things since only one of our three projects reached completion last year. At the Summer of Code Mentor Summit in 2007, I learned quite a few things about Google’s project that give me a much better clue about what to do for this year.

At the summit I learned that the most successful projects are the ones that are proposed by the students. And, given the number of students who spammed us by pasting our project ideas into their GSoC applications verbatim, we’re likely to not accept any projects based on our own ideas this year. This forces applications to dig into MusicBrainz, if they’re not already part of the project and understand what the project needs before submitting an application.

I will actively encourage students in the MusicBrainz community to participate in GSoC. Even though students may respond with: “I’m not good enough for that!” we’ve seen these students make excellent contributions outside of GSoC that are on par, if not better than accepted students. Students from our community already understand open source and MusicBrainz. Bringing in new students, especially students who are new to open source, can be a lot of work and result in culture shock.

If we do not have enough qualified applications to fill all of the Summer of Code slots that were allocated to us, we won’t fill all of our slots. We’ll give them to other organizations who have too many qualified students, but not enough slots.

This year we will conduct detailed interviews with all of the students applicants who make it close to the final round. We may even devise some sort of test to ensure that the students possess all the skills they claim on their CV.

Summer of Code 2008 should be kicking off very soon — once we have any information for students, we will post them here. Stay tuned!

UPDATE: Leslie let me know that providing an idea list is actually required. It is, however, not required to accept any proposals for these ideas. The above has been updated to reflect this.