Every now and then you run across something that just makes complete sense. That happened to me earlier in the week when I was reading posts in Movable Type developer Tim Appnel's blog, and I came across an entry entitled "Open Source Is Not Just A License." It sums up, in a remarkably succinct fashion, two of the major benefits of taking a close
Every now and then you run across something that just makes complete sense. That happened to me earlier in the week when I was reading posts in Movable Type developer Tim Appnel's blog, and I came across an entry entitled "Open Source Is Not Just A License." It sums up, in a remarkably succinct fashion, two of the major benefits of taking a closed- or restricted-source project and making it into a more open-source one.
Tim originally posted his comments to the MTOS-dev mailing list, devoted to development discussion of the Open Source edition of Movable Type. The discussion he was responding to centered around why it might be better to move away from "homebrew solutions" -- things that Six Apart had built in-house to accomplish certain internal things with MT -- and toward solutions available through CPAN. He boiled it down to two reasons:
One is effectively leveraging resources. What does MT gain from having its own application framework? ... Could the engineering resources of Six Apart and this community be put to use on other things where the questions are true or an alternate does not exist? I'm pretty sure the answer to that is yes.
This is one of those things about open source that almost doesn't bear repeating because it has the flavor of a cliché, but I'll restate it here. One of the biggest benefits of having a community of shared code is that you spend far less time reinventing existing things. If you need an encryption routine or a scheduler, odds are those things already will have been written -- and they're more useful than a black-box API, since you'll be able to build on them if need be. More time can be spent on actually creating new things instead of being weighted down by the Not Invented Here mentality. (This isn't to say that open source solutions don't suffer from NIH themselves, but that they provide one way to get away from an existing manifestation of it.)
The second reason is worth quoting here in near-full:
Another is in better-embracing open source. While my first point is more operational, this one is more PR. Releasing MT under the GPL is a good first step, but there is still a certain level of mistrust (I'm not suggesting that it's founded or not) nor are open source developers knock down the MTOS doors to contribute. Drawing in developers from other communities with some of the tools they are already familiar with and using would, IMHO, contribute to generating more interest and breaking done the walls that I believe many believe surround MT. Conversely, taking parts of MT that don't exist in the Perl/CPAN world ... and breaking them off as their own standalone library would have a similar effect, in my experience. Developers are more likely to write MT-like apps that borrow from how it works, indirectly learning about MT and perhaps contributing back to its development. Doing both of these clearly demonstrate that Six Apart is serious about MT as open source software and that there is something to gain by contributing.
There is indeed a great deal to gain by contributing, and while many people might sniff at the fact that at least some of it is PR (as Tim put it), it's easy to forget that PR is a crucial ingredient in the glue that holds together a community. A person with a bad reputation as a fair player is less likely to be welcomed into any community; someone who has a track record of playing fairly -- or at least attempting to play more fairly -- will be welcomed and will be able to reap the benefits all the more enthusiastically. You tend to give more when you know you'll get more in return.
This is a big part of the reason why I wanted to use Six Apart and Movable Type as one of my ongoing case studies in open source. For one, I use their software -- I used it back before the fully open source version was released, and I was elated to see them put out an open source edition. (It was nice to know that if my usage of it evolved over time, I wouldn't suddenly realize I was no longer eligible to use the personal license version).
The other was to watch them figure out how best to make themselves into open source players -- not just market an open source product and make money from it (via support, multiple licenses, etc.), but also how best to connect with the existing communities and be friendly citizens. They've done this to some degree already, but as outlined above, I want to see how it ramps up.
What Tim means by open source not just being a license is reflected in all of this. Anyone can write and release something under an open source license -- yes, even Microsoft -- but that doesn't mean it will be used, re-used, built on, or well-respected. That takes time and engagement, and a sense that you need to give as good as you get.