Development/Summer of Code/2015

From MusicBrainz Wiki
Jump to navigationJump to search

Mentors

This year Robert Kaye, Ian McEwen and Michael Wiencek will probably be amongst our mentors. That's ruaok (Robert), ianmcorvidae (Ian) and bitmap (Michael) on IRC, if you want to come and speak to us first. Some potential mentors are listed by each project; this is far from a normative list, but it might give you somebody to ask about the project.

Suggestions

This is our set of starting ideas for 2015. Add more ideas if you have them!

Add in site messaging in MusicBrainz

Proposed mentor: (none yet)

Currently MusicBrainz only has a primitive system for sending messages to other editors. We would like to improve this system and add a few more features that are specific to how MusicBrainz works. The exact details of how it would work would need further discussion, but some ideas include:

  1. Have options to let people choose whether to receive emails, notifications, or a mixture of both.
  2. Have a daily summary email that says how many unread notifications and messages you have. Something like that would probably be good for people who don't visit the site very often.
  3. If someone has unread notifications for more than $x days, send them an email anyway.
  4. Include a visual notification on the site to indicate that a user was pending messages.

See: MBS-1801


Create a unified browse and search interface

See MBS-7789

Finish implementation of SOLR Search

Proposed mentor: ianmcorvidae

Languages/skills: Java, SOLR, Lucene

Last year mineo created a new SOLR based search infrastructure as part of his Summer of Code project. The complete project was beyond the scope of the summer, so we would like to finish the project this year. Interested students should take a look at the following repositories:

This project will be split into multiple parts:

  1. Finish implementing the remaining needed features to bring it up to feature parity with our existing search setup.
  2. Deploy the project to a test server
  3. Fix bugs that the community finds
  4. Help deploy into production

This project will require an advanced student who is already comfortable with programming and who wants to gain some DevOps experience. If you are interested in this project, please come to the MusicBrainz devel channel on IRC and ask about this project. Close involvement with the community is a must!

Moderation interface for CritiqueBrainz

Proposed mentor: ruaok

Last year we released beta version of our new CritiqueBrainz project. We have a system for reporting spam, but no good interface to act on reports that come in from it. It would be great to have a friendly UI for moderation tasks like this.

There are a lot of other useful things that can be done with CritiqueBrainz. Some people request support for more MusicBrainz entity types to review. There are a lot of untouched tickets in the bug tracker which can be fixed as a part of this project. Or you can come up with your own idea!

AcousticBrainz

Proposed mentor: ruaok or alastairp

AcousticBrainz is our new project that aims to crowd source acoustic information for all music in the world and to make it available to the public. We already have low-level information about more than a million tracks. What we need is a good way for users and developers to interact with all this data and help improve algorithms that are used to analyze it.

This project should involve implementation of the new module that would allow people create datasets with information that we collect. Datasets need to have multiple classes with associated tracks. These datasets will then be used to train machine learning models.

About proposals

Before you dive in and send a proposal to us through Google, it's a good idea to take some time and learn about the MusicBrainz community. At MusicBrainz we pride ourselves for having a strong community - most of us know each other in some way, and some of us know each other face to face from development summits.

A good way to get a feel of this would be to lurk around in IRC, or to talk about your proposals on the mailing lists.

If you're not sure where to start, Development/Summer of Code/Getting started might help.