Flash Builder is, speaking the King’s for a tick, pure rubbish. Adobe took its sweet time releasing this purportedly major upgrade, and I held a fool’s hope that Flex developers the world over might no longer gaze longingly at the highly functional and pleasantly integrated Silverlight tools across the aisle. Indeed, Adobe incremented the version (to 4 from 3) and switched the label (to Flash Builder from Flex Builder), but still the product is rubbish. I know it was you, Adobe. You broke my heart.
I am not alone in my sentiments. My associate Scott Selikoff focuses on Flex 4′s code verbosity and duplicate component libraries, but his verdict is the same. Rubbish. Unfortunately, Flash Builder is my primary development environment.
My present Flex frustration (Flexstration!) is resource modules, by which a developer may externalize resources into SWFs that may be loaded at run time. It sounds wonderful, but sadly the process is quite manual, requiring a human to take a number of heavy steps:
- Determine the resource bundles required, by running the compiler with the
- Gather the contents of the output file generated in step 1
mxmlcfrom the command line — Flash Builder offers zero support here — specifying no MXML file but supplying the
The poor developer must repeat this process for each resource module in each locale. As an example, let us assume the application has four resource modules and must support merely four locales: American English (en_US), British English (en_GB), Mexican Spanish (es_MX), and Spanish Spanish (es_ES). Even for these decidedly unambitious numbers, the now-heartbroken developer — or his helper monkey — must repeat the manual operations listed above 4 x 4 = 16 times. Pray for Mojo.
Of course, a clever developer could easily write a build script, perhaps leveraging Ant and Adobe’s Ant tasks for Flex. Most Flex developers, myself included, have done just that. My point is that this sort of automation of common tasks is exactly what a £400 enterprise development tool should do. Epic fail, Adobe.
[Update 21-July-2011] Corrected a typo in the “heavy steps” list.