Apache Flex, formerly known as Adobe Flex, is an SDK for developing Flash-based applications. First developed by Macromedia, which were subsequently acquired by Adobe, and then open sourced under the aegis of the Apache Foundation, Flex is a mature and advanced framework that offers pre-defined components for building applications. It is used in numerous high-profile applications around the web, including mint.com and the BBC iPlayer’s desktop component. The Flash plugin is almost universally available, with many hundreds of millions of deployments around the web. However, along with the ending of active development of the mobile version of Flash, the open-sourcing of Flex was seen as an acknowledgement from Adobe that HTML5 is the future of rich internet application development. Flex had already been largely open-sourced – there are standardization and development advantages to open source – but the transfer of the management of Flex to the Apache Foundation indicates a refocusing on technologies other than Flash.
Until recently Flash-based frameworks have been just about the only game in town when it came to developing RIAs, but it is not without its drawbacks, a major one being that it is not always wise to base software on a single vendor solution with little competition (Silverlight is nowhere near as prevalent). Flash has tended to be slow and buggy, particularly with regard to security exploits and it has made some enemies, especially within the mobile space. Apple will not distribute Flash with its iOS devices, including the iPhone and iPad, and, as mentioned, Adobe have recently announced that they will no longer be developing Flash for mobile. If a developer wants to target mobile with their application, and let’s face it, who doesn’t these days, Flash will soon not be an option.
HTML5 is the technology of the future, and even Adobe have recognized it, throwing their weight behind HTML5 and abandoning Flash on the mobile platform. Flex and Flash are certainly still viable technologies for RIAs, and there are areas where Flash is preferable, especially those where applications require DRM, but HTML5, in time, will become the reigning technology.