4 Replies Latest reply on Sep 24, 2009 6:12 PM by TLC-IT

    What do you think of "coldext"?

    TLC-IT Level 2

      ColdExt (http://www.madfellas.com/blog/index.cfm/ColdExt) is a ColdFusion extension-library that supports more-recent versions of the ExtJS (http://extjs.com/blog/category/community/) library.


      The superficial appeal of this, to me, is that (with CF-8) you can move beyond some of the "kid gloves" with which CF8 wrapped-up ExtJS 1.1.  I'm also hoping that it will offer some advantages by being a custom-tag library.  ("What's the <cfimport> tag really all about?"  "Now you know."  "Oh.  Say, this is cool!" )


      Given what is coming in CF9, what do you think now of libraries like ColdExt?  Are you using them?  What's your experience with them?

        • 1. Re: What do you think of "coldext"?
          TLC-IT Level 2

          Maybe I am missing something big here, but unfortunately it superficially looks to me like ColdExt might be a poster-child for what is sometimes wrong with open-source development projects:


          • It's probably very clever if you can understand it.
          • But the programmer only "got around to" about 90% of the tag-attribute documentation and none of the tag documentation.  ("Do the fun coding stuff and about half the manual, then quit.")
          • ... sometime in the recent past he moved to London, presumably to "bigger and better things," and hasn't updated anything in about six months.


          What do you think?  Cut my losses and move on?

          • 2. Re: What do you think of "coldext"?

            I'm the author of ColdExt Maybe I can clarify a couple of things for you:


            - Yes the documentation is lacking. The code examples are the main way of learning how to use ColdExt, in addition to the Ext JS documentation and demos which explain each component and it's properties (in CFML speak, each tag and it's attributes).

            - I think 100% of the tag attributes should be documented when using the CFEclipse integration as it is generated directly from the Ext JS documentation

            - I moved to London about 10 month ago and you'll notice I've done 2 releases since, and the next major release is on the way which will include Ext JS 3.0 support (not trivial as there are a bunch of new components that I need to implement and demo!). Partial support is already in SVN though.




            1 person found this helpful
            • 3. Re: What do you think of "coldext"?
              TLC-IT Level 2

              I think that I owe you a public apology, Justin.  ("That was not a very good day...")


              ColdExt is good, and I will continue to watch it closely as the 3.0 release support is rolled out.


              Interestingly enough, I am finding that my own development-direction seems to be veering straight toward using the xtype capabilities of ExtJS 3.0, where essentially all of the user-interface specification can be done using a data structure (items).  I haven't gone through this development cycle often enough to really know, yet, where it's all going to wind up.

              • 4. Re: What do you think of "coldext"?
                TLC-IT Level 2

                As a final update to this matter . . .


                It turns out that I veered completely away from ColdExt for this application, because I veered completely away "nearly everything server-side."  The interaction is completely JavaScript-based, and CF is left handling AJAX calls.


                Here's my summary assessment of the ... ordeal:


                • Very early on, you must make a decision of "who's driving the bus."  That is, which computer (the client, or the server) will be responsible for most of the user interaction.  If the application is, and remains, "mostly server-centric," then ColdExt is a terrific tool because, exactly as advertised, it really does generate the necessary JavaScript while permitting you to remain in "a ColdFusion mindset."
                • ExtJS has expanded hugely in its capabilities and architecture since ColdFusion-8 incorporated the ExtJS 1.1 library.  Reliable sources say that ColdFusion 9 uses ExtJS 3.x.  I have not seen, yet, what Adobe is up to.  I don't know what its impacts will be.  But my educated-guess is that ColdFusion's product focus is likely to remain as (IMHO...) it is today, namely, "tilted toward the server side."  (Where, by the way, it is still an awesome power-tool.)
                • If, on the other hand, you make the decision that "the client-side is driving the bus," then you probably need to switch your mindset entirely to the point-of-view that "you are building a JavaScript, ExtJS application, and the server-side happens to be ColdFusion."  And, you need to plunge headlong into every single example, every "plugin," and every tutorial that is to be found at http://www.extjs.com.  Purchase the most-current edition of the O'Reilly "rhinocerous book."  Practice your and expect to be socially-nonexistent for at least four weeks.

                Very important:  do not go anywhere near any cliffs, tall bridges with low guardrails, or similar temptations.  If you choose to bungee-jump during this time period, resist the temptation to omit the bungee cord...  Your (present and/or future) offspring will thank you.

                • If you choose to step away from "the ColdFusion-8 fold," and choose not to wait for CF9, then realize that you are going to have to become intimately familiar with the function of all of the (very extensive...) JavaScript code that Adobe's programmers helpfully provided for you... because you are going to have to replace it.  Frankly, I'd wait for CF9, and let them do it.
                • ColdFusion has very extensive programming features ... no surprise, since it's based on Java and actually on-the-fly translates everything into Java.  You'll need the code that I have posted here and to the ExtJS forums to provide "InstantCRUD" support ... handling the expected JavaScript exchanges produced by the ExtJS "JsonReader" and "JsonWriter" components.