This post is reproduced from my post at my personal blog ramkulkarni.com.

Though ColdFusion Thunder is the next version of ColdFusion Builder (the last version was 2.0.1), it is like a new IDE because it's a major re-write. Past versions of ColdFusion Builder were built on top of Aptana. I had noted some of the challenges in implementing ColdFusion Builder a couple of years back, when CFB 2.0.1 was released.

ColdFusion Builder (till version 2.0.1) used a very old version of Aptana. Aptana later re-wrote and improved their IDE and released it as Aptana Studio 3.  The integration points in Aptana Studio were changed to such an extent that integrating CFB in it would have meant re-writing it. So we decided not to base ColdFusion Thunder on Aptana and implemented many features that Aptana had contributed earlier - most notably editors for HTML, JavaScript, CSS and XML. This also meant CFML editor had to be re-written because it was based on Aptana APIs to integrate HTML, CSS and JS editors in it.

The task was huge and we, in the ColdFusion team, had been working very hard during the past two years to - first build all (or most) the features of CFB 2.0.1 in Thunder, and then to add some more features. If you have used ColdFusion Builder in the past, then you will see great performance improvements in all the editors in Thunder. Specifically you should see difference when editing large files. The memory footprint is also improved.

Here are some of the new/improved features in Thunder - 

  •  As mentioned above, improved editor performance
  • Built-in ColdFusion Server. Thunder installer gives you option to install ColdFusion Splendor (next version of ColdFusion Server) along with it. If you select this option, the installer will not only install the server, but will automatically configure it in the server manager view of Thunder. This would be very useful for local development.
  • Option to quickly import local server in the server manager view. You just provide server name (any user given name) and path to ColdFusion server installation folder. Thunder will read port number and RDS information to configure the server in Thunder.
  • Option to set background color for each element in the syntax color preference pages.
  • HTML 5 code assist in CFML and HTML files
  • Syntax support for new language features in Splendor
  • Code assist for new functions (including member functions) and tags in Splendor
  • Improved JavaScript code assist
  • Configurable editor toolbar. Aptana editors had toolbar in each editor with pre-configured shortcut options to insert text in the editor. Many had asked to make this toolbar configurable, i.e. options to add/remove shortcuts.
  • Collapse CFML function on file option. CFEclipse has this preference option and many had asked us to provide similar option in ColdFusion Builder
  • Linux support. Earlier versions could not run on Linux becuse of a licensing library we used which was not supported on Linux. We have replaced that library in Thunder.
  • Support for HTML5 mobile application development
    • Mobile Project Wizard. You can start the wizard from File->New->ColdFusion Mobile Project menu option.
    • Mobile Project Templates. My colleague Milan has blogged more about this.
    • Preferences to setup integration with PhoneGap Build server. Go to Preferences->ColdFusion->PhoneGap
    • Package mobile application by right clicking CF mobile project in the Navigator and selecting 'Generate PhoneGap Build' menu. Using this option you can create Android and/or iOS package of your mobile app.
    • PhoneGap Status view (at lower-middle) where you can see PhoneGap builds created by you. You can also download the builds from this view.
    • Project properties to select files to be included when packaging mobile app and also to set many PhoneGap properties and features. Right click on a CF mobile project and select Properties. Then go to 'ColdFusion Mobile Project' option. You will see tabs for 'Resource Selection', 'PhoneGap', 'Inspect' and 'Miscellaneous' options.
    • Option to debug mobile application. To debug an application, right click on it in the Navigator view and select 'Debug As'->'ColdFusion Client Application'. This will launch the debugger. When you run you mobile application, the execution will stop at breakpoints that you had added in cfclient code. Note that if you want to debug packaged application, then you need to first set options in Preferences->ColdFusion->Client Debug/Inspect Settings. Then right click on a mobile project and select  PhoneGap Debug->Generate Debug Build menu option.
    • Options to inspect (using Weinre) packaged mobile application. Right click on a mobile project and select PhoneGap Debug->Generate Inspect Build option. Make sure you set URL of the Weinre server in the project properties before generating the build.
    • Code assist for cfclient APIs. You also get JavaScript code assist in cfclient block.

Following features from CFB 2.0.1 are not available in Thunder public beta.

  • Quick Fix in CFML editor
  • CF Advanced Find and Search
  • Persisting code folding in CFML editor
  • Quick outline (this has been implemented post public beta)

Following features are implemented differently in Thunder using third-party Eclipse plugins

  • FTP synchronization
  • Log Viewer

You can download ColdFusion Thunder from Adobe Labs. If you are interested in developing mobile applications using Thunder, then you might find my blog post, Simplify Mobile Application Development Using ColdFusion, useful.

-Ram Kulkarni

24 Comments to “ColdFusion Thunder – It’s all new IDE”

  1. Andy
    Adobe should stop misleading the community. For an engineer, rewriting CF Builder using a new architecture definitely sounds exciting and interesting. But How do customer benefit? Can we please talk about those details more often? Of late, this is a perspective that is repeatedly being missed by Adobe on ColdFusion. Example -

    "We have a spend great effort on building mobile story" - so please go and buy it. Why are you complaining if this is how majority are not building and testing mobile applications.

    "We have spent great effort on re-building CF Builder" - Go and use it. Why are you complaining if the tag does not close in a natural fashion while you type. Why are you complaining if sublime offers better editor experience. Buy and use because we spent great effort.

    "We spent great effort in making cfclient available in the server". Why complaining if that should actually have been a builder feature.

    ColdFusion 11/Splendor is turning out to be the worst ever release in recent ColdFusion history. No surprise with arrogant and I-know-all attitude and not customer centric attitude.
  2. Adam Cameron
    [subscribe]
  3. Ram Kulkarni
    @Andy, who is complaining here? I hope you would agree that we have every right to talk about and promote features that we believe would be useful to our users and also blog about them. Are we going to please every users? Of course not.
    Are we forcing you to buy any of the products when you think there are better products available? No.
    If you have specific issues with the product, please use http://bugbase.adobe.com/ to log them and we will look into them.
  4. Andrew Scott
    One of the things that people know me for is to be on the band wagon of hate when Adobe go down the wrong paths.

    However I am very pleased to have seen you go away from Aptana for CFB, well done.

    However, I am with @andy on this from a user point of view, what incentive for me to upgrade my 2.01 license is there. There is no substantial new features in CFB that I will ever use. I am aware you have the new integration into mobile development in ColdFusion connection.

    But that is a small select market, now if you have fixed all the debugger issues and concentrated more in that integration, then maybe I would fork out some money to upgrade.

    This version had better be free, or I think Adobe are really going to loose a product that had potential because there will not be enough users using it.

    The mobile integration into this tool is handy, but that market for your users will be small, very small as people already have the tools and libraries and frameworks to get going, but I am not going to fund that development because your too damn lazy too even look at fixing the issues that have plagued this product since it was first released publicly.

    But don't take the rewrite away from this, it was a big job and congratulations for doing so, ColdFusion Builder will be all the more better for it.
  5. Ram Kulkarni
    @Andrew, I agree that we need to do better job of maintaining the debugger. I have seen the bug you had filed about skipping a line when stepping over. The fix is required on the server, most probably in the code that generates line number table. I guess one of the reasons why this bug is not fixed yet is that it happens in a specific scenario and not always. That does not mean it should not be fixed, but its priority reduces.

    Regarding market for Mobile apps, I think there is a big market and it is growing. And even though there are many tools available today, we believe the workflow we provide is not provided by many.
  6. Andrew Scott
    @Ram, yeah it is not just that. But the debugger gets slower and slower the more you step into lines as well. I mean that bug is almost 9 years old now, which is the by product of the ColdFusion 8 debugging which it was originally listed against.

    Actually it does happen always.. The same as one can't debug anything that is stored in the application scope, that is buggy in itself, as it is very picky as to when it will and not work.

    I even had a connect session with 3 or 4 Adobe employees and was dumbfounded when one of them saw the line being executed 3 times and the result was the same each time. But the comment was that this was expected behavior, my question is how is it expected in the line debugger but works differently when it is run on the server.

    When I hear dumb comments from an Engineer, my respect for that person goes out the window fast.

    Yes there is a big market, but Adobe hear me now. That is the only big ticket for ColdFusion Builder that is marketed at a very small market that is in a small niche market to begin with.

    In other words, as I stated, I will not be funding this version because there is nothing significant in these features to make me want to upgrade. That means I then go looking for an alternative, that is not just me, but how others are thinking right now. With so many other and lets be honest, far better alternatives Adobe need to offer this as a free upgrade to anyone who has purchased V2.0

    Even better, would be to move CFB into the free to use full stop model, that would encourage more of the ColdFusion community to come back.

    But hey, what do I know.
  7. Andy
    "... we believe the workflow we provide is not provided by many. "

    This is what is called misleading the community. This is called I-know-all attitude. I am yet to see any community member openly coming out in support of the mobile strategy. Saying that they all know nothing about mobile development or are ignoring a workflow not provided by many is an arrogant attitude by Adobe and represented by you.

    I bet you have no data to share on your research about who all people and company you reached out to before building the solution. Your research, as highlighted by other community member, is based on growing mobile market. But not based on problems and way customers want them to be solved. This is what I call missing cusotmer-centric approach.

    Most users in their thought process have already or are moving away from CF. CF is not getting new customers. Customers who are stuck with their investments may give you solace on upgrade revenue.

    But for how long?
  8. Ram Kulkarni
    @Andy, I am not misleading the community. If you don't believe it, try out other solutions, compare it with what we have implemented and form your own opinion.
    I am sorry if you think I am coming across as arrogant, that was not my intention.
  9. Adam Cameron
    @Ram: FWIW I don't think *you* are misleading the community. I also don't think you are coming across as arrogant.

    I do however - as you know - think Adobe have misfired with their handling of their mobile offering. Although more from the ColdFusion side of things than the CFB side of it. But we've done that conversation to death, so let's just see how it pans out.

    However it could well be a great feature of CFB, but alas I shall never know because I've moved on from CFB, and "mobile dev workflow" is not enough of a feature to get me back.

    What little feedback I have heard about CFB 3.0 so far has been mostly positive though, so good luck.

    --
    Adam
  10. Andrew Scott
    @Adam - Agreed, the majority of people who would use this product are currently using better solutions. Because Adobe took too long to fix CFB, but having said that now that they have better control on what gets fixed an when. I hope god almighty that Adobe start releasing point releases more often than 3 years later.

    As for the Mobile features, this is certainly an area Adobe has risked a lot, whether the approach is right, time will only tell. Personally I don't like the idea of mixing CFML with JavaScript to do the same thing. I would have preffered ECMAScript as it is very close to ColdFusion script anyway, loose the ColdFusion namespace for tags and provide what appears to be a new language. But to mix CFML is just not going to work. As Adam said it has been beaten to death and time will tell, problem is when you introduce a a language it is very hard to go back because of backward compatability. So if it fails, that is going to look very bad for CFML in whole. Wonder if Adobe thought about that?
  11. Aaron Neff
    Hi Ram,

    Regarding: "Option to quickly import local server in the server manager view."

    Does this only apply if "Install ColdFusion Server" is checked during Thunder install? For me, this feature assigns port 0 when quick-importing a local server, and the local server definition isn't added to Server.xml.

    Thanks!,
    -Aaron
  12. Wil Genovese
    Will these two be in the final release?

    Quick Fix in CFML editor
    CF Advanced Find and Search

    They are EXTREMELY useful features.
  13. Danny Armstrong
    I clicked the link hoping to see added support for Linux. I don't see that specifically mentioned here - I'm assuming it's still true CF Builder will not run on Linux? Since Eclipse itself is already cross-platform I'm curious why CFB is not.
  14. Ram Kulkarni
    @Aaron, import server should work even on servers installed outside CFB. But if you point it to web server (IIS/Apache) docroot, then it won't be able to read port number.
    Also this option does not modify server.xml. It just reads this file to get port number.
  15. Ram Kulkarni
    @Wil, as of now these features are not ported. Can't say if they will be before the release.
  16. Ram Kulkarni
    @Danny, ColdFusion Thunder can now run on Linux. I forgot to list this point. I have updated the post now.
  17. Jeff Davis
    This (CFB) is a tool I currently am using. This beta improves the responsiveness of the tool, therefore it is a Good Thing(tm).
    Whether it serves the long range goal of making the ColdFusion platform easier to use, and attracts new proponents for CF is a question to be answered when it is generally available... IMHO.
    I like ColdFusion, don't like some of the things I'm hearing about unsolved issues, understand you can't fix everything at once, and hope improvement happens that both serves the purpose of making a better platform and helping Adobe market the product.
    That said, I need both to survive in a delicately balanced ecosystem, Open Source projects related to CFML and Adobe supported tools to allow COTS solutions...
  18. Tom Chiverton
    While some of the stuff there is nice, and full Linux support is awesome, as far as I see basically no one is using CFB, yet alone Eclipse, any more as they've all migrated to lighter weight tools e.g. Sublime, hell even Notepadd++.

    CFB3 feels like a point update to me. The only major stand out new thing is mobile. And I'm with everyone else on that - it doesn't solve a problem people have. PhoneGap Build is already really easy to use.
  19. Andrew Scott
    @Tom, I think the best thing Adobe could do is make CFB free to use. But having said that, all the new mobile stuff is a paid feature.

    If anything this will either prove us wrong or prove Adobe right, I think if the product was free without limitations for everything but the mobile stuff, would this not say to Adobe well we got x amount of new people on board but it looks like no-one wants to buy it for the mobile stuff...

    I think Adobe has gone about it right, bridging the gap between client and server development into an IDE, what I don't like is the mixing of cfml for client side work as well.
  20. Jim Priest
    I stopped using Eclipse quite awhile ago to use Sublime and don't think I could ever go back.

    And if I was going to shell out $$$ for an actual IDE I think I'd be hard pressed not to pick IntelliJ. Basic CF support (in line with Sublime) but tons of support for all the other languages I am becoming interested in outside of CFML.

    I do like the idea of a fully functional 'free' CFB with the mobile tools provided as a pay for plugin. Seems like the best of both worlds for everyone.

    AND FWIW we just released a new CFEclipse version if you are still using Eclipse...
  21. Mitch McKenzie
    Have you thought about calling it a day on cfbuilder and focusing on the coldfuson plugin for intellij?

    https://github.com/JetBrains/intellij-plugins/tree/master/CFML
  22. Jay Dee
    @Mitch, while I agree with Jim that it would encourage adoption to have a community edition and a "pay-for-play" edition, your suggestion of having the Adobe team work on the "pay-for-play" (only edition the CFML plugin works in according to JetBrains installation instructions) seems... well ridiculous to me.
    What would be the pay-off for Adobe? for the CFML community?
  23. Mitch McKenzie
    @Jay, Depends how you look at it. Create a new proprietary intellij plugin and charge for it. Makes no difference to me. Developers want a stable IDE. CFBuilder is not a stable IDE. The payoff for developing the open source version is Adobe can offer a free reliable/robust/marketing_buzz_word IDE along with CF. Maybe if they would have started working on the intellij plugin we wouldn't find ourselves stuck waiting for a rewrite.
  24. Tom
    Personally I don't think the folks that are doing actual mobile development i.e., building mobile applications, are working in ColdFusion. Responsive development? Absolutely. I'm using a combination of Bootstrap and jQuery to do my UI work, with calls to Oracle through CFCs to manipulate data where I need to. With this I can scale my applications down for tablet use - but it's the same web application used on the desktop - just built to be responsive. So - IMHO - spending time and money wrapping in mobile development goodies is a waste of time. Give me an IDE that is light, fast and provides rock solid debugging tools. I find it interesting that I can open a page with IE's developer tools running and get told have a mismatched/unmatched tag and CFB doesn't do this. Take those types of tools and wrap them in - then I'll be impressed.

Leave a Comment

Leave this field empty: