Andy McKay

Jul 07, 2010

Revitalising a project, not dumping it.


In some situations there's nothing more damning to a project than open sourcing it. It's happening for the wrong reasons: the company involved can't make enough money from it or the company doesn't want to support it anymore. It's then often ignored and left to die a slow death.

A while back I was keeping Arecibo closed and charging people as a service. It wasn't working too well, I was spending a lot of time on it and not getting too far. So I open sourced it and built a default App Engine instance that you can run.

At the time I have to admit there was a degree of dumping the project, it's day was done (there's far too many other services now). But oddly enough, I feel liberated and revitalised on Arecibo. I've been adding in features and I'm enjoying working on it. It feels like I've just had a few weights lifted off my shoulders:

  • I don't have to worry about maintenance, migrations or service up time in the same way. There's no need to plan a migration to avoid downtime. At this point following good practices and keeping backwards compatibility should keep things good for everyone.
  • Whenever I was doing work on Arecibo, it was because I was trying to make money directly from the service. So working on Arecibo was not working that made money. Now I accept I'm not going to be making money from Arecibo and that's fine.
  • Similarly I'm adding the features I want, not the things that I think should be there because they'll make it more attractive to users. Although this was probably just the wrong approach in the first place.
  • Patches are coming in from other people for the things I wanted to do - but haven't.
  • I feel much more comfortable selling and talking about it to my target audience - user groups, because it's not a sales pitch anymore.

Got a project that's languishing? Consider open sourcing it - it might become fun again.