Development/Summer of Code/2017/CritiqueBrainz
Ideas
Direct access to MusicBrainz database
Proposed mentor: Gentlecat
Languages/skills: Python, Flask, SQL (PostgreSQL, SQLAlchemy), Docker, Consul
So far, the biggest cause for slowdown in CritiqueBrainz are requests to MusicBrainz web service. It's not that MusicBrainz WS is slow, it's just that some pages on CritiqueBrainz require a lot of MusicBrainz data, which might take a very long time to retrieve. This can be caused by the complexity of a request, or by a number of them (when showing multiple items, since there's no way to do batch-requests).
New infrastructure allows us to easily read data directly from the MusicBrainz database. Doing this in CritiqueBrainz will probably be a significant speedup.
See https://tickets.metabrainz.org/browse/CB-231.
Book reviews
Proposed mentor: Gentlecat
Languages/skills: Python, Flask, SQL (PostgreSQL, SQLAlchemy), JavaScript
Currently people can review release groups, events, and places. We'd like to expand that list by allowing people to publish reviews for books. Metadata about books can be retrieved from the BookBrainz project (by accessing the web API or its database directly). This project would require (1) extension of CritiqueBrainz back-end to support book reviews, and (2) changes to the web interface.