Wrapping up Google Code-in 2015

The Google Code-in Google Code‐in is pretty much over for this time, and we’ve had a blast in our first year with the competition in MetaBrainz with a total of 116 students completing tasks. In the end we had to pick five finalists from these, and two of these as our grand prize winners getting a trip to the Googleplex in June. It was a really, really tough decision, as we have had an amazing roster of students for our first year. In the end we picked Ohm Patel (US) and Caroline Gschwend (US) as our grand prize winners, closely followed by Stanisław Szcześniak (Poland), Divya Prakash Mittal (India), and Nurul Ariessa Norramli (Malaysia). Congratulations and thank you to all of you, as well as all our other students! We’ve been very excited to work with you and look forwards to seeing you again before, during, and after coming Google Code-ins as well! 🙂

Rayna Kanapuram MusicBrainz presentation
Indian student Rayne presenting MusicBrainz to her classmates.

In all we had 275 tasks completed during the Google Code-in. These tasks were divided among the various MetaBrainz projects as well as a few for beets. We ended up having 29 tasks done for BookBrainz, 124(!) tasks for CritiqueBrainz, 95 tasks for MusicBrainz, 1 task for Cover Art Archive, 6 tasks for MusicBrainz Picard, 3 tasks for beets, and 17 generic or MetaBrainz related tasks.

Some examples of the tasks that were done include:

Ariessa MetaBrainz infographic
Finalist Nurul Ariessa Norramli’s MetaBrainz infographic.

In all, I’m really darn happy with the outcome of this Google Code-in and how some of our finalists continue to be active on IRC and help out. Stanisław is continuing work on BookBrainz, including having started writing a Python library for BB’s API/web service, and Caroline is currently working on a new icon set for the MusicBrainz.org redesign that can currently be seen at beta.MusicBrainz.org.

Again, congratulations to our winners and finalists, and THANK YOU! to all of the students having worked on tasks for MetaBrainz. It’s really been an amazing ride and we’re definitely looking forward to our next foray into Google Code-in!

One month of Google Code-in

So today it is a month ago since the Google Code-in competition started and 18 days until it is ending. I wanted to take this opportunity to talk a bit about some of the things that have happened so far and where we’re at.

Google Code‐inSince December 7th when Google Code-in started, we have been in touch with 107 students on the Google Code-in site, of which 70 have completed at least one task and thus earned a digital certificate from Google. 11 students have so far earned themselves a t-shirt from Google by completing 3 or more tasks. The student with the highest number of completed tasks right now sits at 17 tasks, followed by one at 16 and another at 15 completed tasks. The student with the 10th most tasks completed has 3 tasks to their name.

Stanisław Szcześniak presenting about MusicBrainz
Stanisław Szcześniak, GCI student from Poland, presenting about MusicBrainz.
We have had 7 students do presentations on MusicBrainz in at least India, Romania, England, and Poland; about 50 reviews written for CritiqueBrainz with a few more in progress; a couple of MusicBrainz how to’s written for the wiki; one video tutorial made (which hasn’t been uploaded yet); a bunch of tests written for BookBrainz; updated and have had made a bunch of icons/logos in various places; a bunch of code patches and tests written for almost all our projects, as well as for beets (a 3rd party music file tagger and organiser heavily using MB data).

We have also had to report 3 students for plagiarising leading to their disqualification. 🙁 However, compared to the amount of work and number of students, I think it’s a decently small number.

Overall, I am (still!) really excited about MetaBrainz finally being a part of Google Code-in, and I definitely think the lack of sleep the first week and newbie questions on IRC and on the GCI tasks are worth it. We’re getting some great stuff done, that we may not have gotten around to in any reasonable time ourselves, and we get to help all these students learn about programming, open source, open data, licenses, and a bunch of other things. I’m happy and I’m not looking forward to picking only 5 finalists and only 2 winners. There are definitely more than that I would personally like to see in both categories. 🙂

Have you had any experiences with or thoughts on our Google Code-in participation so far? Please do share them with us in the comments!

Google Code-in announcement! – and call to arms

As many of our loyal blog readers will know, the MetaBrainz Foundation has been part of the Google Summer of Code for several years. This year we’re going to expand into the realm of Google Code‐in!

Google Code‐inGoogle Code‐in, or GCI, is a program aimed at pre-university students aged 13–17. Unlike the Summer of Code (GSoC), the students will have a large number of smaller tasks to work on, instead of working on one large/huge task for the duration of the summer. It is set up as a competition and the students who do the most work will be eligible to win some Google prizes.

But what does this have to do with us? I’ll tell you what! We were accepted in this year’s Code-in! Over the last few weeks, I and a couple of other people (mostly on IRC) have been preparing for the GCI, but that does not mean we’re done yet – we can still very much use more hands. The competition starts on December 7th—that’s Monday next week! This means that we will have a flood of young people come into #musicbrainz and #metabrainz on IRC as well as possibly the forums. Please be courteous and patient; these young people will hopefully stick around Music– and MetaBrainz for long after the GCI and become full‐blown members of the community, but they need some incubation time. (Also, if you only sometimes frequent IRC, next week in particular would be a lovely time to have “all hands on deck”. Doubly so if you’re in the far eastern hemisphere as students will be coming from all different time zones and regions, and we only have a couple of East Asian and Australasian people in the IRC rooms.)

We are also continually looking for task suggestions. They can be for or from pretty much anything related to any MetaBrainz projects (we will have a number of *Brainz related tasks for beets for example), so let your creative juices flow and let us know what (small) things you would like some of these students to work on. The wikipage has some more information about what kind of tasks are acceptable. Keep in mind that they should generally be doable within 3–6 hours, but if you’re in doubt, feel free to poke one of our GCI mentors and ask.

Speaking of mentors, we could really use more mentors who are familiar with our various code bases. If you think that’s you, please, please, please poke me (Freso) on IRC and we can get things sorted. Of course, even if you don’t think you’ll be able to be a dedicated mentor, just hanging around IRC and helping students will also be a huge help and relieve the mentors somewhat to spend time on reviewing submitted work, entering additional tasks, etc.

I’m personally, and I know others are too, really excited about this. It’s a great opportunity to hopefully get a lot of low‐hanging fruit picked off as well as recruiting some new (hopefully) long‐term community members and contributors. However, it is also our first year in this program, so none of us really know what we’ve signed up for. It’s an adventure! And I hope you will be joining us. 😉

PS. If you know any pre-university students aged 13–17, tell them about the program and maybe use this as a way to lure them into the Brainzverse! 😄

August Community Revisit

Ohoi m’hearties, it’s time for the first monthly Community Revisit, where we’ll revisit what happened in MetaBrainzLand during the last month. Ready for the ride? Leggo!

The primary thing happening this month has likely been the changes in the MetaBrainz employee line-up following Ian’s departure in July. In the beginning of the month, Freso (wait, hey, that’s me!) was pulled on board as Community Manager (a brand new position for MetaBrainz too!), and just at the end of the month, GSoC wonder child Roman “Gentlecat” Tsukanov was hired as the new software engineer. So hi to us two! 🙂

Speaking of GSoC, the Google Summer of Code, this year’s edition is also fast coming to an end, and our four students and their projects are closing up and giving their work the final touches to have them ready to go live. Don’t be surprised if you hear more about these projects soon.

One thing that did go live during August, in no small part thanks to Ben “LordSputnik” Ockmore and Leo_Verto: the new IRC chat logger! Chat logs from IRC are now available at http://chatlogs.metabrainz.org/ – the site still needs some MetaBrainzifying, but Ben has done a great job of importing (pretty much) all the old chat logs to the new system and the bot is running in all the official MetaBrainz channels. If you’re on IRC (or you just like poking at the IRC logs), be sure to say “Thank you!! <3” to LordSputnik and Leo_Verto next time you see them around!

Another person who has made a mark in the last month was Alex a.k.a. caller#6, starting up the discussion about the current situation of MusicBrainz’ Area entities. Be sure to check out that blog post and let your voice be heard, if you don’t feel like it’s being represented already. The next instalment should be out before long.

We also had two server updates (pretty much all bug fixes) and an updated Virtual Machine image was finally released for the more tech oriented people.

This about rounds off the August Community Revisit. What do you think about the format? Did I miss any important community happenings? Any other comments? This is a brand new venture, so nothing’s set in stone yet!

From Denmark with love,
Freso

Announcing the beta launch of CritiqueBrainz

I’m proud to announce that we’ve launched a beta version of our new project: CritiqueBrainz.

CritiqueBrainz is a music review site, where anyone can write a music review for an artist or a release-group (album, single, etc). Unlike Wikipedia’s neutral point of view policy, this site is about passionate reviews about music. If an album is horrible, please write a review about why it is horrible. If it is great, please write one telling us what makes it great.

All of the reviews in CritiqueBrainz will be Creative Commons licensed. The user has a choice to license their review under CC-by-nc-sa (disallowing commercial use) or CC-by-sa (allowing commercial use). To get the site started, the BBC was kind enough to send us their collection of almost 9,000 CC licensed reviews. Go and have a look — there are a lot of reviews for you to read, right now!

CritiqueBrainz is a new web site that was originally written by Maciej Czerwiński for last year’s Summer of Code. All of the goals for the project were met last year, but that didn’t leave us with a site that was ready for deployment. For this year’s Summer of Code, Roman Tsukanov picked up the project and immediately started fixing bugs, making improvements and generally rocking the project into stability and drastically improved the look and feel of the site. On the beginning day of Summer of Code, we’re ready for a beta release!

This past weekend, I attended Music Hack Day San Francisco and worked with Roman to add Spotify integration into the site. If you have a Spotify account, you can listen to the music as you read the reviews. So far, we’ve matched 250,000 release-groups in MusicBrainz to Spotify! Even if an album doesn’t have a review, you can still browse all of MusicBrainz via CritiqueBrainz and if we have a matched Spotify album, you can listen to it by clicking the play button under the cover art.

If an album you find doesn’t have a match in Spotify, we invite you to help us find a match and submit it to Spotify. Click on the “Match this!” link, which will execute a search via Spotify’s API to try and find a matching album. Due to some limitations in the Spotify API, this doesn’t work as well as we want to — we plan to pester Spotify to improve their API to make this a better experience.

We’re hoping to make CritiqueBrainz a user site that uses more cover-art and white space to make a site that is friendlier to browse the amazing pieces of information that MusicBrainz has collected. Unlike the data nerds at MusicBrainz, not everyone loves information overload; this site should hopefully make non-data nerds happy about MusicBrainz data.

If you find a bug, or have a suggestion for improving the site, please file a bug report here and Roman will have a look at it.

Thanks to everyone who had a hand in making this project a reality and thanks to Google’s Open Source programs office for making Summer of Code happen!

Summer of Code: We’ve accepted these projects

I’m pleased to announce the following 5 projects were accepted for this round of Summer of Code:

  • A new website for Picard and its plugins by Shadab Zafar: Give Picard a new website that will be used to host everything Picard related especially its plugins. Also add an interface which can be used to download those plugins right from picard.
  • MBS-6201: Add an “event” entity by reosarevok: Finalising the basic implementation of MBS-799 by adding an event entity to MusicBrainz.
  • Finishing and deploying CritiqueBrainz by Roman Tsukanov: Last year Maciej Czerwiński started work on repository for Creative Commons-licensed reviews – CritiqueBrainz project. He implemented core functionality: storage, API, and web interface. During Google Summer of Code 2014 I’d like to continue his work, finish and deploy the project.
  • MB UI TLC by navap: Spend some major TLC on all the templates and UI of MB.
  • Move MusicBrainz Search to SOLR by Wieland Hoffmann: The goal of this project is to move the MusicBrainz Search server to use SOLR for faster and in-place index updates.

The whole MusicBrainz dev team is very excited to have students take on these projects. We’ve been waiting for events for an eternity and after 9 months of no progress, I’m stoked that soon we will release CritiqueBrainz.

Congratulations to mineo, navap, duffer, gentlecat and reosarevok. And big thanks to Google for having us in Summer of Code again.

Venue and Studio Support: Introducing Places

MusicBrainz now supports venues and studios via our new “place” entity!

This was one of our Google Summer of Code projects for this year and many thanks to Nicolás Tamargo for his work on it. We released his work a few weeks ago and after a few initial hiccups, it’s looking good and we want to let you all know about it. 🙂

So what can we do with places?

The most obvious thing we can do now is store information about recording, mixing and mastering locations.

For example, the studios listed in the credits for Universe by Kyoko Fukada:

places-releasecredits

and the venue for the recordings on Live in Cartoon Motion by Mika:

places-recordingcredits

We can of course link the place to a variety of external sites, as can be seen in the list of URLs for Wembley Arena:

places-urls

Some places are made up of several parts. In those cases, we can link one place as being part of another. For example the various studios at Abbey Road Studios:

places-parts

or the hall and theatre of the Barbican Centre:

places-parts2

We were already able to add engineers to the database as artists, now we can also say which studio they work at, as seen here for the studio Railroad Tracks:

places-engineers

Many orchestras and sometimes other artists have a home venue where they perform on a regular basis. These can now be linked, like in you can see for the Barbican Centre: Barbican Hall:

places-primaryvenue

A premiere is sometimes held for a work and now we can link those works to where the premiere was held, e.g. the following works which were premiered at Carnegie Hall:

places-premiere

The place can also have coordinates, which make it possible to pinpoint the location on a map. The MusicBrainz website doesn’t show any maps at present, but here’s a map of all places with coordinates by Mineo:

places-map50

Events?

No, we do not yet support events.

Thanks to nikki for writing this post.

Summer of Code: We're in for another round!

I’ve not had a chance to blog about our participation in Google’s Summer of Code program this year, so it is time to fix this now. As you might guess, we’ve been accepted into the program again and were given 3 slots. We awarded the slots to:

  • Rearchitect/Improve the Release Editor by Michael Wiencek (bitmap): This proposal aims to re-work the guts of our Release Editor and to change the architecture to use one page and not a series of pages. This project is potentially massive, so the goal is to work on the guts of the editor while not making many (if any!) changes to the UI. But, bitmap is a veteran GSoC student and long time Picard contributor, so we’re excited to have him back!
  • MBS-6200: Add a “place” entity by Nicolás Tamargo (reotab): Our very own Reosarevok joins the GSoC ranks to implement the Places support. In our previous schema change release we added support for Areas and Reotab aims to finish this project by implementing Places. For more discussion and background on Areas and Places, please see this ticket in jira.
  • Repository for music reviews by Maciej Czerwiński (mjjc): The goal of this project is to create a site that allows anyone to write a non-neutral point of view review of an artist, a release or a recording. All of the reviews in this site will be licensed under a Creative Commons license to be compatible with MusicBrainz and its data.

I’m really excited by all of these projects and the people who are contributing. Summer of Code started yesterday, so we’ll see very soon what our three students will accomplish.