ColdFusion, Railo, OpenBD...Oh My!
Over the past week a lot has been said about the Railo open-source
announcement. Most of the posts have been gushing about both Railo and
how open-source can somehow cure whatever ills face the CFML community.
Some posts have been less gushing but still highly supportive. Peter
Bell has been discussing some of the reasoning behind his decision to
join Railo in a series of thought-provoking posts. Sean has a good overview
with some very compelling arguments from a more pragmatic perspective.
However, at the risk of getting flamed, let me be the first blogger to
express some concerns about the whole deal (at least the first that I
have seen). Sean and Peter are great at stirring the pot, but in this
case, the proverbial pot is already stirred and I am hoping to stir it
a bit in the other direction.
Competition in a Niche Market
My opinion on the Railo announcement stems in large part from the fact that I think the CFML market is a niche market
and will remain a niche market. I've seen it argued that somehow having
an open-source option will somehow allow ColdFusion to grow like
adoption of Ruby on Rails has grown. Despite the fact that I love CFML,
I truly don't see how this is going to happen. I don't think the thing
preventing ColdFusion from becoming the "hot" language (again) is the
lack of an open-source alternative to Adobe ColdFusion or even the
price. In fact, I think that the fact that it is *Adobe* ColdFusion is
helping to keep the language alive.
It is interesting that the description of niche markets explains how
"narrowed demographics though lead to elevated price" and therefore
higher margins. ColdFusion has continued to remain profitable then, in
large part, because the small target market is willing to pay a not
insubstantial amount for the license. This profitability not only helps
keep the product viable, from Adobe's perspective, but helps to fund
the ecosystem needed for a healthy language market including
conferences, journals/publications (though limited in this case),
books, "community experts" and more.
Cannibalizing or Growing the Market?
Now much of the hoopla over Railo started because Gert and company
stated that their partnership with JBoss was going to allow them to
target Java developers looking for a fast and reliable way to quickly
build HTML UI's. I recall that many developers, including myself,
supported this initiative along with Railo's desire to work with Adobe
and not specifically target existing ColdFusion developers and licenses
(thereby not cannibalizing the profitability of an already small
market).
Though Gert seems like a nice guy, this was likely a pragmatic
decision. I think Gert and Railo recognize, as I do, that CFML's
continued viability depends in large part on its support from Adobe and
the ecosystem I discussed above that Adobe supports. Nonetheless, it
appears more recently that this strategy has changed as it is pretty
clear that Railo is heavily targeting not just existing ColdFusion
developers but high-profile developers (even Adobe Community Experts).
This may have been a necessary practical change from the perspective of
the survival of a small business, but it, interestingly, hasn't
affected many people's strong public support of Railo despite the fact
that many were won over on a promise of exactly the opposite.
Do You Care About Open-Source?
Why is that? Is it because Railo is open-source? Well, we had a
longstanding, proven alternative engine that was already open-source in
OpenBD. Granted, the licensing was different but that really only
affected changes/additions to the source code and not the applications
running on top of it. In fact there are a number of companies using it
and even hosting companies
supporting it. I know the BlueDragon name carries a lot of baggage
among existing CF developers but it doesn't if we are talking about
open-source being a means of broadening the existing base.
However, I suspect that most people care more about the free than the
open-source since they probably won't be looking at, nevermind
modifying, the source code. In fact, the very public adoption of Railo
by many prominent community members started well before Railo was
actually open-source, which, to me, implies that the issue here is
generally cost (licensing can also be an issue in some cases as Sean
points out such as EC2 where an exception to the license needs to be
provided but those cases are probably still rare and not the
environment generally discussed...plus, I believe Adobe has stated
their commitment to correcting this licensing issue in Centaur).
One major advantage open-source can have over proprietary products
like ColdFusion is the release cycle and bug fixes. ColdFusion is on a
two year release cycle with bug fixes and minor updates released
intermittently during those two years. Often, this means that
significant issues (like the EC2 issue for example) take a longer time
to resolve than they would in the open-source world. However, I will
say that this specific advantage isn't the same for every open-source
product and it still remains to be seen whether this will be the case
with Railo. Meanwhile, OpenBD has been posting continuous improvements
and community contributions since its initial release with little
fanfare.
Summing Up...Sort Of
Clearly, what *most* people are excited
about is that Railo is free. I also think software is a land of buzz,
and, in terms of open-source alternatives, Railo has a lot of buzz
right now over OpenBD - perhaps because of the BlueDragon baggage,
perhaps because Gert is a good spokesperson and the JBoss announcement
added some legitimacy to his product. I like free too and I understand
how this can affect people's decisionmaking process.
Still, I think we need to jump on the free bandwagon with caution. Much
of the ecosystem we rely on depends on Adobe's support of the product
that some people seem very quick to abandon for the promise of free.
The conferences we enjoy are supported in part by Adobe. Journals like
Fusion Authority Quarterly Update are funded in part by Adobe. (Note: this was corrected since I have received clarification that Adobe has not purchased ads in FAQU for quite some time - nonetheless I know that they do however support other publications in third party web sites) User
Groups are supported by Adobe. Community Experts are supported by
Adobe. We wanted an IDE (not to belittle CFEclipse but most of us
recognized the need for an IDE that compared to other language IDE's)
and it is Adobe that is delivering that product. The list goes on, and
my point is not that Adobe is wonderful or that they are faultless in
this whole process or that there isn't something they could do to help
grow the community and be more open or that they couldn't possibly
improve the pricing model.
My point is that we potentially abandon Adobe ColdFusion for the
promise of free at our own disadvantage. For years we worried that
Macromedia and then Adobe would abandon *us* and its possible that fear
is driving this in part - but could it be a self-fulfilling prophecy?
Sean may be right and Railo will only pick off the low-hanging fruit in
Standard licenses that aren't as profitable, but we don't really have a
way of knowing that or of guaranteeing that isn't merely a short term
trend (it certainly doesn't sound like a viable long term model for
either Railo or JBoss). If all the software decisions were made purely
pragmatically, then perhaps that would be the case but in my experience
these decisions are rarely so well thought out. I guess the important
question is, can CFML thrive without Adobe's continued support should
the ColdFusion no longer be profitable? Personally, I don't think so.
This is the narrowest of narrow views you can take about why people should (or shouldn't) care about open source. There's a million other reasons people should care that it's open source. You do a good job of covering one (the bug fix/continuous improvement/immediate availability angle), but I wanted to point this out again because "I'm not going to look at the source code so I don't care" is something I heard very frequently from CFML developers right after OpenBD was announced, and it's continually frustrating to me to see such a very narrow view.
Open source is new to many CFML developers, so lots of people in the CFML community (I'll say *most* people) still don't get it. I do hope that people take this opportunity to read some of the seminal literature in the open source world though; "The Cathedral and the Bazaar" (Eric Raymond) and "Free Software, Free Society" (Richard Stallman) are great places to start.
"Intellectual Property and Open Source" (Van Lindberg) and "Understanding Open Source & Free Software Licensing" (Andrew St. Laurent) are great for the practical aspects of licensing, etc. but I do hope people try to grok the philosophical aspects of open source first, because it goes far, far deeper than "free of cost."
Would CFML survive without Adobe? No one can know, and we probably won't have to worry about it, but I do think communities do amazing things when they have to. 500,000+ developers (or whatever number you believe) aren't going to move to something else overnight. And think of all the technologies that are MORE popular than CFML that never had a big commercial entity behind them. Did they or do they need one? Clearly not.
But again, we won't have to worry about it. CF continues to be profitable for Adobe, and as in the Java world, I think there's room for both proprietary and open source options.
The big thing is now we have choice, and if you're looking at it from a CFML community perspective I can't see how that's a bad thing for anyone in our little corner of the tech world.
"I make that argument because there was already a full-featured open source option in OpenBD before Railo was ever announced as planning to go open-source"
you forget that when openbd came to the show, it wasn't THAT compatible with existing cf8 applications. mainly people (like myself) were disappointed that it didn't include support for the cfdocument tag which all knew and loved. couple that with the fact that it also didn't have an administration console, the new shorthand syntax and support for argumentcollection; these features being left out meant that a lot of us who wanted to switch to openbd couldn't.
however, since then openbd now has some of these features and more. the openbd team is doing an outstanding job (cfstylesheet and cfjavascript make me drool) and i'm sure that within the next couple of month openbd will be on par with cf8.
railo on the other hand, comes to the show with almost perfect support for existing cf8 applications (there are some quarks, like cfinclude). this means that you can switch now to railo and thus the reason for all the hype.
this year is going to be very interesting for coldfusion. with railo now open source and compatable with cf8 and openbd on the way to full compatibility, it will be interesting to see what adobe's next move will be.
With any open source project, the pool of contributors at a code level is generally small compared to the pool of users (and the core committers are usually just a handful of people).
FOSS is successful for a lot of reasons, even in niche markets, and doesn't generally undermine the proprietary players in those markets.
For people with large code bases - especially ones that include old, old code - they are unlikely to switch from Adobe. Many of those folks with older code bases struggle to move to newer versions of ColdFusion let alone to a completely new engine, no matter how compatible it may seem to be. There are also vast sections of the 750k CF developer market that won't even hear about Railo or OpenBD or most of the frameworks and conferences and so on that happens in what we think of as the CF community. CFUNITED - our community's biggest event - attracts only 0.1 percent of the developer base. Only a tiny percentage of that 750k belong to user groups or mailing lists - or read blogs. If those people switch from Adobe to anything else, it's more likely to be Java or .NET I think.
Railo and OpenBD have different success criteria to Adobe. Adobe has to sell licenses to fund future development. OpenBD has no revenue model at all so its "success" is based on whether anyone uses it (yes - including hosting companies) and whether people care enough to form a community and contribute back (yes - that seems to be happening). Railo has a revenue model based on consulting services and potentially selling extensions (or at least offering an online store through which developers can sell their own extensions) - what is often referred to as a "professional open source" approach (whereby future development is funded by support and consulting - just as Mark Mandel does for Transfer ORM these days). There is definitely room for all three players to be successful on their own criteria and, in my opinion, there is very little risk of the two smaller players doing any real "damage" to Adobe.
Brian, I think many people think that having free (as in $$) versions of CFML will erode the Adobe "ecosystem" that you referred to. But I wonder if this is true. Because it seems to me that people who have paid for an enterprise CF license in the past, will continue to do so even with free options available. ColdFusion Enterprise offers a lot of features that these companies need, which are not available (yet) in the free alternatives. If that ever changes, then you may see some migrations towards the alternatives. But if history is any indication of future trends, Adobe will always be 1 or 2 steps ahead of Railo/BD.
Just like Matt said about Open Source, I think most big big businesses have a lot more on their mind than money. For them, software is about features, support, contracts, etc. Railo/BD don't have a lot to offer them (at least as far as their open source/free versions). Personally, I think these business people are short sighted and need to wake up and smell the roses. But me saying that won't change anything. :)
Regarding open source, I think 99.99% of people who use open source software never look at the source, never mind having the skills needed to modify and compile it. So for the overwhelming majority of users open source means 2 things. 1) Free to download and use and 2) No licensing limitations.
At this stage I'm not sure if I would give up CF and go open source, but I would seriously consider using Railo/OpenBD as auxillary servers to offload tasks to, particularly tasks where CF still has bugs and it takes Adobe years to fix! I have no idea why they're not embarrased by that?
One client has a limited budget and wants a VM to host their CFML app. The host doesn't have a CF license so it will be hugely cheaper to go open source.
History has a way of repeating itself. Ralio is the -new- New Atlanta. The moment CF9 comes out, they'll spend all their efforts trying to catch up. Thats the problem with trying to take ColdFusion developers from Adobe. They should have stuck with their plan to go after Java developers. Assuming that wasn't just all talk.
Whats up with all these Railo franchises like Railo US and Railo UK? If they are building a consulting business, why are they farming all the work out?
Watching the various CFML engines jockey for position is like watching a beautiful dance. It is a shuffle to find proper market niches. Viva la choice!
I wasn't sold on OpenBD or Railo until I saw this side-by-side comparison, real interesting stuff: http://tinyurl.com/awbzzb
New releases of any of these 3 engines means the other 2 have to decide if they ought to play catchup in their next release, as well as adding their own new features. If Railo and BD didn't exist I don't believe CF7, 8 and 9 would have as many new features. It seems they all need each other to deliver the cutting-edge appeal to compete with other web development technologies.
What if Microsoft was the only OS in existance? Windows 7 would be more like Windows 95. So even if you don't like Macs and Linux we owe them some credit for forcing additional features into Windows.
@Gary - I actually don't think that the features in BlueDragon ever necessarily drove anything in ColdFusion. Yes, they released some features first but that doesn't mean that ColdFusion copied them and in fact the release cycle is long enough that they were likely on the docket before BD ever released them. In the end, the implementations were different causing potential headaches for anyone using these new features but trying to be cross platform compatible. Hopefully, that sort of issue will be resolved with the language advisory committee.
Yes, one of the main reasons that Railo is appealing is because it's free, but if Railo takes any market share from Adobe based on licensing costs alone then it's clear that Adobe just hasn't been listening to the community concerns over licensing in the last several years. Railo can't be to blame for that.
Competition is good and as Gary says above I have no doubt that the existence of Railo and OpenBD have spurred on renewed innovation by Adobe which will benefit us all.
For those who care enough to actually understand the relationship between the OpenBD project and New Atlanta instead of holding on to years-old baggage and continuing to let that shape your opinion, you can read more here:
http://bit.ly/3HIN6
Do you honestly think all the people involved with OpenBD would be contributing all their time and energy for free to try and push people away from CFML? Makes no sense.
Second, OpenBD has a representative on the CFML Advisory Committee, namely me. Guess you didn't get that memo either:
http://bit.ly/R8YKP
Again, would I be interested in being involved if I didn't care about CFML?
Lastly, I don't get the anger towards New Atlanta. They opened up their Java edition of Blue Dragon to benefit the CFML community, which they didn't have to do. They still sell BD J2EE and had two large sales recently so it's still a viable commercial product.
And as far as the .NET stuff goes, New Atlanta is just filling a business need that no one else is addressing. Don't see how they can be blamed for that. Adobe doesn't play in that particular space, and at least with BD .NET people have the opportunity to stay with CFML, just running on .NET. If BD .NET didn't exist these companies would be ditching CFML altogether.
My beef with New Atlanta which I alluded to above is that Vince *is* still pushing migration to .NET which does in turn hurt the CFML developer market - migration isn't a two way street. Look at any of his recent blog posts and you'll see what I mean. Anyway, not to take this thread off track, but my original point was that Railo is directly contributing to making the CFML language better (as is OpenBD I'm sure).
I hope that clears things up from my perspective :)
Thanks for the clarification.
I've been reading Seth Godin's Tribes, a book about leadership, innovation, communication, new media, and to some degree marketing. In the book Seth purports that people follow and become fanatical about change and things that are new.
While having open source CFML is great (and something I support), I don't believe this is going to cause CFML to become hugely popular again.
But (you knew this was coming), there are a few things that would cause us to switch to a free alternative. First, all or at least most of our ColdFusion 8 code would have to work on the new server. This includes the Enterprise features of CF8, Flex integration, Flash integration, reporting, multi-instance, etc.
In todays tough economy we are cutting expenses every-place-we-can. A large portion of our IT expense comes from ColdFusion Enterprise and MS SQL Server 2005. If I went to my boss and said: "There's an alternative CFML engine out there that will save us thousands and thousands a year, it supports most of our current code, and the stuff it doesn't support we can fix pretty quickly," he'd have us on a R&D project to confirm all our thoughts and create a project plan.
In other words, we aren't super heavily tied to Adobe ColdFusion. We ARE tied to the language, we ARE tied to the features, and we love the way our programming processes and deployment processes work. We also have a solid hosting (our own) set up. If we could keep these ties and save a ton of money, we would.
I also strongly disagree with those who believe that open-source and free are going to make CF become virally popular again. We are in a different age with Internet technologies today. Developer have their beliefs about what ColdFusion is, albeit based on older versions, but since have moved on to newer and better things. It's very difficult to convince those very developers why they should use a language that perhaps could be seen as dormant for so many years in comparison to other technologies like Groovy, RoR, or Python.
As for open source, @Aaron you hit the nail on the head - having an open source CFML engine isn't by itself going to bring bigger market share for the language. Adobe could use its marketing muscle to grow the market share if they offered an open source version of ColdFusion, but whether that's a good idea from their perspective hinges on whether they could make up the loss of revenue in the Standard product through some other means, including but not limited to Bolt licenses.
If Adobe could open source Standard, minus any commercial components like Verity, and grow the developer base 10x, they would have to consider the move, but that's a huge market share move for any product. Developers need a compelling reason to switch. Not a new tag or a new capability, but something that makes CFML a 3x better choice than the next closest competitor, a la the iPod or iPhone. Is that reason out there? Not today.

