Let's face it, the web is a frequently changing landscape - more so now than it has been since its inception. When the term "Web 2.0" first set the industry on fire, I have to admit, I was not terribly excited.
The idea, after all, is based by and large on the idea of applications being, well, like the kinds of applications that Macromedia had already been talking about and showing us for about four years... since the release of Flash MX and the term "RIA" was coined. Still, I did think it was great that the industry as a whole was finally on the same page about the importance of delivering great user experiences and about how that will be achieved, though, as far as implementation technology goes, AJAX (not Flash) received all the industry attention.
Whether they want to spin it this way or not, the reality is that Flash 9 and the Flex 2 platform/product suite is Adobe's answer to AJAX. Though it'd be fair to say that Flex 2 competes with AJAX, it's also fair to say that the two technologies simply complement each other very well. Adobe has made it clear that they think AJAX is neat and that they are in no way trying to compete with it; and to compare Flex 2 with AJAX is like comparing apples with oranges... Flex 2 is an entirely different beast and is way out of the league of AJAX. I agree with this line of thought: Flex 2 offers significant performance benefits, a true rapid development environment, visual effects, widgets, and other features, and platform ambiguity... all out of the box. The same cannot be said for AJAX.
Getting back to discussing industry trends in general, there has been a recent trend in online software services and social networking applications. The MySpace phenomenon is the best known example of social networking online - users create their own page (their own 'space' on the Web) and via that page are able to interact with and link to their other MySpace 'friends'. Many other social networking sites sprang up - based on sharing photos, videos, etc., with "friends". In addition to social networking, web apps that are focused on user convenience and productivity have also been gaining in popularity. By "convenience" I mean that the software is centralized (on the Web) and accessible from anywhere, is free, and runs in a browser with nothing more to install. Examples of this type of software include Gmail and Google Calendar.
We are now on the cusp of realizing a whole new Web. The ability to create more intelligent, functional, and better looking Web applications (RIAs) using Flex and/or AJAX, coupled with the popularity of online social networking applications, means a new type of experience for people who use the Web... no, for people who use computers. For business users and developers, this includes not just socially aware applications but a whole new class of online collaboration services as well. Another category of Web applications radically changing are search engines.
Here are just a few examples of these types of Web applications that should give you a good idea of what's coming:
With much optimism and enthusiasm I say, "no". The ColdFusion server team is now aggressively working on the next major release of CF - currently code named "Scorpio." While many of the features have yet to be decided or publicly announced, it is clear that the CF Team has no intention of "laying down". At CFUnited, the premier CF annual event held last month in Washington, DC, two cool features were shown during the opening keynote. One was the ability to create online presentations (rendering as Flash) dynamically using a few simple CF tags - think of it kind of like a merger between CF and Breeze (though that's a very general statement to make). The other was the ability to render, manipulate, and access data within PDF Forms... yet another new feature that will make ColdFusion an integral part of how companies do business on the Web.
While those two new possible features (I say "possible" because until the final release of the product, everything's open to change) don't necessarily have anything to do with creating the types of next generation web applications I discussed earlier, other features certainly may. ColdFusion MX 7.02, the free upgrade formerly code named "Mystic," added terrific support for Flex 2. Coupled with the Flex Builder 2 CF wizards, the current version of CF and FB2 make it easier than ever to supply data and services to Flash applications via CF. This is more than just Flash Remoting, though CF MX 7.02 does have a new Flash Gateway that supports the AMF 2 protocol. The CF Wizards make Flex/CF application development ridiculously fast and easy, and, being a guy who typically likes to write everything manually, are the first wizards I've seen in any CF-related product that I not only enjoy but find extremely useful (yes, they also generate really decent code). The new features in CF also includes a gateway for pushing content to Flex 2 and the ability to integrate CF and Flex Data Services. Flex Data Services, among other things, makes it very easy to coordinate data persistence on the server by controlling who can access and modify data at the record level. It also allows content pushes to Flex applications - another very useful feature that AJAX doesn't nativly support but that would be extremely useful if one were, say, building a social networking application.;)
I didn't want to talk about next generation Web applications and CF just to point out the strength of Flex and the new hooks for integrating and communicating between the two. Not too long ago, Damon Cooper blogged about a new feature that one of his server team members prototyped for CF 8 (the feature is an enhancement to give more programmatic control over asynchronous threading). After reading that, and knowing that the server team is currently hard at work coming up with features for the next release, I decided to post an "open letter to the CF Server Team" entry on my blog in which I listed many of the new features that I would like to see in CF 8. This caused a kind of chain reaction in the CF blog community and to date, dozens of bloggers have also let the CF Server Team know what they'd like to see in the next release. Yes, Damon and his crew have been commenting on the blogs and letting the community know that they're paying a lot of attention.
This type of feedback will help ensure that going forward, each next release of CF will have the features that we, the CF development community, needs in order to meet the demands of a rapidly changing Web and the day-to-day demands in our respective office environments. If you don't already have a blog, you can get one at any number of places, including from sys-con at http://www.blog-n-play.com/. I'll conclude my editorial this month with a simple question - one that you can now go blog about immediately... "What would you like to see in ColdFusion 8?"