I know I use ColdFusion mostly by conveince and existing
infrastructure. But I will admit that I belive many of there products
and tools are far superior to what the open-source languages can
offer. And with all the new stuff in ColdFusion 8 I am very exciting
that they seem to be paying attention to these modern languages and
incorporating features like inline hashes and arrays.
Brian definitely has it right, Flex is no easy undertaking once you
get started with it (compared to simple HTML-based apps). As
developers I think most of us strive to make scalable and easily
maintainable applications, so with all of the freedom Flex gives us, I
think it may seem very intimidating at first. Frameworks help to a
certain extent, but that space in Flex is still immature. That being
said, I'm really looking forward to what will be produced with Flex
especially with Flex 3 coming out eventually. I see Flex as a great
arena for the designer to really get more involved in the web design
process without having to be language savvy. On a side note, check
out scale 9 (http://www.scalenine.com/) if you get a chance, they have
some cool Flex skins, themes, and a neat layout API from what I
understand.
As far as CF 8 goes, I'm loving the latest rendition of the language.
ColdFusion has always been a great "glue" language and I'm happy to
seem them increasing the capabilities of what it can tie together. I
think ColdFusion is pretty verbose for a programming language (tag-
based markup) but you can't beat cfquery and cfoutput. CF has a knack
for keeping things uncomplicated and I think that's what draws me to
it.
I started by hacking together php projects in college for fun like a
lot of people, so getting into ColdFusion (and subsequently frameworks
in general) made the code a hell of a lot cleaner. Although I'm not a
fan of having to write <cfset > before all function calls, most times
I don't mind tags in general. So much can be done with the base tags
in clearly readable code that's it's impressive. The biggest annoyance
to me is that so many of the cf defaults aren't what you'd want them
to be (cfcomponent/cffunction to name a few), So you're usually always
having to overwrite them. But for what you get, and the ability to
integrate seemlessly with flash, charts, pdf and webservices I can't
imagine any other language making it any easier.
HTML has always pissed me off, because of the lack of control over
what the browser does to it. I initially got into Laszlo back when it
was hot, but you quickly found that any serious Laszlo app could only
be completed in slow, bloated form and with 100 bug requests needing
to be fixed by OpenLaszlo. So, when Flex came out and actually worked
properly, I loved it.
I'm not sure why you guys are having a hard time with layouts in Flex.
Maybe it's just the way I think, or because I have first-hand
knowledge of what a nightmare desktop libraries like Swing are like to
work with, but Flex always feels very natural to me, and the data
binding and event frameworks have been pure joy to use in all the
stuff I've done with it. I'm also very glad they built the data
services architecture in and made a binary transport option available,
along with data push for all kinds of new hotness that most people
aren't even taking advantage of yet.
That being said, I think it's telling that the community is struggling
(at least as far as I interpret it) with frameworks for Flex.
Cairngorm feels weird, and the other frameworks that are out there
seem to have a certain degree of boilerplate that I can't stand. I'm
beginning to suspect that I'm just so spoiled with Spring/Java that
the frameworks are really not that bad, and I'm just too lazy of a
bastard to deal with them... but I think it's getting close. I am
looking forward to looking at model-glue:Flex, and I really like Joe
Berkovitz's MVCS architecture: it's simple, it works, and it feels
natural to the way Flex operates. PureMVC ain't bad either.
I think Adobe is absolutely going to kill it when they get done with
Apollo (I refuse to call it AIR; Apollo is such a better name). I love
the fact that I'm going to be able to create web and desktop apps all
on the same platform/language base, and can choose between infinite
back ends with the XML and web services offerings. The next five years
are going to be very interesting indeed.