I just read Jeff Atwood's recent blog entry 9 Ways Marketing Weasels Will Try to Manipulate You, and one part in particular struck a chord with me.
3. It's "Free"!
Ariely, Shampanier, and Mazar conducted an experiment using Lindt truffles and Hershey's Kisses. When a truffle was $0.15 and a kiss was $0.01, 73% of subjects chose the truffle and 27% the Kiss. But when a truffle was $0.14 and a kiss was free, 69% chose the kiss and 31% the truffle.
According to standard economic theory, the price reduction shouldn't have lead to any behavior change, but it did.
Ariely's theory is that for normal transactions, we consider both upside and downside. But when something is free, we forget about the downside. "Free" makes us perceive what is being offered as immensely more valuable than it really is. Humans are loss-averse; when considering a normal purchase, loss-aversion comes into play. But when an item is free, there is no visible possibility of loss.
I feel like there is some implication here about Open Source software, that I hope you'll indulge me in exploring for a bit. So to lay the groundwork, I guess what I'm looking at is the idea that Open Source software has some added value by virtue of being free that makes up for any shortcomings pointed out by a non-free alternative. Now, I fully understand that Open Source doesn't always mean free, just as free doesn't always mean Open Source; but by and large, Open Source projects are free, and that's what I am referring to here.
I can go no further without mentioning that I write open source software ("OSS") myself, and examining exactly why. I do it because I'm passionate about software in general, because I enjoy doing it as a hobby (as some might enjoy fishing or playing basketball), and because nobody would pay any attention to it if I charged. I would know, because I wouldn't pay any attention to the software I write in my free time if it were written by someone else and weren't free. The things I spend my free time on aren't important enough to enough people to make money selling them. And that's fine; after all it's a hobby, not a second job. If it weren't fun, I wouldn't do it.
There are people who write OSS so that they can then charge to support it, which I guess defines the Professional Open Source Software ("POSS") category.
And I guess that leaves the semi-anonymous, seemingly hobbyist coder who developed a free (OSS) alternative to some non-free product, or had some crazy idea and took the time to flesh it out into something semi-usable. I imagine this to be representative of 80% of the projects on sites like SourceForge.
So to further narrow down the scope a bit, I'll only be talking about the portion of the last group that developed a free (OSS) alternative to a non-free product.
I should also say up front that I am incredibly cheap, especially so when it comes to software. I am willing to put up with a not-insignificant amount of headache to save money. This comes as no surprise at all to me, because if there were no free option I would go without rather than spending the money, in most cases. Maybe this is counter-intuitive as a software developer, but I'm also not trying to "make it" selling software.
Enough beating around the bush, how about a concrete example?
Obviously, I am a ColdFusion developer. I have been for a long time, and it should come as no surprise that as a software developer who is passionate about both hobbyist coding and ColdFusion, my pet projects are ColdFusion projects. I bet you already know where I'm going with this.
ColdFusion hosting -- or rather, affordable ColdFusion hosting that doesn't suck -- has been an often complained about problem. And as a hobbyist, and a cheap one at that, it just wasn't possible to get good CFML hosting that was powerful enough to do more than host a few static files; basically nullifying the fact that it was CFML-capable. Enter Railo. There is, of course, also Open Blue Dragon, but -- probably due to the bad taste left in the community's mouth by New Atlanta (deserved or not) -- it has sort of become the unwanted step-child in the OSS CFML Engine market.
Railo (and OBD) are free and Open Source alternatives to Adobe ColdFusion, both written in Java and fairly easy to setup (assuming you have some working knowledge of Apache and Tomcat), so I expect that we'll see more and more affordable CFML hosting popping up in the next year. And while lower prices are better, they're still not as low as other free development platforms. I got php hosting for $12 per year once -- nothing incredible, but hosting nonetheless -- (and the guy is still in business, if you can believe that), but prices for Railo hosting are hovering around $5-7 per month at the moment. Doing the math, that comes out to 260 months (21+2/3 years) of hosting before you've paid the cost of a Standard-Edition license. That's worlds more affordable for the hobbyist, but still not exactly a level playing field.
I also had the thought today that the relationship between Railo and Adobe ColdFusion is not altogether different from the relationship that must exist between Mono and Microsoft's .Net platform. I don't think anyone gravitates to C# because Mono is free. They do it because they like the language -- and oh, hey, they have the option of a free platform. I think those same types of people are the majority of people that use Railo. (There's also the case of someone who needs to break out of a somewhat restrictive licensing scheme, even though they're willing to pay for the licenses, but that's an edge case.)
So, with all of these thoughts swirling around in my head, I'm asking myself one question: Given no significant monetary restraint (i.e. deciding for my business, not myself), which platform would I choose to do CFML development? Or, more succinctly, which is better?
Given the current state of things, Adobe ColdFusion wins in my perspective. The fact that they have a team of engineers continuously improving the platform, and that it continues to be innovative and backward compatible shows a commitment to making ColdFusion the best it can be; and that they have a roadmap planned out for (publicly) at least another 2 major versions, and that it's a giant company with a diverse set of products and revenue streams means that it's not likely to give up on the product without a fight. I've also found ColdFusion to be much easier to install and fine-tune in a production environment. That said, I have to give a nod of respect to Railo's tiny download footprint and "Express" package for getting a development environment online in (literally) minutes; both of which, by the way, are also characteristics of Open BD.
Do they compete for the same market? Probably not much. Railo's core market, as far as my untrained eye can tell, is people who would otherwise not have CFML hosting; while Adobe is focused on Enterprise licensing. But am I gushing over Railo? No. Why is that? It seems to be exactly what I needed for so many years.
The fact of the matter is that (full disclosure!) this server runs Adobe ColdFusion 8, but I don't own a license for it. I was lucky enough to meet some people at CFUnited 2008 that were frustrated with the same things I was, and I convinced them that we should go in together on a dedicated server and split the hosting costs; and one of them is self employed doing CFML consulting and had a CF 6 license he was planning to upgrade to CF8 anyway. We now share the server and are all happy to have left the squalor of shared CFML hosting behind.
I might be singing a different tune if my circumstances were different, but from where I stand right now, being free doesn't make Railo (or OBD) any better than Adobe ColdFusion. As long as Adobe continues to lead in CFML innovation, and be responsive to the CFML community, I don't see that changing.
What do you think? Does "Free" automatically mean better to you? You are entitled to your own opinion...