How to Kickstart an Open Source Music Revolution with CASH Music

179

On February 10, 2012, CASH Music launched a Kickstarter campaign and raised more than 70% of their $30,000 goal in about 24 hours. What is CASH Music? And why does it already have vocal support from musicians, Firefox, and even Neil Gaiman? Jesse von Doom, Co-Executive Director of CASH Music, explains the inspiration behind the project and the big role Linux plays in it.

Linux.com: What inspired you to start CASH Music?

Jesse von Doom: The real inspiration is necessity. It started six years ago as a conversation about sustainability between musicians Kristin Hersh and Donita Sparks. After some exploration and thinking, we realized what the music world needed wasn’t another tech startup, but an open foundation on which to build. In came additional code that had been written for (now co-Executive Director) Maggie Vail while she was VP at Kill Rock Stars, and we began the process of forming a proper nonprofit and adding to the code.

Since then, we had been building project after project to spec with artists, managers, publicists, and labels, learning what was needed and how to shape it. In time, we separated the platform itself from the functional elements built on top of it and a year ago we started putting out heads down in earnest. Now we’ve got a platform that tries to model the needs of an artist as they’ve described them to us, and allow those pieces to come together as easily embedded elements that can slot into pure PHP or any PHP-based CMS. The end goal is to make embedding rich functionality as easy as embedding a YouTube clip.

Linux.com: Your About page says “What CASH is ultimately trying to do is give musicians support in an environment that often feels alienating and hostile.” How are you offering support for musicians?

Jesse von Doom: We’re building a free and open-source platform for musicians to use in distributing, promoting, and selling their music. As the Internet becomes the backbone of the music economy, it’s important that all artists have access to basic tools and resources, and that’s what we’re hoping to accomplish.

Our initial releases of an installable version of the platform contain things like email collection, downloads, fan club tools, and tour date display. We’ll soon be releasing direct digital commerce, easy playlist embedding and management, and more social and media tools. In the future we also plan to spend significant time with education and outreach so we not only offer tools, but help using them.

Linux.com: How is CASH Music different than other music services or projects? Is there anything similar out there?

Jesse von Doom: The most obvious difference is our nonprofit/open-source structure. Too many musicians have been burned by Web sites shutting down or having their hard work trapped in a proprietary box. One of our board members, a musician named Jonathan Coulton, likes to put it in context of all the lost time, energy, and even money spent on MySpace pages that are now basically useless.

I also think that our slow-cooking approach is paying off. By getting the help of artists in figuring out the shape of this thing we’re building, it’s helped us make major improvements to the platform itself. We certainly didn’t take a minimum viable product approach, and while that makes sense most of the time, I think going slow and communicating was vital to what we’ve done.

Really our biggest job is facilitating communication between musicians and developers, so building something both groups can understand gives common ground. My hope is that ground means more musicians learning about web making and more developers learning about how hard musicians need to work and where that work turns to income.

As a nonprofit, we can foster collaboration over competition, meaning artists don’t have to choose our platform over another service; we can just integrate with whatever’s best for artists.

Also we use more pictures of dogs and rainbows than any other service.

Linux.com: You raised $30,000 on Kickstarter within 72 hours. How will the funds be used to help the project?

Jesse von Doom: It’s a pretty unexciting list. $30,000 is close to the total amount of funding we’ve seen in the last five years, but even if we raise five times that number, we’re still working with a budget that’s a fraction of most startups. All of the Kickstarter money will be going toward building the hosted version of the platform – 100% API and data compatible with the current distributed version, but without any of the setup. The goal is full data portability from hosted to distributed, so artists can start easily and move their data to their own sites, or even a different service built on top of our own hosted images.

We’ll put some of the money to outside help where we can’t find volunteers, in documentation or in carving out a specific subset of development. Similarly, in supporting focused hack events with developers and musicians working together. We’re looking for a hosting partner willing to give us a nonprofit discount, but we definitely need to cover initial hosting costs and the other usual costs of running a site. Basically, this is giving us room to do a major push toward that free hosted service that we see as a huge part of the answer for musicians. Any additional funds will be put directly back into that effort, so we plan on pushing hard to get that Kickstarter number as high as we can.

Linux.com: What’s your road map and timeline look like right now?

Jesse von Doom: We’ve already released an initial distributed version of the platform. It’s an early version 1, but we’re in a rapid release cycle and quickly smoothing out the rough edges. It’s a challenge because we’re using as close to bare bones PHP 5.2 as we can, relying only on PDO and mod-rewrite for some of the trickier things we’re doing. We’re not using any other external dependencies, which has forced structure and interesting solutions to challenges.

The idea was to support low-end hosts where most artists host their sites. We built a single-file installer that pulls down files from a GitHub repo. We install to a SQLite database then migrate that to MySQL when the user is ready. Basically, everything we can do to make the experience easier and less daunting we’ve done, and every release has to get easier or it’s not ready to ship.

Currently we support email capture, email for download, tour date listings and archives, Tumblr and Twitter integrations, and some early fan club pieces. Right around the corner is digital commerce and playlists.

We’re still shuffling the roadmap to get to hosted as quickly as possible, but that will be done soon and include things like private streaming, enhanced fan club elements, major improvements to the admin, more supported service integrations, and more.

Linux.com: What are the technical challenges going on under the hood of CASH Music?

Jesse von Doom: Building a distributed version of the platform first was a crazy-person idea, but very necessary to communicate the ideals of OSS to a non-technical user base. There’s nothing like that first time someone changes a piece of code and suddenly feels ownership of it; we’re trying to instill that same feeling of ownership in musicians.

Personally, I’m actually looking forward to the challenges of a large-scale, centrally hosted project… it means the environment will be a known commodity. Right now, we’re trying to support just about any LAMP configuration under the sun. The host that still turns off fopen wrappers? Yup, we work around that. No access above the web root? Time zone not set? You get the picture.

So we’ve worked hard to set up patterns that won’t interfere with other scripts as much as possible. We didn’t build a traditional CMS, rather an engine for embedding pieces of content with a single line.

The minimalist approach to not using extensions certainly makes this a challenge, but Duke [Jonathan “Duke” Leto, Developer] set up a robust test suite that we’ve been filling with unit tests to up coverage, we’ve been running our installer and the platform in different environments and on different hosts, and testing in as many situations as you can imagine. It’s the opposite of most devops challenges: We only know the code, not the environment it needs to run in.

Linux.com: What else can members of the open source community do to help you with the project?

Jesse von Doom: Like every project, we’re looking for good developers. But we’re also keenly aware of the non-development help we need as well. The better our docs are, the easier it will be for new developers to engage. And we’re passionate about enabling even the least technical musicians to get comfortable on the Web so that means walk-throughs, careful copywriting, and better support.

We set up these pages for specifics: how you can help development, and how you can help non-development.

Linux.com: Thanks much for your time, and good luck with the project! Note that if you’d like to support the project, the Kickstarter drive continues through March 9th. Kickstarter pledges start at $5, with tiers up to $5,000 or more.