Hey Jeff,
I'd like to get Christophe's opinion on Flex vs. Prototype and script.aculo.us. I have a very experienced architect friend who tells me Flex will beat all others.
But I don't know where Flex fits in compared to what the technologies mentioned in this book offers.
Oh my.
We're talking about two very different things here.
Flex is a full-fledged development environment that spans both the server side and the client side; sure, it has bridges of sorts to play with various server-side techs, but you'll really get the most of it if you play with the Adobe runtime on the server side as well.
Flex is proprietary, as is Flash. It has powerful UI features and graphical capabilities (as it relies on Flash), but is also essentially closed, closed-source, and from a single vendor.
As far as I'm concerned, Flex is not part of the web standards, and therefore sits outside the realm I'm interested in. Adobe has numerous wonderful engineers on staff, and their technology is certainly impressive, but once you cast aside all the marketing mumbo-jumbo, Adobe tries to do the same thing Microsoft has been trying to achieve: replace open web standards with proprietary technologies of theirs. I'm not interested.
I certainly believe there are situations and markets where using an integrated, Flex-based solution can make a lot of sense, most likely in the intranet/extranet space for graphics-intensive apps. But I'm into webapps, not yet another tech toolset.
Prototype and script.aculo.us go entirely web standards, which means they run on all major browsers without extra plug-ins. It also means you can leverage quality semantical markup for SEO purposes and other Semantic Web uses, and can leverage existing knowledge in web techs such as XHTML, CSS and JavaScript.
Still, Prototype and script.aculo.us are mostly middle-ground libs upon which to build more integrated solutions; Flex would probably be more aptly compared to larger toolkits such as Dojo.
'hope this helps.