Google Code-in/2015/Task suggestions: Difference between revisions

From MusicBrainz Wiki
Jump to navigationJump to search
(→‎General: Add categories.)
(Reset to revision 69968, as this was the last revision relevant for our GCI 2015 participation. Later additions have been added to Google Code-in/2016/Task suggestions.)
 
(46 intermediate revisions by 9 users not shown)
Line 5: Line 5:
* [https://developers.google.com/open-source/gci/resources/example-tasks Example tasks from previous GCI's]
* [https://developers.google.com/open-source/gci/resources/example-tasks Example tasks from previous GCI's]


{{Note|Please denote in parentheses which of the categories the task belongs to: coding (CODE); documentation/training (D/T); quality assurance (QA); user interface (UI); or outreach/research (O/R)}}
{{Note|Please mark in parentheses which of the categories the task belongs to (multiple can be assigned): coding (CODE); documentation/training (D/T); quality assurance (QA); user interface (UI); or outreach/research (O/R)}}


== General ==
== General ==
; Create GCI Student landing page (D/R)
; Create GCI Student landing page (D/T)


; QA tasks in all projects (QA)
; QA tasks in all projects (QA; pos. O/R)
: "As a new user, try to do X and let us know what you found confusing or too complicated".
: "As a new user, try to do X and let us know what you found confusing or too complicated".

; Give a presentation to your class about {Meta,Music,Book,Listen,Acoustic,Critique}Brainz (O/R)
: Either about the collection of projects, or about a specific project.

; Make an infographic explaining how the various *Brainz are connected/related (O/R)

; Organise an edit sprint (O/R)

; Make a poster for use when organising possible edit sprints (O/R)

; Update (outdated) wikipages


== MusicBrainz ==
== MusicBrainz ==


===Wiki / Docs (D/T)===
; Make a (screencast) video explaining how to do X
*[[jira:MBS-6516]] MusicBrainz Programming Guide
*[[jira:MBS-5307]] Web Service (ws/2) Documentation
*[[jira:MBS-8659]] Wikidocs - incorporate wiki categories (D/T; CODE)
*How to create reports
*How to create a ticket in the bug tracker

;Create a glossary template (wikipedia has some good ones)

; Make a (screencast) video explaining how to do X (D/T; O/R)
: X = add release, add artist, add work, edit release, ...
: X = add release, add artist, add work, edit release, ...


; <s>Create a user with as complete information as possible, report any oddities (QA; O/R?; UI?; beginner)</s>
; [[jira:MBS-8623]]
: Fill out at last location, languages, and bio. Preferably also the other information.
: Will probably need [[User:Bitmap]] or someone to help the student find out where the fix is supposed to be at. #Perl
: Oddities could include: bad translations, errors, something is non-intuitive, ...



; Icon-related tickets (designing/displaying)

===Icon-related tickets (designing/displaying) (UI; CODE)===
: Some of these might involve two different tasks, one to design the icon and one to implement it (in some cases the latter might be a bit too tricky but the former still useful).
: Some of these might involve two different tasks, one to design the icon and one to implement it (in some cases the latter might be a bit too tricky but the former still useful).
* '''[[jira:MBS-8000]]''' - Improve interface icons for better support of higher pixel density displays
* '''[[jira:MBS-8000]]''' - Improve interface icons for better support of higher pixel density displays (UI)
* '''[[jira:MBS-4644]]''' - Indicate which releases have CAA art in listings
* '''[[jira:MBS-4644]]''' - Indicate which releases have CAA art in listings (UI; CODE)
* '''[[jira:MBS-3491]]''' - Indicators for collection items
* '''[[jira:MBS-3491]]''' - Indicators for collection items (UI; CODE)
* '''[[jira:MBS-8625]]''' - Add data quality icons
* <s>'''[[jira:MBS-8625]]''' - Add data quality icons (UI; CODE)</s> (added design only so far)
* '''[[jira:MBS-6869]]''' - Show video flag when displaying work recordings
* '''[[jira:MBS-6869]]''' - Show video flag when displaying work recordings (UI; CODE)
* '''[[jira:MBS-6898]]''' - Show video flag when displaying performances
* '''[[jira:MBS-6898]]''' - Show video flag when displaying performances (UI; CODE)
* '''[[jira:MBS-7070]]''' - Missing icon (small version) for area, place and work
* <s>'''[[jira:MBS-7070]]''' - Missing icon (small version) for area, place and work (UI; CODE)</s>
* '''[[jira:MBS-2421]]''' - Small icon near recording / work / release / artist / ... names to distinguish them (depends on 7070 and ideally on the following three)
* '''[[jira:MBS-2421]]''' - Small icon near recording / work / release / artist / ... names to distinguish them (depends on 7070 and ideally on the following three) (UI; CODE)
* '''[[jira:MBS-8626]]''' - Add an icon for instruments
* <s>'''[[jira:MBS-8626]]''' - Add an icon for instruments (UI; CODE)</s>
* '''[[jira:MBS-8627]]''' - Add an icon for events
* <s>'''[[jira:MBS-8627]]''' - Add an icon for events (UI; CODE)</s>
* '''[[jira:MBS-8628]]''' - Add an icon for areas
* <s>'''[[jira:MBS-8628]]''' - Add an icon for areas (UI; CODE)</s>
* '''[[jira:MBS-1352]]''' - Different icon for Unknown/Person/Group on Artist pages
* <s>'''[[jira:MBS-1352]]''' - Different icon for Unknown/Person/Group on Artist pages (UI; CODE)</s>


; Sidebar icon updating
; Sidebar icon updating
* '''[[jira:MBS-8565]]''' - Update the Discogs logo used in the sidebar
* <s>'''[[jira:MBS-8565]]''' - Update the Discogs logo used in the sidebar (UI; CODE)</s>
* '''[[jira:MBS-8574]]''' - Update the Google+ logo used in the sidebar
* <s>'''[[jira:MBS-8574]]''' - Update the Google+ logo used in the sidebar (UI; CODE)</s>


== MusicBrainz Picard ==
== MusicBrainz Picard ==


; Make a (screencast) video explaining how to do X (D/T; O/R)
; Assorted tickets
: X = add release, add artist, add work, edit release, ...
: https://gist.github.com/mineo/0ddf2d3dbb7a05ae8391


; [[jira:PICARD-717]]
; [[jira:PICARD-22]] (CODE; UI)
: Link to Picard Scripting page under 'File Naming'

; [[jira:PICARD-24]] (UI; pos. CODE)
: Red/Green indication icons difficult to read for colour blind users

; [[jira:PICARD-114]] (CODE; UI)
: Link to documention for file naming in preferences

; [[jira:PICARD-226]] (CODE; poss. UI)
: Automatic clustering

; [[jira:PICARD-692]] (CODE; UI)
: "Play File" button should be renamed to "Open in Player"

; [[jira:PICARD-717]] (CODE; beginner)
: Picard default name files script refinement

; [[jira:PICARD-756]] (CODE; UI)
: MusicBrainz/AcoustID entities should be hyperlinked in Picard


== CritiqueBrainz ==
== CritiqueBrainz ==


; Add and publish review for your favourite album and note any issues (D/T; O/R; QA?)
* '''[[jira:CB-192]]''' - Add link to CoverArtArchive on /artist and /release-group pages
: Non-unique task. Split up in multiple tasks?
* '''[[jira:CB-188]]''' - Translation of "CritiqueBrainz is a repository for..." missing

* '''[[jira:CB-186]]''' - Showing placeholder cover art image for events
* '''[[jira:CB-184]]''' - No good way to tell which entity type review is associated with
* <s>'''[[jira:CB-192]]''' - Add link to CoverArtArchive on /artist and /release-group pages (CODE; UI)</s>
* '''[[jira:CB-179]]''' - Hidden reviews shouldn't be included in public data dumps
* <s>'''[[jira:CB-188]]''' - Translation of "CritiqueBrainz is a repository for..." missing (CODE; QA)</s>
* '''[[jira:CB-172]]''' - "Notice! Please sign in to access this page" looks weird
* <s>'''[[jira:CB-186]]''' - Showing placeholder cover art image for events (UI; CODE)</s>
* '''[[jira:CB-171]]''' - Mapping page fails to load if Spotify doesn't return info about an album
* <s>'''[[jira:CB-184]]''' - No good way to tell which entity type review is associated with (UI; CODE)</s>
* '''[[jira:CB-163]]''' - Add info about compiling styling into installation instructions
* <s>'''[[jira:CB-179]]''' - Hidden reviews shouldn't be included in public data dumps (CODE; QA)</s>
* '''[[jira:CB-160]]''' - Add a note that will warn users that drafts are not private
* <s>'''[[jira:CB-172]]''' - "Notice! Please sign in to access this page" looks weird (UI; CODE)</s>
* '''[[jira:CB-154]]''' - Document data dump importing process
* <s>'''[[jira:CB-171]]''' - Mapping page fails to load if Spotify doesn't return info about an album (CODE; QA)</s>
* '''[[jira:CB-146]]''' - Add embedded player into review editor
* <s>'''[[jira:CB-163]]''' - Add info about compiling styling into installation instructions (D/T)</s>
* '''[[jira:CB-134]]''' - Show more information about Spotify albums on search page for matching
* <s>'''[[jira:CB-160]]''' - Add a note that will warn users that drafts are not private (UI; CODE)</s>
* '''[[jira:CB-128]]''' - Web API documentation should have usage examples
* <s>'''[[jira:CB-146]]''' - Add embedded player into review editor (UI; CODE)</s>
* '''[[jira:CB-123]]''' - Display review language
* <s>'''[[jira:CB-134]]''' - Show more information about Spotify albums on search page for matching (UI; CODE)</s>
* '''[[jira:CB-117]]''' - Use "identicon" Gravatar instead of "mystery-man" for users without email address
* <s>'''[[jira:CB-128]]''' - Web API documentation should have usage examples (D/T)</s>
* '''[[jira:CB-114]]''' - Make review classes less confusing
* <s>'''[[jira:CB-123]]''' - Display review language (UI; CODE)</s>
* '''[[jira:CB-111]]''' - Make language selector more visible
* '''[[jira:CB-117]]''' - Use "identicon" Gravatar instead of "mystery-man" for users without email address (UI?; CODE?)
* <s>'''[[jira:CB-114]]''' - Make review classes less confusing (D/T?; UI?; CODE?)</s>
* <s>'''[[jira:CB-111]]''' - Make language selector more visible (UI; CODE)</s>


== ListenBrainz ==
== ListenBrainz ==


; Import your Last.FM scrobble history and note any issues and glitches (O/R; QA?)
* '''[[jira:LB-85]]''' - Username in the profile URL should be case insensitive

* '''[[jira:LB-35]]''' - Write API documentation
* '''[[jira:LB-85]]''' - Username in the profile URL should be case insensitive (CODE; QA)
* '''[[jira:LB-35]]''' - Write API documentation (D/T)


== Cover Art Archive ==
== Cover Art Archive ==


; [[jira:CAA-79]]
; [[jira:CAA-79]] (CODE; beginner)
: Finish https://github.com/metabrainz/coverart_redirect/pull/14
: Finish https://github.com/metabrainz/coverart_redirect/pull/14
: *Very* small! #Python
: *Very* small! #Python #Git


== BookBrainz ==
== BookBrainz ==
* '''[[jira:BB-52]]''' - Add text to all buttons
* <strike>'''[[jira:BB-52]]''' - Improve button layout (U, C)</strike>
* '''[[jira:BB-101]]''' - Alias adding should have a button for sortname copy
* <strike>'''[[jira:BB-101]]''' - Alias adding should have a button to guess sortname (C)</strike>
* '''[[jira:BB-87]]''' - Support for deprecated relationships
* <strike>'''[[jira:BB-87]]''' - Support for deprecated relationships (C)</strike>
* <strike>'''[[jira:BB-134]]''' - Dynamic default alias implementation (C, U)</strike>
* <strike>'''[[jira:BB-135]]''' - Create Calibre plugin to pull metadata by BBID (R, C)</strike>
* <strike>'''[[jira:BB-136]]''' - Create Calibre plugin to search BookBrainz with existing/user-input metadata (R, C)</strike>
* <strike>'''[[jira:BB-137]]''' - Integrate Bootswatch Cosmo UI theme with site (R, U, C)</strike>
* <strike>'''[[jira:BB-138]]''' - Create alias style guidelines (D, R)</strike>
* Tests
* Material UI
* Reactification
* User scripts

== 3rd party projects ==

=== [http://beets.radbox.org/ beets] ===

; https://github.com/sampsyo/beets/issues/1629 (CODE)
: Add an AcousticBrainz plugin, part 1 (easy): Retrieve AB information based on a recording MBID.

; https://github.com/sampsyo/beets/issues/1629 (CODE)
: Add an AcousticBrainz plugin, part 2 (medium): Perform AB extraction and submission (like abzsubmit).

; https://github.com/sampsyo/beets/issues/1719 (CODE)
: Add a new ListenBrainz plugin to fetch play data.

; https://github.com/sampsyo/beets/issues/1547 (CODE)
: Fetch a large batch of new MusicBrainz data by refactoring the way beets stores source data to make it more flexible.

; https://github.com/sampsyo/beets/issues/1234 (CODE)
: Tolerate MusicBrainz recording ID changes when updating metadata.

; https://github.com/sampsyo/beets/issues/1089 https://github.com/sampsyo/beets/issues/1210 (CODE)
: Ignore video and silence tracks identified by MusicBrainz when searching for missing tracks.

; https://github.com/sampsyo/beets/issues/654 (CODE)
: Use MusicBrainz "pseudo-releases" to get transliterated metadata.

; https://github.com/sampsyo/beets/issues/216 (CODE)
: Use MusicBrainz OAuth instead of storing username and password in the config file.

; https://github.com/sampsyo/beets/issues/406 (CODE)
: Fetch and store the musicbrainz_releasetrackid in beets.

Document the workflow for submitting your carefully-crafted beets metadata to MusicBrainz.
(D/T)

Write a post for the beets blog about how to "give back" by finding music in your beets library that MusicBrainz doesn't have yet and submitting new releases. (And the same for submitting cover art that you have but the Cover Art Archive doesn't.)
(O/R)

Try importing your entire music library using beets and keep a log of what it got right, what it got wrong, and what was missing from MusicBrainz altogether.
(QA)

Latest revision as of 21:31, 24 October 2016

Various small-ish thing that may be good for Google Code-in. Please feel free to add stuff to this page. Take a look at the three links below for inspiration about what kind of things are eligible for being GCI tasks.

Note: Please mark in parentheses which of the categories the task belongs to (multiple can be assigned): coding (CODE); documentation/training (D/T); quality assurance (QA); user interface (UI); or outreach/research (O/R)

General

Create GCI Student landing page (D/T)
QA tasks in all projects (QA; pos. O/R)
"As a new user, try to do X and let us know what you found confusing or too complicated".
Give a presentation to your class about {Meta,Music,Book,Listen,Acoustic,Critique}Brainz (O/R)
Either about the collection of projects, or about a specific project.
Make an infographic explaining how the various *Brainz are connected/related (O/R)
Organise an edit sprint (O/R)
Make a poster for use when organising possible edit sprints (O/R)
Update (outdated) wikipages

MusicBrainz

Wiki / Docs (D/T)

  • jira:MBS-6516 MusicBrainz Programming Guide
  • jira:MBS-5307 Web Service (ws/2) Documentation
  • jira:MBS-8659 Wikidocs - incorporate wiki categories (D/T; CODE)
  • How to create reports
  • How to create a ticket in the bug tracker
Create a glossary template (wikipedia has some good ones)
Make a (screencast) video explaining how to do X (D/T; O/R)
X = add release, add artist, add work, edit release, ...
Create a user with as complete information as possible, report any oddities (QA; O/R?; UI?; beginner)
Fill out at last location, languages, and bio. Preferably also the other information.
Oddities could include: bad translations, errors, something is non-intuitive, ...


Icon-related tickets (designing/displaying) (UI; CODE)

Some of these might involve two different tasks, one to design the icon and one to implement it (in some cases the latter might be a bit too tricky but the former still useful).
  • jira:MBS-8000 - Improve interface icons for better support of higher pixel density displays (UI)
  • jira:MBS-4644 - Indicate which releases have CAA art in listings (UI; CODE)
  • jira:MBS-3491 - Indicators for collection items (UI; CODE)
  • jira:MBS-8625 - Add data quality icons (UI; CODE) (added design only so far)
  • jira:MBS-6869 - Show video flag when displaying work recordings (UI; CODE)
  • jira:MBS-6898 - Show video flag when displaying performances (UI; CODE)
  • jira:MBS-7070 - Missing icon (small version) for area, place and work (UI; CODE)
  • jira:MBS-2421 - Small icon near recording / work / release / artist / ... names to distinguish them (depends on 7070 and ideally on the following three) (UI; CODE)
  • jira:MBS-8626 - Add an icon for instruments (UI; CODE)
  • jira:MBS-8627 - Add an icon for events (UI; CODE)
  • jira:MBS-8628 - Add an icon for areas (UI; CODE)
  • jira:MBS-1352 - Different icon for Unknown/Person/Group on Artist pages (UI; CODE)
Sidebar icon updating
  • jira:MBS-8565 - Update the Discogs logo used in the sidebar (UI; CODE)
  • jira:MBS-8574 - Update the Google+ logo used in the sidebar (UI; CODE)

MusicBrainz Picard

Make a (screencast) video explaining how to do X (D/T; O/R)
X = add release, add artist, add work, edit release, ...
jira:PICARD-22 (CODE; UI)
Link to Picard Scripting page under 'File Naming'
jira:PICARD-24 (UI; pos. CODE)
Red/Green indication icons difficult to read for colour blind users
jira:PICARD-114 (CODE; UI)
Link to documention for file naming in preferences
jira:PICARD-226 (CODE; poss. UI)
Automatic clustering
jira:PICARD-692 (CODE; UI)
"Play File" button should be renamed to "Open in Player"
jira:PICARD-717 (CODE; beginner)
Picard default name files script refinement
jira:PICARD-756 (CODE; UI)
MusicBrainz/AcoustID entities should be hyperlinked in Picard

CritiqueBrainz

Add and publish review for your favourite album and note any issues (D/T; O/R; QA?)
Non-unique task. Split up in multiple tasks?
  • jira:CB-192 - Add link to CoverArtArchive on /artist and /release-group pages (CODE; UI)
  • jira:CB-188 - Translation of "CritiqueBrainz is a repository for..." missing (CODE; QA)
  • jira:CB-186 - Showing placeholder cover art image for events (UI; CODE)
  • jira:CB-184 - No good way to tell which entity type review is associated with (UI; CODE)
  • jira:CB-179 - Hidden reviews shouldn't be included in public data dumps (CODE; QA)
  • jira:CB-172 - "Notice! Please sign in to access this page" looks weird (UI; CODE)
  • jira:CB-171 - Mapping page fails to load if Spotify doesn't return info about an album (CODE; QA)
  • jira:CB-163 - Add info about compiling styling into installation instructions (D/T)
  • jira:CB-160 - Add a note that will warn users that drafts are not private (UI; CODE)
  • jira:CB-146 - Add embedded player into review editor (UI; CODE)
  • jira:CB-134 - Show more information about Spotify albums on search page for matching (UI; CODE)
  • jira:CB-128 - Web API documentation should have usage examples (D/T)
  • jira:CB-123 - Display review language (UI; CODE)
  • jira:CB-117 - Use "identicon" Gravatar instead of "mystery-man" for users without email address (UI?; CODE?)
  • jira:CB-114 - Make review classes less confusing (D/T?; UI?; CODE?)
  • jira:CB-111 - Make language selector more visible (UI; CODE)

ListenBrainz

Import your Last.FM scrobble history and note any issues and glitches (O/R; QA?)
  • jira:LB-85 - Username in the profile URL should be case insensitive (CODE; QA)
  • jira:LB-35 - Write API documentation (D/T)

Cover Art Archive

jira:CAA-79 (CODE; beginner)
Finish https://github.com/metabrainz/coverart_redirect/pull/14
*Very* small! #Python #Git

BookBrainz

  • jira:BB-52 - Improve button layout (U, C)
  • jira:BB-101 - Alias adding should have a button to guess sortname (C)
  • jira:BB-87 - Support for deprecated relationships (C)
  • jira:BB-134 - Dynamic default alias implementation (C, U)
  • jira:BB-135 - Create Calibre plugin to pull metadata by BBID (R, C)
  • jira:BB-136 - Create Calibre plugin to search BookBrainz with existing/user-input metadata (R, C)
  • jira:BB-137 - Integrate Bootswatch Cosmo UI theme with site (R, U, C)
  • jira:BB-138 - Create alias style guidelines (D, R)
  • Tests
  • Material UI
  • Reactification
  • User scripts

3rd party projects

beets

https://github.com/sampsyo/beets/issues/1629 (CODE)
Add an AcousticBrainz plugin, part 1 (easy): Retrieve AB information based on a recording MBID.
https://github.com/sampsyo/beets/issues/1629 (CODE)
Add an AcousticBrainz plugin, part 2 (medium): Perform AB extraction and submission (like abzsubmit).
https://github.com/sampsyo/beets/issues/1719 (CODE)
Add a new ListenBrainz plugin to fetch play data.
https://github.com/sampsyo/beets/issues/1547 (CODE)
Fetch a large batch of new MusicBrainz data by refactoring the way beets stores source data to make it more flexible.
https://github.com/sampsyo/beets/issues/1234 (CODE)
Tolerate MusicBrainz recording ID changes when updating metadata.
https://github.com/sampsyo/beets/issues/1089 https://github.com/sampsyo/beets/issues/1210 (CODE)
Ignore video and silence tracks identified by MusicBrainz when searching for missing tracks.
https://github.com/sampsyo/beets/issues/654 (CODE)
Use MusicBrainz "pseudo-releases" to get transliterated metadata.
https://github.com/sampsyo/beets/issues/216 (CODE)
Use MusicBrainz OAuth instead of storing username and password in the config file.
https://github.com/sampsyo/beets/issues/406 (CODE)
Fetch and store the musicbrainz_releasetrackid in beets.

Document the workflow for submitting your carefully-crafted beets metadata to MusicBrainz. (D/T)

Write a post for the beets blog about how to "give back" by finding music in your beets library that MusicBrainz doesn't have yet and submitting new releases. (And the same for submitting cover art that you have but the Cover Art Archive doesn't.) (O/R)

Try importing your entire music library using beets and keep a log of what it got right, what it got wrong, and what was missing from MusicBrainz altogether. (QA)