Difference between revisions of "Development/Summer of Code/2015"

From MusicBrainz Wiki
Line 7: Line 7:
  
 
=== Add in site messaging in MusicBrainz ===
 
=== 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:
 +
 +
# Have options to let people choose whether to receive emails, notifications, or a mixture of both.
 +
# 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.
 +
# If someone has unread notifications for more than $x days, send them an email anyway.
 +
# Include a visual notification on the site to indicate that a user was pending messages.
  
 
See: [[jira:MBS-1801|MBS-1801]]
 
See: [[jira:MBS-1801|MBS-1801]]
 +
  
 
=== Create a unified browse and search interface ===
 
=== Create a unified browse and search interface ===
Line 14: Line 24:
 
See [[jira:MBS-7789|MBS-7789]]
 
See [[jira:MBS-7789|MBS-7789]]
  
=== Proper implementation of AreaBot ===
+
=== Finish implementation of SOLR Search ===
  
Proposed mentor: ''nikki''
+
Proposed mentor: ''ianmcorvidae''<br>
  
Re-write area bot to be robust and stable
+
Languages/skills: Java, SOLR, Lucene
  
=== Finish implementation of SOLR Search ===
+
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:
 +
 
 +
* https://github.com/mineo/mb-solrquerywriter
 +
* https://github.com/mineo/mbsssss
 +
* (TBC: more are needed here)
 +
 
 +
This project will be split into multiple parts:
 +
 
 +
# Finish implementing the remaining needed features to bring it up to feature parity with our existing search setup.
 +
# Deploy the project to a test server
 +
# Fix bugs that the community finds
 +
# Help deploy into production
  
Proposed mentor: ''ianmcorvidae''<br>
+
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!
Proposed student: ''mineo''
 
  
 
=== Moderation interface for CritiqueBrainz ===
 
=== Moderation interface for CritiqueBrainz ===

Revision as of 14:25, 23 February 2015

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.