There have been some lively discussions on Twitter today centered around the adoption of open source CFML engines in various types of businesses. I can’t speak to any kind of trends anywhere, but I wanted to share my experience with a project I was involved in last year that used Railo as the CMFL engine.

My brother, Andrew, is the head of the IT department for a firm that sells books and other supplies to school libraries all over the country. When he took over the position, he inherited a web site built on Java using the Struts framework. The original site had been in place for quite some time and the ownership decided it was time to refresh the site. The main issue (besides the outdated design) with the site was that it was so difficult to update. I’m not a Java developer by any stretch of the imagination, but from what I understand, even the simplest update required the site to be recompiled. The actual implementation of the site was fairly brittle as well, so new features were generally not even considered for fear of breaking something that was currently working.

Andrew had previously done some ColdFusion work with me on some of my other projects. He approached his management about contracting with me to help them replace their java web site with one built on CFML. During the initial requirements gathering and planning phases, the decision was made to use Railo as the CFML engine for the site. The site was launched a few months after Railo released their first open source version which appealed to them as they have several systems within the company that are open source. Cost was not a major concern (Railo being free vs the cost of a standard license of Adobe ColdFusion) but it was a consideration as this project did have a fixed budget. When we started the project, Adobe ColdFusion 8 was the most current release. Budgetary constraints probably a few more factors I wasn’t privy to led to the decision to use Railo as the CFML engine for the site.

Our experience developing with Railo was very positive. We built the site using Mach-II, Transfer, ColdSpring using a PostgreSQL database backend. We had one little issue with Mach-II when we plugged in the Mach-II Dashboard module into our main config. Peter Farrell and I traced it down and found that it was due to a difference in how Railo parsed XML vs how Adobe ColdFusion did. I worked with the folks at Railo and they got the problem sorted out in one of the next releases.

The site went live the first of August, 2009. Between January 1 and August 1 of 2010, the site experienced a 562% increase in revenue generated when compared to the same time period of 2009 (the YTD time frame leading up to the new site going live). They’ve also seen a dramatic increase in the amount of traffic to the site since the new version went live (although I don’t have exact percentages at my fingertips to share). Just as importantly, in the months sice the new site went live, they have been able to add dozens of new features to the site–both publicly-available features as well as features for administrators and sales people that just would have been too difficult to try to weave into the previous java struts based application.

Finally, while this “success story” has Railo as one of its key components, the bigger issue in my mind is the fact that a formerly java-centric shop has converted to using CFML successfully to run their business and provide a better experience for their customers and employees.

Disclaimer: I’m not on either side of the Railo/OpenBD/Adobe CF argument. I’ve not had a client since that project that’s given me the option to use Railo so all of my work since then has been in Adobe CF but I certainly wouldn’t dismiss Railo straight away if there were an option to use it on a future project. The intent behind this blog post is simply to provide one real-world example of Railo being an entry point into CFML development, not to take either side of the Twitter discussions that have been going on today.

**Update: Corrected the incorrect timeline of when Adobe ColdFusion 8 came out and removed some inaccurate statements about speed of Railo vs the Adobe CF version out at the time (which was mistakenly stated to be MX7). Thank you Adam for pointing out the error.

6 thoughts on “Converting one company to CFML using an OSS CFML engine

  1. @Dan – Just to clarify, the dates don’t seem to add up. Railo announced they were “partnering” with JBoss and open sourcing the engine in June of 2008. Adobe ColdFusion 8 was released in July 2007.

    http://www.adrocknaphobia.com/post.cfm/breaking-railo-partners-with-jbossorg-to-open-source-cfml

    I think great to see a Java shop adopting CFML. In fact, post ColdFusion 8, most of Adobe’s marketing was focused on this segment. What I’m struggling to understand, is why you attribute this conversion to Railo specifically. It seems like the decision to move to CFML occurred prior to choosing an engine. As you mentioned above, cost wan’t an issue and open source was more of a ‘nice to have’ not a critical factor.

    What I’m most curious to know form your brother if they are still happy with the decision of Railo over Adobe ColdFusion? Did they purchase the Enterprise version or support from Railo? Or is this another example of money not be invested in the CFML eco-system?

    -Adam Lehman
    Product Manager / Adobe ColdFusion

  2. @Adam…that’s what I get from trying to do things from memory. I had it in my head that CF8 was released later, but you’re right. CF8 had been out a few months when we started talking about the project. I’ve updated the post to reflect that and removed the obviously erroneous statements about speed of Railo vs the then-most-current Adobe CF release.

    As for cost vs. open source, that’s correct, open source was a nice-to-have and allowed some of the budget to be shifted to other items besides software licensing costs. Similarly, you’re correct in that the decision to move to CFML occurred before an engine was chosen. I don’t recall saying in the post that Railo was the reason that we decided on CFML as the technology for the site. If the post read that way, then I apologize for not articulating that more clearly.

    Concerning whether they are still happy with Railo or not, I’ve pinged my brother to see if he’d care to comment here on that.

  3. Andrew Skaggs

    I am the aforementioned (infamous?) brother. We are very pleased with how our site is performing. The few problems we’ve had with the site have been implementation/framework related and are not attributable to Railo.

    To my knowledge, the only thing that Railo did not offer at the time of our initial development was Flash charting. There are, of course, open source alternatives to that which are available now (and may have been available then).

    I use both Railo and Adobe CF daily (Railo at my 9-5 and Adobe CF for several side gigs), and in my day-to-day development I rarely (if ever) have to think about the differences between the two. That’s a win-win scenario as far as I’m concerned.

    We did not purchase the enterprise version or support from Railo. The money saved from not having to pay for an application server went toward CF conferences, training materials, etc. In that respect, money was injected into the “CFML eco-system”.

  4. Hi Dan,
    A great story to read! Thanks for writing it.
    As I shared on twitter today, I also rescued one site from becoming PHP this week ;-) My client’s client just needed a small online app, but demanded internal hosting (semi-government; security reasons). My client, a CF developer, almost wanted to pass the client along to a PHP firm, untill he thought of Railo, and me for installing it at his client. Now the job contract will most probably be signed, after which the client will be running it’s first site on Railo! Or: “…will be running it’s first site on CFML!” if you wish.

    It’s my strong opinion this is what’s best for the future of our cfml eco-system: GROWTH!

Leave a Reply

Your email address will not be published. Required fields are marked *

*