How you can help - development

This list is going to change a lot, and right now anything on it probably needs a little more explanation than a few sentences, so if you're interested don't be shy. You can get in touch at: dev@cashmusic.org.

The main repo currently lives here: https://github.com/cashmusic/DIY

Pressing Needs

  • database design review - database tuning is black magic and you know it. If it's black magic you know we'd love a fresh set of eyes on the current schema. We maintain compatible MySQL and SQLite schemas, meaning it's twice the fun. As we move closer to hosted this will mean making sure we're ready to handle sessions in database, relying on a few of the magicer bits of black magic. ("Magicer" may not be a real word, but it should be.)
  • server configuration - in an ideal world we'll ship the hosted version on a 100% FLOSS server image. So that means puppet, chef, OS-config-level good-times.

Wish List

These are all relatively compact or isolated tasks that would move things along a lot. Some are fun and interesting, others are just necessary. A quick run-down:

  • SoundCloud integration - this has been planned from the start, using SoundCloud as a fully compatible resource for assets. We need to create the SoundCloudSeed, make the connection, and handle account sync issues. This is tracking as an Aprilish thing for us, but the sooner the better.
  • data visualization - we're recording everything...lets make all look awesome. d3 time.
  • asset uploader - make adding assets easy. This will need to be vendor neutral and built specifically to work with the CASH admin and framework in order to support any asset sources we support now or in the future. We're currently using only a handful of JavaScript in the admin. Currently we're using MooTools but we're in the process of converting to jQuery.
  • OAuth / login connection enhancement - connections are all currently defined by pasting in an API key and whatever other datapoints are needed. It's okay for now, but we need to make the connection process better and easier by offering login/OAuth pop-ups to get keys, supporting post-authorization scripts, and other processes to streamline connections and make them easier for users to work with.