Jason does a great job describing some of the models we're currently contemplating in response to the growing interest in a hosted version of Basecamp. It gives a good deal of insight into how serious we take the whole No Human Scaling aspect of Basecamp.
We don't want to grow a company of 25 people around Basecamp even if that looks like a very possible road forward. Instead, we're sticking to our design of constraints and are thinking about how to leverage those best.
I particularly like the ideas of auctioning off just a handful of installable versions. We have quite a few large and very interesting companies on the notification list for an installable version. Just how much could a program like Basecamp be worth to have inside the firewall?
At the other end, I'm attracted to solution for dealing with upgrade cycles: Don't do them. Sell a v1.0 with all the bugs and inefficiencies that it might very well have. And then give people another chance at v2.0 — but no in-betweens. I wonder if it would work, though. Even with everyone as consenting adults. Would having the source available and being able to do internal improvements help assure people of the viability?
Business models for open source
While we're contemplating what to do in the commercial world of Basecamp, I'm at the same time seeing a number of opportunities arise for Rails. Just recently, I signed on to help Combustion Labs in Vancouver explore Ruby on Rails for a week.
That's the traditional open-source service model. Give away source and software, sell services. But there are many new models popping up. One of them is doing hosting, which of course is exactly what I announced earlier today.
Partner with a hosting company and make sure that they Just Work with your software. A lot of the pain in open sourcing is getting the stuff up and running. If you can pay something reasonable to have that all taken care and support the project, then what's to think about?
On top of that, there's of course taken either commercial sponsorships for feature improvements (I was talking to a guy at RubyConf about adding integrated Web Services support to Rails on that model) or raise funds directly from the community. A few of the guys from #rubyonrails talked about how they'd like to raise funds to allow me a month off to improve the documentation.
It's a brave new world for funding of great software and ideas outside of the traditional channels.