Gumbo, Thermo, Cosmo, FXG, Flash Catalyst and Degrafa

! Warning: this post hasn't been updated in over three years and so may contain out of date information.

Back in the summer of 2008, I wrote an article on two forthcoming Adobe products: Gumbo and Thermo. Whilst it mentioned a number of forthcoming technologies, its focus was not in explaining what they all were. Recently I was reading more about technologies related to these when it struck me that there are a lot of code names around products resulting from Flash 10 and that I tend to get confused over them at times. I’m writing this post pretty much for my own use as a handy aide-mémoire. Hopefully others might find it useful too.

Gumbo is the code name for the forthcoming Flex 4. It is due for release in the second half of this year (2009), though two beta releases are planned for the next six months. Gumbo offers a huge range of new – and useful – features, such as ASDoc support within MXML files, simple two-way data binding and support for Pixel Bender (see below). The two key features though are:

  1. Components become easily skinnable. The whole way that components are created has been recoded, and there is now a clear divide between a component’s functionality and appearance. These new skinnable components have been given the nickname “gumbonents”.
  2. The MXML 2009 specification has been expanded to include FXG (see below). This means that you can add simple shapes (or complex shapes built up from simple primitives) to your MXML, data bind them and easily skin them using the “gumbonent” skinning method.

You can read lots more about Gumbo on the Adobe Labs Gumbo site.

In Adobe’s own words:

“[FXG is ] an XML-based graphics interchange format for the Flash Platform. FXG contains high-level graphical and text primitives that can be used to create, group, transform and visually modify basic vector and bitmap shapes.”

Flex 4 sees the old MXML 2006 specification replaced with a shiny new MXML 2009 specification, which includes support for vector shapes and bitmap graphics, and also allows for things such as data binding to bitmap shapes and the like. FXG is a cut down version of this extension, allowing graphics to be described in an MXML-like form, with all the code-related stuff stripped out. What makes FXG exciting is that the users of CS4 products such as Photoshop can save their graphical creations as FXG files, allowing for the easy use of designs created with professional design tools within Flex.

See the FXG specification for more details.

This was the code name for a forthcoming product now called “Flash Catalyst” (see below).

Flash CatalystFlash Catalyst
This is a not-yet-released designer and developer tool for taking designs created in Photoshop etc and turning them into MXML code. It allows elements of the design to be identified as Flex components. The tool then generates the skin MXML required to allow the Flex application to behave as the designer wants. This tool fills the obvious gaping void that currently exists between design and implementation that currently exists within the Flex world.

See the Flash Catalyst section of Adobe labs for more details.

This was the code name for Adobe AIR 1.5, which was released last November. It added support for the new Flash 10 features, such as enhanced sound, 3D support, decent (finally!) text support etc, along with support for encrypted – rather than plain-text – data stores. It is fully compatible with Flex 3. FlexBuilder 3.02 provides support for it.

Pixel Bender
Pixel Bender is a new technology being built into multiple Adobe products, rather than being a product in its own right. At the time of writing, Flash 10 supports it natively and there is a Photoshop plugin available for applying Pixel Bender filters to Photoshop images. Flex 4 will also support it. It provides a hardware and platform-independent language for describing filters that can be applied to a set of data. Whilst the primary purpose is for manipulating graphical data (or images if you prefer) via filters, it is also likely to have uses in manipulating sound data for example. It is designed around very fast manipulation of “pixels” in isolation, or near-isolation (eg, taking into account its near neighbours). As such it will not be of use in generating histograms of an image, in generating hashes etc.

See the Adobe labs page on Pixel Bender for more details.

Whilst this isn’t an Adobe product, it relates closely to the new FXG features of Flex 4. It is a 3rd party extension to Flex 2 & 3 that provides support for low-level graphics primitives just as FXG/ MXML 2009 does. Whilst Adobe are making noises over working with the Degrafa team to ensure there is good interoperability between FXG and Degrafa, it is difficult to see a future for this product. The developers remain upbeat that Degrafa offers more and will have a future. Just as PaperVision didn’t die when Flash 10 (with built-in 3D support) was released, so Degrafa may not be killed off by FXG and may build on it instead.

If you are looking for FXG-like features from Flex 2 or 3 and cannot wait six months (or do not wish to upgrade to Flex 4), then Defraga has something to offer. Otherwise it’s probably best to wait for Flex 4.

4 thoughts on “Gumbo, Thermo, Cosmo, FXG, Flash Catalyst and Degrafa

  1. Hi Arno, Good Summary. A little clarification for your readers.

    Adobe designed FXG to accommodate their tooling, specifically Thermo. It has been designed to replicate what exists today in Flex procedurally via markup. Degrafa is designed for DEVELOPERS, and allows developers to do things not possible in FXG, and barely possible procedurally, it expands vector markup into functional areas we have not seen yet. FXG and Degrafa target two very different sets of use cases. And the good thing is that they WILL be able to interoperate – so depending on your focus (designer versus devigner/developer) you can use both and not be forced to make an either/or decision.

    – Tom

  2. That is a chicken and egg question, for until you have invested at least some time into exploring degrafa, you’ll never know whether it can offer you anything.

    Having said that, it looks an easy technology to dip your toes in and try it out, so you’ll lose little if you later decide it cannot offer you anything.

Comments are closed.