Ignored By Dinosaurs 🦕

The open source website system for musical artists

It's so obvious when I say it out loud. (edit: that's not exactly the most succinct tagline though, so help me out.)

If you're just joining the party and you don't know what open source is, check this out. If we haven't met before, this is some more of my backstory over the last year or so.

Pre-ramble

Forgive me if you've read some of this here a hundred times. Part of my process is to refine repeatedly.

I'm a musician. I'm 32. My entire professional career has been spent behind the wheel of either an upright bass, an electric bass, or a pair of turntables. In particular the years from 2003 to 2009 were spent on the road with the band Railroad Earth. About 2 years ago I started teaching myself to program. I wasn't really sure where I'd end up, but it seemed like a good skill to have for the inevitable day that I just couldn't keep touring for a living anymore.

Recent history

I quit the band and started making a living as a web programmer. I found a client who needed a me and have since been busy doing lots of nice stuff with a designer who I get along great with. About a month ago I got another gig doing a little thing for this environmental non-prof out in San Francisco. I built exactly the thing they asked me to in both Ruby on Rails and Drupal. I built the Ruby version first with lots of help from a friend in about 5 days. I spent 3 agonizing days trying to launch it on a shared webserver before giving up and rebuilding the entire thing in Drupal with 36 hours left until the deadline. The Drupal version lit up the first time I flipped on the switch and saved my bacon. I had already bought a ticket to DrupalCon – happening in San Francisco a few weeks after that.

Drupal (droo'-pul)

While at DrupalCon I drank lots and lots and lots of open source Kool-Aid. The buzz that I got at DrupalCon was exactly like the buzz I used to get at music festivals we'd play every summer. Tons of cool people hanging out, sharing ideas, drinking beer, meeting new cool people, and being excited about the same thing – the same cool, creative thing. I went to sessions for geeks, for marketing folks, for freelancers, for non-profits, for you name it.

I came back a Drupal developer.

One of the cool tools that I was introduced to there was called OpenAtrium. It's basically a tool for managing projects, a thing that becomes very necessary the instant you get off the road and start building websites. I had tried out BaseCamp with my new gig and liked it a lot. OA was essentially an open source variation, built on top of Drupal. Many of the contributions of the Drupal developer community were rolled into one comprehensive, focused package that was probably done in a fraction of the time that an enterprise team would taken to do a proprietary version of something similar.

Open source is a very powerful idea. Drupal is free. All the cool things that people have built to customize and extend Drupal are free. That's why Open Atrium is free.

The open source website system for musical artists

So a cool feature of Drupal that's only recently getting attention paid to it is the “installation profile”. That's how OA works, and it basically means that you can set up Drupal how you want it (you can quite literally do almost anything that involves the internet with Drupal) and build a script that installs it that way anywhere. You can have, for example, a real band website, for free, right out of the box. The blog, the tour dates, the Facebook and Flickr integration, the forum, the eCommerce – virtually all of the pieces are laying right there, waiting to be assembled by those of us who know how. Those of us who need something that doesn't exist yet write it and give it back to everyone else using the system. It's constantly improved. The roadmap for this thing could be ridiculously cool. The API possibilities if a bunch of people started using this thing? Come on!

I know, the irony of this being a Wordpress powered site has occurred to me, but before I go and uproot and move this blog to Drupal so that we can get to collaborating for real, does this sound like a good idea? One that could maybe change the game?

Pssst, Drupal devs...

I don't know if you've noticed, but the guys who made up OA and PressFlow and OpenPublish are making a damn decent business as consultants for their product. I don't know if there's any money to be made here or not, but this market has been waiting for this idea. Hell, Drupal has been waiting for this idea. I know a lot of people in the music biz that would probably be delighted to help us out. We can get press and we can get traction. Anybody wanna help out?

Edit: the post that put the last piece of this idea into place. Thanks, Dries!

#theidea

I realized about a year ago that nobody anywhere even had a clue, never mind a plan that saved what was worth saving about the music industry – the music part.


Guilty. Most of us reading this are. There were several entire generations that went by where it was a perfectly logical thing to associate money and music as somehow being comfortable companions if not downright synonymous. It was BIG business – not in the way that defense contracting is, but it was perfectly logical for a certain subset of money and attention seeking individuals to get into the music business. And you didn't even have to have musical talent! In fact, there was more money in it for those who didn't! Word eventually got around and by the late 80s most labels heads weren't music lovers but lawyers. The snake started eating its tail sometime around then. Nirvana was arguably the last great, game-changing band that came out of that entire era.

I don't mean to sound like one of those bloviating music biz pundits. So anyway –>

I've held a simple and obvious belief for a few years now while transitioning from a musician into a programmer/musician. If the internet tore down the old edifice, the internet will build the new one. There are any number of eCommerce solutions out there for bands to sell their stuff online. There are any number of solutions out there to make building your band's website an easy and code-free endeavor. There are any number of solutions out there to make it easier to spread your word. These ideas are good ones, but still missing the target (in my humblest of opinions). The basic problem with all of these ideas is that they are still trying to monetize someone else's music. That scheme is the most fundamental cornerstone of the edifice that just fell. Any successful new paradigm must throw it away.

Admittedly, it's the most difficult one to throw away. However, imagine if a community emerged in pursuit of throwing this stone away. Not just a programmer or a company trying to reinvent the wheel and somehow still feed themselves, but an ecosystem of people who did it for the good of music itself in their free time, without the pressures of business and investors and expectations on them.

Sorta like an open source project, I guess...

#theidea

If the music business is ever going to be saved, if musicians are ever going to be allowed a chance to achieve a minimum standard of living, if we are going to rescue music itself from it's place as today's disposable trinket and restore it's place as the universal human language, then the paradigm has got to be completely and utterly reinvented.


I knew what I was looking for, but I still didn't quite get it. I was looking for some kind of way to make it easier to build successful band websites, but I was also looking for something that could be monetized, something that could make a decent amount of money for whoever provided the service. Therein lies the flaw. That same flaw has reduced the record business into a heap of garbage-producing rubble. That same flaw has lead to the consolidation of LiveNation and TicketMaster. That same flaw keeps untold quantities of great music out of the ears of eager listeners every day because the avenues for promotion and distribution simply weren't available.

We can change that now.

So, the software model of yore is just that. The one where you go to the mall and buy a box with a disk inside of it. Do you remember doing that? I do. I actually remember it more clearly than going to the music store, but that's probably a figment of where I'm at right now in terms of my interests. I digress, within five sentences...

Where was I? Oh yeah, so the music business of yore is just that. Remember the one where you went to the store and bought a box with a disk in it? That model isn't working out so well these days. The problem is that it worked out SO well for SO long that the whole industry has taken an extraordinarily long time to figure out how to save their phony-baloney jobs. I know – news flash, right?

Anyway, back to the software business, which is a lot younger as an industry and which has a pretty solid record of evolving past whatever Goliath emerges in whatever epoch/industry model is/was dominant. Did that make sense? What I meant was that the entire history of software is built by heretics who see the opportunity in moving the ball.

The music business, on the other hand, is historically run a little more like the country club. It's mostly the same players that have been there, except for the few that have finally died and opened up a seat. Even today. You'd think that there'd be plenty of room for new upstarts with fresh ideas to come in and revolutionize an industry and an art form that is so clearly demanding just that. Where's the evidence that that's the case? I've got a funny story about the introduction of CD techology at an AES conference, but that's another post.

Pardon the long winded exposition. I haven't been writing lately and it feels really good to have time. I was on rt. 80 the other day and I had a flash. What if you started a band and ran it like a software company? Instead of “album cycles” you'd have “rapid development”. The product wouldn't just be music and the usual merch, but would really take advantage of technology to give the fan something more to interact with. You'd have a rocking website of course, which would be the main avenue through which new creative product would be distributed. You'd have a mobile app to give your fans commuting into NYC on the train something to play with/listen to on the way in. The press would be so enamored with your savvy that you'd barely even need a publicist.

I think ideally you'd have a couple of developers who play in the band, a really strong songwriter, and a producer type. Everyone gets to concentrate on their creative thing and everyone is fairly equal. How fun would that be?

So, the 14 of you that still swing by here know my backstory. Sometime in 2003 I joined a band with a neglected website. At one of my first band meetings we discussed overhauling said website, since the majority of our fanbase was a grassroots kinda thing and most of our promotion happened via online channels like the Archive and YahooGroups, etc. Sometime in 2005 we still had that same website. I was at my parent's house in north Georgia when it occurred to me “hey, you know, you could probably learn how to build websites in the time that it's going to take this band to get it together enough to hire someone to do it.” If I'd only listened to that voice more clearly, but instead I got bogged down on the Dreamweaver section of the Adobe site and gave up without really exploring what web development was all about. I was still trying to be a musician in any case.

Fastforward to 2008 and we'd finally done something about our website a few months prior. I got an iPhone. I'll skip this part of the story since it's been documented ad nauseum on this blog. Anyway, it didn't take long for the potential of mobile apps as a huge and brand-spanking-new market to become an obsession. In particular – the potential for such apps to help revitalize a music business that had become very long on the latter and very short on the former. There's also the simple fact that in 50 years people are going to be on these little things and not big old screens anymore and therefore the internet is at the very least going to need to be reformatted. So, start learning to program iPhone apps...

Hey, this is hard to do yourself and really expensive if you hire someone. Wouldn't it be cool if you could make a reusable framework for all your friends' bands so that y'all could share the cost and the rewards of such a system? Well, if you're all sharing a mobile platform, you might as well be sharing a website platform too, since most of the stuff that's gonna be on that mobile app is going to have to live somewhere on the internet. It'd be a lot easier to just interact with one protocol than a million, right? If I'm not making sense, let me know.

Well, hey if we got everyone on the same platform for their website, then we could also build in lots of features that would make those sites more interactive with the rest of the internet as a whole. I mean, who likes posting your tour dates to your own website and then to Facebook and then to MySpace (or paying someone to do that for you)? Raise your hand if you know what an API is, and why it's important. Wow, it seems like 10 years ago that I wrote that.

This was my thought process two years ago. I'll be back.

#theidea

That sounds like the spirit, then! How do I explain this?

What is open source? It can actually mean a variety of different things, but most simply it means free software that anyone can use as is or alter as they see fit for their particular needs. According to Wikipedia – “Some consider open source a philosophy, others consider it a pragmatic methodology.” I think I fall into both camps, but being the pragmatic, methodological guy that I am I shall present that angle today.

When I first got into software and development a few years ago it was because of one of the most proprietary devices out there – the iPhone. Proprietary is the exact opposite of open source. It is not free. You are not welcome to see the iPhone OS source code. You are not welcome to use anything except for Apple's set of development tools to build iPhone applications. You may only distribute those applications through the AppStore, of which Apple is the sole overseer. I didn't consciously realize the implications of this stuff two years ago. I just wanted to build a band app that all my friends could use and get rich. So I bought a Mac and dove in.

Upon diving in, I realized many things. One is that Apple and their set of development tools – called Xcode (X as is OS X, the Mac OS) – came with the most amazing set of documentation on virtually every aspect of developing software built right in. My education began there. Poring over the included documentation and learning how the iPhone OS and Object Oriented programming worked on a high level was the beginning of the path for me here. Among other things I learned that the Mac OS (operating system) and by extention the iPhone OS were built upon an open source OS called Unix. Unix has been around since the late 60s, and was initially developed at Bell Labs. Unix runs on the “command line”, which is like way back in the floppy disk era when you used to have to type into DOS to get your computer to run programs. Most professional developers I met at the DrupalCon a month ago seem to have a deep fear of the command line. Luckily my early experience with Rails and Git got me over that fear before I learned that I should have one.

Anyway, there are many different versions of Unix out there, some open source (meaning open to anyone helping develop it) and some proprietary (meaning you have to pay a licensing fee to even use it). Some hippies at UC Berkeley one day got tired of Ma Bell and her ridiculous licensing fees and decided to make their own variant called Free BSD. To make a long story shorter, Steve Jobs and co. took Free BSD in the late 90s and made it the base of their new OS. OS X, a really awesome, intuitive, stable operating system that only legally runs on Macintosh computers took an open source project as it's guts. What the world knows as OS X is basically a really nicely designed wrapper over top of Free BSD. If you're on a Mac and you go up to the Spotlight in the top right and type in “Terminal”, you'll get the command line for your computer. This is the real operating system you are speaking to underneath the glitsy OS X veneer.

So what's the point? Who cares? Steve Jobs ripped off a bunch of hippies and now he's a genius? Well, yes, and here's why.

Windows, the beloved, world dominating piece of shit OS that never works right whether you know it or admit it or not is not an open source project. It and it's source code have been sequestered away in Redmond WA for the last 25 years or so. The only people allowed to work on it are MS employees following MS corporate policies, coding practices, and managerial and marketing direction in their development of Windows. I liken this to being in a really high paid Connecticut wedding band. By contrast, Free BSD – though a newer OS than Windows even – comes from a pedigree of having been developed and refined for the last 40 years. Open source means anyone with the mind to can contribute to the project with only their own needs and imaginations as their guide. Ultimately what happens in a sucessful open source project is that a community of developers begins to coalesce. Different perspectives, features, and methodologies are brought in from all over the world by developers trying to solve problems, not by the marketing department downstairs or your manager who has to make his boss happy with this one feature. What would be a security hole to exploit is plainly visible for all to see and for all to immediately get on top of fixing for the good of everyone who uses that software. If you need a feature that doesn't exist yet, you write it yourself and share with everyone in the community. I liken this to participating in the late night jam at Slopryland.

That's probably enough for now.

#theidea

I don't know about you, but the difference between an exciting open source project and a less than exciting open source project boils down for me when I get to the first page of their documentation.

Note on the CiviCRM site they have a link that says “Make a PDF”. Notice how on the SugarCRM site they have a mile long table of contents that helps you none whatsoever. Note how much background information there is once you get into the Civi documentation about what CRM actually is, and how it might help your organization. Notice how much of the beginning of the Sugar docs is devoted to installing the thing, which is helpful but come on. There's an automated installer file. It's pretty simple for a developer.

I can't help but think of projects like Sugar as somehow “faker” than projects like Civi just because the very essence of open source is to encourage audience participation, not to make it easier for a consultant market to emerge because I can't wade through your shitty documentation.

Getting off the soapbox now.

So, you've spent the last few months teaching yourself Wordpress. Good job. There are lot of crappy websites out there, most of them built by some site-builder commodity crap-stuffer at GoDaddy or Network Solutions or some other budget host. These are God-awful examples of poor web development practices. They're ugly. They don't render correctly in browsers. Many are all but invisible to search engines, which begs the question – if a website fails to show up in the first couple of pages of Google, does it make a sound?

Wordpress is a wonderful tool to combat these evils. It's easily editable. It's easy to learn. It's east to add features. It's typically built using modern presentation techniques that actually DO show up in search engines. The Thesis theme is a marvel of SEO and will get your page – pretty much no matter what – up on to the first page of Google depending on what you're writing about.

Neither here nor there, because you already have an idea of most of this stuff. You've been tinkering around with MAMP and wordpress on your computer and now you want to know how to get your creation up and visible to the world. This is involves two simple steps, and rather than repeat them, I'll just link to the site where I learned how to do it.

http://weeklywp.com/2009/06/move-wordpress-to-a-new-server/ Questions and requests for clarifications are most welcome. The first big hint is on the front page of the MAMP welcome page. PHPMyAdmin is a database tool for managing your database. That's where you'll export the database that you've been using to develop locally and upload it to your webhost. Follow the instructions in the tutorial. Every webhost I've seen so far has PHPMyAdmin installed somewhere, but where they'v hidden it usually varies. If you are installing this on a server that's owned by, say, the Stamford school system, you might need to talk to an IT admin to get it happening.

#generaldevelopment

Seems a shame to have this site over here, ostensibly my personal site, and not be doing anything with it. Seems a shame because so much of the last four months has been so personal. It's been the hardest, weirdest, best, worst four months of my life so far.

I haven't really been in-between-chapters-of-my-life for a very long time, and I now remember what it feels like. It's why I moved back down to ATL to take some shitty job at the Guitar Center, just so I'd have something to do. I don't equate my situation with not having enough to do, BTW, but RRE at least gave me some kind of purpose. Rather, RRE made me feel like I had some kind of purpose. Even the last few years when I was pretty good and miserable, it still gave me something to rail against.

Now it's not my problem anymore.

Now I've got two boys.

Now I'm embarking on a new career that got a firm shove in a direction this week.

I'm in San Francisco right now, getting ready to fly back to Jersey. I've been on the fence for as long as I've been doing this dev thing about what exactly kind of dev did I want to be. So many cool technologies, so many cool paradigms, a few of them able to actually get done what I've wanted to get done since I started this journey.

I had narrowed it down to two frameworks – pretty much opposite each other. Rails – the exotic, well-heeled cool kid on the block – and Drupal – the giant open source free-for-all. I came to the DrupalCon this week and am pretty much in love. I met some great people, many working on ideas that are very close to mine, ultimately. When asked what I do I said “I'm a developer”. When they asked if I was a freelancer I say, “Yes.”

“I'm a career changer.”

Anyway, I got the same warm, fuzzy vibe from this scene here this week that I got at festivals. Hanging out with like-minded folks, learning lots of cool stuff, people serious about creating a movement.

I can now put aside my dreams of Ruby coolness for a little while.

I'm a Drupal developer.

==>

PS – people at DrupalCon think ignoredByDinosaurs is a cool name. They don't ask what it means, they just say “oh, that's cool.”

I'm home.

#personal