ColdFusion 9 + Hibernate == Transfer Killer?

So I figured I better head this off at the pass, because I'm already getting questions in my inbox about whether this is the end of the road with Transfer , and what I plan to do with it, and OMGZ! TRANSFER IZ DEADZ!!!.

Let it be known, it couldn't be farther from the truth.

Transfer is not dead, development will still continue way into the future, and I can see a healthy life-cycle for its continuance.

A few points for your consideration:

  1. ColdFusion 9 is not even here yet.  Nobody even knows the exact date it will be shipped.  You want ORM? You can have it right now with Transfer! No waiting around, no fussing.  The documentation is written, the example applications are there, and you already have a large community to integrate with. 
  2. Hibernate integration may not even be implemented with ColdFusion 9.  Yes, we've seen some short demo's, but we've seen demo's of functionality in pre-release at keynotes before, and they didn't make it into production before.  Hibernate and ORM is a pretty complex beast, and especially tying that into CFCs, so any number of things could make it ship late, or not at all.
  3. ColdFusion 9 will cost you $$$ to upgrade.  So you're not getting all this for free.  Transfer can be used right now for $0, and will always be $0.  It is only then up to you whether you want to pay for support, or training, consulting or even new features!
  4. The Transfer release cycle will always be faster than ColdFusion's.  If there is a feature you want in CF's ORM support, you'll have to wait ~18 months.  The Transfer release cycle is around the several month mark, and with the sponsored development program, the features you want in your ORM support can generally be developed in the same week you request them in, in fact the last sponsored development I completed I did in 6 hours! (Yet to be blogged, although in SVN).
  5. We don't know how well the ORM integration in ColdFusion 9 will be developed.  While I love the hard work that Adobe does, we can all remember Flash Forms.  Lots of Shiney, not very useful (maybe that was too low a blow? ;) ).  My point is, there is no point in putting the nail in the coffin until we really know what we are dealing with.
  6. There are plenty of businesses and projects out there using Transfer already, and there is no reason they would suddenly stop using it, and switch (although that is a possibility).  As long as people keep using Transfer, I will keep developing it.
  7. Transfer is a proven technology that has undergone a lot of rigorous testing.  While Hibernate can say the same, we have yet to see how the ColdFusion and CFC integration will perform.
  8. There is no reason why Transfer can't take advantage of some of the ORM integration tools.  For example, if a CFC annotation structure is setup for use with Hibernate, there is no reason Transfer couldn't use the same annotations, so using one tool or another is quite seamless.
  9. All in all, competition is a good thing.  Having competition forces everyone involved to strive to become best in breed.  So this will actually be a good thing, both for Transfer and for ColdFusion.

I don't want to be showering doubt over the ColdFusion 9 integration with Hibernate, it makes sense for them to do it, and I can completely see where it is coming from, and there are a lot of smart people behind it.  But, there is still a lot of unknown factors here, and a lot of reasons to still use Transfer, so don't feel like the project, or the business is going to die, because its not.

I'm really excited by some of the announcements I've been seeing with ColdFusion 9, including the ORM integration, and I think the next few years will be an exciting time for the ColdFusion community.

Leave a Comment

Comments

  • Aaron Roberson | June 19, 2008

    Well put. ColdSpring is the most direct port of Spring to ColdFusion but I still use Peter Bell’s LightWire for IoC/DI because I find that it does all I need it to without all the overhead.

  • Adrock | June 19, 2008

    Ouch, Flash Forms was a low blow. But couldn’t agree more.

    Transfer is very relevant today and will continue to be. The skills learned through Transfer are applicable to working with any ORM solution so it’s time well spent.

  • Kay Smoljak | June 19, 2008

    If anything, having Hibernate in CF9 will introduce many more developers to the concept of ORMs – expanding the market for Transfer as well.

  • brian | June 19, 2008

    Wouldn’t it be great if Adobe spoke to you so there could be some consistent syntax whether you’re using cf9 and integrated hibernate or transfer

  • dfguy | June 19, 2008

    couldn’t agree more. personally i think adobe should break the orm off as a separate project (you reading this adrock). unless this orm thing is going to be using specific code that will only be found in cf9, then i see no reason why we have to wait until the 9 release to use it. the other reason is updates. can’t stand the fact that we will have to wait until adobe puts out a hotfix or service pack to cf9 to get new features or bugfixes for the orm portion.

  • Brian Swartzfager | June 22, 2008

    You sort of hinted at this, but another advantage of using Transfer over whatever CF9 might bring to the table is that Transfer will work in three versions of CF (7, 8, and 9), making apps that use Transfer deployable on a wider range of development environments.

    And that portability probably won’t be limited to just ColdFusion: I can’t think of a reason why you couldn’t use Transfer with Railo or OpenBD. So again, Transfer gives you a lot of freedom when it comes to choosing a CFML platform.

  • Richard | June 22, 2008

    I don’t see how the existence of ORM funcitonality in CF9 would be a "transfer killer". Apart from all the reasons that Mark cites it still has to work better. As Kay says, if it brings the whole area of ORM usage to a new user base people will look around at alternatives. It’s just competition, and Transfer has a head start

  • Joshua Cyr | June 24, 2008

    I am greatly relieved by your dedication to Transfer’s future Mark, though not surprised.

    As a CF app developer I have been pondering this as well. For our CMS at least, we try to not force our customers to buy the latest CF to keep up to date with us. One version back is a good rule of thumb thus far. I imagine many other app vendors would be the same. So even with CF9 (or whatever they call it) many of us couldn’t count on our clients to upgrade from 8 right away.

  • Jose Galdamez | June 24, 2008

    After last week’s CF United, I made a laundry list of top frameworks I would need to learn, and without a doubt Transfer is at the top. I’m relatively new to working with frameworks in general. This particular one looks quite promising. The built-in integration with CF9 + Hibernate was fairly impressive during the Adobe keynote, but I don’t see it as a "Transfer killer." It will be some time before we see CF9 released, and as was mentioned previously Transfer would still be backwards compatible with older versions like CF8 (soon-to-be) and CFMX.

  • David McGuigan | June 26, 2008

    Is there somewhere we can go to see the Hibernate integration demos? For those of us that weren’t at the conference(s).

  • Betsy Buchanan | July 15, 2008

    Thank you for letting me know that instead of paying money for this that I can just transfer it as you suggested – this is indeed an exciting time.
    Until Next Time,
    Betsy Buchanan

  • Justin | August 5, 2008

    We just had Gert from Railo present at our CFUG. Railo will have hibernate in the 3.2 release in November.

    Railo is pretty rocking. Those guys know their Java! I dare say that Adobe has some competition.

  • Jonas Eriksson | August 16, 2008

    Hey Mark, Good to hear you keep up the great work. Agree with other postings here, what we value is a careful, steady progress, not the "here it is, use it, oh wait, might not be quite ready yet" iterations sometimes displayed by Adobe (Spectra, Flashforms, ..). :-)

  • Shimju David | June 6, 2009

    Once CF9 launches, those who use the transfer ORM will definitly shift to CF9 ORM. Transfer ORM features no where near to Hibernate feaures. Hope future version of Railo will also release the same . So Transfer’s death is certain :) . We still not using transfer due to the same reason- to avoid lot of porting. This happened earlier also – those who used Reactor later ported to Transfer when Transfer performed far better and with lot many features. So I will suggest stop using Transfer now and wait for CF9 ORM.

  • Brian Swartzfager | June 6, 2009

    @Shimju: So you’re suggesting folks don’t use any ORM at all between now and the time CF9 comes out? Ridiculous. People who want to retrofit their existing code to make use of Hibernate in CF9 are going to have to refactor regardless of how they’re currently creating their data objects.

    Even if CF 9 comes out this year, not everyone’s going to be able to pony up the cost of upgrading right away. Folks who want to use ORM in their projects shouldn’t just ignore ORM until they can use CF9: they should make use of the best ORM solution for them at the moment.

    While I want Adobe to come out with an excellent and sensible implementation of Hibernate, I’m not going to take it at face value that it’ll be an ideal solution for me and just throw away the solid ORMs we have now (Transfer being my personal favorite).

  • Richard | June 7, 2009

    @Shimju – odd kind of "advice". As Brian says – what are you using meanwhile, and how will you port that solution? If and when CF9 ORM is out and tried and tested and you need any features not provided by Transfer, then maybe you should think about migrating. Otherwise why? We’ve been running production sites for maybe over a year quite happily with Transfer. We’d also use it for any new projects if the fit is right. It’s been a godsend. (Thanks Mark!)