An Architect's View

CFML, Clojure, Software Design, Frameworks and more...

An Architect's View

Railo at CFUnited

September 14, 2009 ·

It's a month since CFUnited and I haven't yet posted my thoughts on the conference. I started writing but it turned into an essay and I'm not sure it's worth posting in its entirety, especially since many others have posted their reviews (mostly all glowing - and rightly so!). I will post a brief review of the conference soon - it's on my Things to-do list and everything on that list gets done (eventually). The other overdue blog post on my Things to-do list covers what it was like to be a sponsor at CFUnited. A first for me (sort of). I've been attending (and speaking) at CFUnited since it was CFUN'04 (when I covered the use of Mach-II at Macromedia). Sure, Macromedia and Adobe have been regular sponsors but that is the ColdFusion product team and I was going independently as part of another team - the joys of a big company - so I never felt I was a sponsor (I never worked for the ColdFusion product team - even tho' a lot of people seem to think I did!). This year - 2009 - Railo was a silver sponsor of CFUnited and so I spent quite a bit of time around the Railo "booth" talking to attendees.I will admit that I was surprised by how many people hadn't heard of us at all! Even tho' I keep saying it - that CFUnited's attendance represents only 0.1% of the CF developer base - it's still a shock to realize that the biggest CFML conference in world dwarfs what we like to think of as "the community" based on blogs and Twitter (cfbloggers aggregates 533 blogs and an even smaller number of the community are well-known on Twitter). The upside was that I got to speak to a lot of people new to Railo. They heard about us mostly through Joe Rinehart's inspirational day two keynote - thank you Joe! - but also through just seeing our booth or attending Gert's presentation on the open source Railo server (or presentations by Mark Drew, Peter Bell and myself, I guess, since we all mention our employer!). The number one question I was asked: "Really? I can run my CFML applications on Railo for FREE?" With my background in Unix/Linux and over two decades of writing free open source software, I still find it puzzling - and a little disturbing - that people don't really believe there are free solutions out there for many problems... What really surprised me tho' was how many people came up and were bemoaning a departmental - or, worse, corporate - mandate to move to free and/or open source software and therefore away from their beloved ColdFusion. One guy told me that his department were faced with rewriting all their CFML code in PHP because they had to move to free open source software. Naturally he was delighted to find that he could keep his CFML developers and his CFML code and still move to a free open source system! This happened over and over again. Sometimes it was Java, occasionally it was Ruby on Rails, mostly it was PHP. And of course there were also the "free as in beer" .NET mandates - "we already run Windows so .NET is free and we shouldn't have to pay to deploy our web applications". Guess what? You don't have to abandon CFML to run your web applications for free. That was pretty uplifting overall. It vindicated what I've always said about Railo (and it's true about Open BlueDragon too): instead of leaving CFML for some free / open source alternative, why not keep your CFML code, keep your CFML developers and just use a free open source CFML engine instead? If Adobe were already losing a customer, better to keep them using CFML than lose them to another technology, surely? Well, that's my point of view, and CFUnited reinforced that. Free as in beer? So I mentioned .NET as being free as in beer. If you're a Windows shop, you've bought your licenses and .NET deployment is free. Sure, Visual Studio costs money but there are no production licenses above and beyond your Windows systems. It's a common argument against ColdFusion in the Windows space and Microsoft makes great play on this point. ColdFusion development is free as in beer too, of course, but deployment to shared development and testing servers will cost you money (although I think Adam Lehman would like to change that - which would be a huge win for all ColdFusion developers). Railo is free as in beer too, of course. You can download it for free - even for production. You can buy support if you like (just like you can with Adobe). Railo is also free as in speech. You can run Railo for anything you want (freedom 0). You can download the source and inspect it (freedom 1). Under the LGPLv2 license you can redistribute copies of Railo (freedom 2) and you can create enhancements and bug fixes and freely distribute those too (freedom 3). You can also repackage Railo with your commercial application and make money out of it without paying Railo a dime - something you can't do with Adobe ColdFusion or Open BlueDragon. That's why we chose LGPLv2 instead of GPL. There's a spectrum of open source licenses and in some ways you could put GPL on one end and ASL2 (Apache Source License 2.0) on the other - they control what you can do with the source code in terms of distribution. GPL is restrictive: anything you build based on GPL code must also be GPL code (OpenBD lets you run your CFML on top but you mustn't modify OpenBD without releasing those modifications as GPL). ASL2 is the opposite: you can essentially do whatever you want with the code, commercially or otherwise, as long as you acknowledge the original copyright. I release all my personal projects under ASL2: I don't care, just credit me. LGPLv2 is fairly permissive: you can build closed source commercial systems on top of it but modifications to the original open source code must remain LGPLv2. I got a little off-topic there but I hope you found the free vs open source discussion useful? The bottom line is that CFUnited was a great experience and was also great exposure for Railo and I think it opened many people's eyes as to what is possible. If you're being forced to move away from Adobe ColdFusion because of some free and/or open source mandate, you don't have to leave CFML behind - Railo can help you. If you love CFML but have projects that don't include a budget to buy Adobe licenses, Railo can help you (of course we sure wish you had budget for support - but the community mailing list is full of free support too). At the end of the day, the CFML community grows stronger by having more choices and the ability to use CFML on more projects.

Tags: cfunited09 · coldfusion · openbd · oss · railo

4 responses

  • 1 Sid Maestre // Sep 16, 2009 at 10:34 AM

    Hey Sean,

    Let me add that pressure to move away from ColdFusion also steams from successful open source applications written in other languages. WordPress, Drupal, etc. Around these projects have sprung a community to build plug-ins and themes. This is a big challenge for our beloved ColdFusion.

    The CF Community must support (whenever possible) the open source applications built with ColdFusion. Mura CMS and Mango Blog are two that come to mind. They both act as counter weights to the calls for WordPress and Drupal installs.

    The real question is can the CF Community build the plugins and themes necessary to compete with the PHP open source apps. From what I've seen with Mango Blog we are off to a good start. What do you think?
  • 2 Sean Corfield // Sep 16, 2009 at 10:44 AM

    @Sid, yeah, and that is what has led to the formation of 4CFF - 4 ColdFusion Foundation - as an Apache-style foundation to support open source development and help reach those high-quality goals.

    I'll blog more about 4CFF in due course.
  • 3 tanguyr // Sep 18, 2009 at 3:05 AM


    Minor nit-pick: when you write that "GPL is restrictive: anything you build based on GPL code must also be GPL code", that's not 100% accurate. It would be better to say "GPL is restrictive: anything you build based on GPL code **and want to distribute outside your organization** must also be GPL code" - distribution is what makes the gpl clauses "kick in". Basically: you don't have to share your changes with the rest of the world, but if you do they must be GPL.

  • 4 Sean Corfield // Sep 18, 2009 at 10:27 AM

    @tanguyr, good point, yes, if you only modify the GPL code to use it in-house, you do not have to share your changes. For Open BlueDragon, that means an organization can create a modified version for their own internal use.