This session is over, and I'll come back and update the formatting of this post when time permits.
Ben says that Adobe has a long history of cool announcements at CFUnited; and hopefully this year won't buck the trend. Adam Lehman is helping present technical aspects, while Ben will be talking at a higher level.
CF8 adoption is doing very well. Adobe is strict about discussing numbers, but he admits that CF sales are the best they've been since Adobe took the reigns, possibly ever. Ben says that ColdFusion 8.01 is an important release for library additions, enhancements, and security improvements.
Coming soon: Public bug tracker, public enhancement request system! (I say: about time [or] awesome!)
Adobe has has already begun working on version 9 ("Centaur"): Advancing CFML, Improving Integration, Improving developer experience. (Everyone thinks that this means an official IDE)
The biggest problem facing ColdFusion customers today is the lack of available developers. (how true!) This is good for existing developers (because they can charge more) but bad for (Adobe's) business and the wider CF community, as it will force more companies who are currently using CF to switch away from CF. Adobe doesn't want that to happen, so they are going to be working to spread the reach of CF and lower or remove some of the barriers to getting involved…
…ColdFusion will be freely available for students and faculty for academic use. It will have a similar model to Flex Builder's free license for Education. (Licensee must provide verification of student/education status), and what they get will be the full unrestricted version. The goal is to make CF easily and freely available (for educational purposes), and they hope that it will come with documentation, and a curriculum.
Ben jokes that if we have free time due to more developers being available, we can teach CF part time.
"Over the years, CFML has become fragmented and inconsistent." This must mean a sort of language overhaul? Maybe a CFML language steering committee that Open Source engines can be a part of?
I was right!
CFML Language Advisory Committee: Will help define the rules and guidelines around the use and evolution of CFML. Will initially consist of Sean Corfield (Lead), Ben Forta (Adobe), Sanjeev Kumar (Adobe), Gert Franz (Railo), Ray Camden (CF Jedi), and Rob Brooks-Bilson
"Centaur" Sneak Peek:
The focus is Building A Better ColdFusion. Adam notes that, of course, the lawyers have to get their $0.02 in: What we see here may or may not make it into the final release. Most of it is only conceptual, not an implementation.
Language enhancements: Create UDFs and CFC methods (entire CFCs!) using scripting syntax.
- argument definition and validation
- roles
- write full component syntax in cfscript
component name="CF" extends="adobePlatform"{
public string function welcome(){
return "Welcome!";
}
}
More CFScript enhancements:
- Explicit LOCAL scope keeps local variables local: No more need to use <cfset var local = StructNew() />!!
- No need to declare all variables at the top of the function. (And the crowd goes wild!)
- New CFSetting option to set a default scope for variables!
- <CFFinally> and <CFContinue> to do improved try-catch processing. Goes after catches, inside try's. CFFinally will always run, CFContinue will work like a continue in C: In the middle of a processing loop, it will skip the rest of the loop and start at the top with the next iteration.
- They're planning on adding new and import keywords!
- <cfcomponent init=""> will allow us to define the constructor, which will run automatically? (How does this affect constructor arguments? Can we have multiple constructors?) CF will also look for function named like the component, like a classic C or Java style constructor.
- Implicit getters and setters for CFProperty settings. The will not override your defined getters and setters.
- New Server.cfc file: Will work per instance of ColdFusion, and all Application.cfc's will "sort of" inherit from it. It will be useful to pre-load application stuff (ie: Model-Glue framework stuff) as the server loads, and before the first user hits the site… and have it ready for them! Excellent! Adam specifically mentions: OnServerStart() and OnServerEnd()
- Centaur will make CF AIR integration easy. (Easier?!)
- LiveCycleDS will make offline/online data sync almost seamless. Not a whole lot of detail was given, but it sounds awesome.
- Another huge announcement that sends the crowd into a frenzy: ORM will be baked in 100% with Hibernate. The details of this is way over my head at this point, but holy crap it looks awesome! With all of this data being persisted as cfc objects, the idea has come up that so many functions and tags are based on a query object and would need to be modified for this new system. Ben assures us that they'll be working hard to make changes that will abstract this all so that we can continue to use these things just as easily.
Q&A:
Q: Talk more about the free version for education. Flex is available to staff and faculty
A: Wording is still intentionally ambiguous because they're nailing down the details. They want it to be free and available for EDUCATIONAL use. Lower the barrier for teachers to teach CF in the classroom. Also need a curriculum. CF Team plans on (at least helping) develop curriculum.
Q: Will JRun continue to come as part of the CF Stack?
A: Maybe, maybe not. JRun should support everything they need, but they reserve the right to change it. Plan to keep the install as simple as possible.
Q: Will CFScript be able to do everything that CF Tags can do?
A: The visited it in development of CF8 and couldn't do it without half-assing it, so didn't do it at all. Would revisit it if they thought they could accomplish something. UDF wrappers are available for every tag, anyway.
Q: Will version of Hibernate that ships with CF be stuck in, or can we plug and play?
A: They hope it will be interchangeable, but of course, no promises. (Hopefully they learned their lesson from the whole Ext 1.0 fiasco?)
Q: Will there be an Official IDE?
A: "Come to MAX." (Sounds an awful lot like, "Yes, but I'm not allowed to even answer that until MAX" to me!)
Q: Why are some companies not represented in the CFML committee? (Of course referring to Open Blue Dragon)
A: (Ben is careful with his wording here. Obviously a sore subject.) His brutal honesty: Group is made of people who have demonstrated a committment to the wider CFML community. List can and will grow, but only in the interests of the businesses involved and the community.
Q: Someone asks about pricing for the new version.
A: … (Do we really need to revisit this? Again?!)
Q: Will there be changes to the server administrator, making it easier to administer multiple servers?
A: Adam says, "Yes." Of course they are always looking to improve everything. They are always looking for recommendations, feel free to submit them!
Q: Will the "this" scope be kept?
A: Of course they will not break existing code. It will stay.
Q: Will there be more examples and tutorials on LiveCycle Data Services?
A: Yes, yes, yes!
Q: Will there be official CF Administration training? (I assume something to do with clustering, tuning, etc)
A: Some partners offer it, they are considering adding some official training. No specific plans yet.
Q: Is KTML editor gone?
A: There are some licensing issues that preclude them from doing what they want to with it. Still trying to work that out.
Q: Any plans to allow CFQueryParam outside of CFQuery?
A: See: CFscript problems! One of the biggest problems of CFML in CFScript. They would like to solve this, but of course no official word yet.
Q: Anything new with Share Point integration?
A: Nobody is clear on what exactly is needed. Need more use cases, so if Share Point is important to you, figure out how you would use it, and tell them!
Q: Better support for memcache or other caching capabilities?
A: Yes, actively being researched.
Q: What additional tooling will be available for ColdFusion?
A: Ben says, "That would fall into improving the developer experience. See you at Max."
Q: Will speed and performance improve at leaps and bounds for between versions 8 and 9 like they did between versions 7 and 8?
A: It won't get slower, and they'd always like it to go faster. Adam says the rule of thumb is that if adding something or making a change will cause CF to run slower, they just don't do it. Period.
Q: Is CFML language grammar published?
A: That's a question for the CFML Language Advisory Committee.
Q: iCal and Imap integration?
A: Ben is a big fan. Thinks they are important, and it's on the wish list, but no promises.
Q: Someone requested a custom tag for working with Java Resource Files
A: Noted.
Q: Will it have virtualization-friendly licensing?
A: They plan to keep the current licensing scheme: Licensed by physical CPUs — very friendly to virtualization!
Q: Dynamic PDF Form generation without LiveCycle?
A: Creating forms from scratch is probably doable, but you would lose some of the benefits of PDF in the first place. Need more use cases and more research.
Q: Word document generation? Not RTF.
A: Noted for wishlist.
Q: Staging licensing: shared instance, which you can't do with a developer license; but not used in production so it doesn't need to be as powerful?
A: One way is to use separate virtual machines on the same box; but they are looking at other options.
Q: Multiple filled PDFs into a single merged PDF?
A: Engineering team is looking into this.
Q: Anything new in the roadmap for CFReport?
A: Ben would like to think there is. If there are things you want, please tell them! There are some known issues, but beyond those, submit requests!