Monthly Archives: August 2006

Flash Player – Forward, Backward, Platform Compatibility


For developers who have evolved with Flash Player, we take forward, backward, and platform compatibility for granted. Many people have yet to realize the productivity in seamless compatibility. Lets make this crystal clear for everyone…

Backward Compatibility: “Every SWF I created still works!”

Forward Compatibility: “Every SWF I create will work tomorrow!”

Platform Compatibility: “Every SWF will work identically cross platform”

Flash Player 9 Supports:
FLV, SWF9, SWF8, SWF7, SWF6, SWF5, SWF4, SWF3, SWF2, FutureSplash

Flash Player 8 Supports:
FLV, SWF8, SWF7, SWF6, SWF5, SWF4, SWF3, SWF2, FutureSplash

Flash Player 7 Supports:
FLV, SWF7, SWF6, SWF5, SWF4, SWF3, SWF2, FutureSplash

Flash Player 6 Supports:
FLV, SWF6, SWF5, SWF4, SWF3, SWF2, FutureSplash

Flash Player 5 Supports:
SWF5, SWF4, SWF3, SWF2, FutureSplash

Flash Player 4 Supports:
SWF4, SWF3, SWF2, FutureSplash

Flash Player 3 Supports:
SWF3, SWF2, FutureSplash

Flash Player 2 Supports:
SWF2, FutureSplash

The fact that Flash Player supports all legacy versions of SWF allows developers to invest confidently in the Flash Platform. This fact has some powerful implications on productivity:

1. Application maintenance is never forced on developers. A Player change will not force you to recompile your SWF file.

2. Simpler development cycle. There is one player and it works identically cross platform.

3. Simpler testing cycle – There is one player to test against given backward compatibility.

When you sit down to write your next app ask yourself:

Will the application you are writing today work tomorrow?

Cheers,

Ted :)

Introducing FlexTV


FlexTV is a developer to developer conversation focused on Flex. We will be creating focused presentations, developer interviews, and customer showcases that highlight the best of the Flex marketplace. There are many shows currently in production and we plan to cover technology presentations that are just not possible at conferences.

To launch FlexTV I put together a 15 minute session on Flex Builder as follows:

Flex Builder 101 – 4 Essential Lessons by Ted Patrick (tpatrick@adobe.com)

1. Create a Flex Project
2. Compile a Flex Application
3. Create Hello World in Flex
4. Deploy Hello World to a Web Server

Session Application

Welcome to FlexTV!

Ted Patrick
Flex Evangelist
Adobe Systems Incorporated

FXT – Flex Templating


Flex Templating provides rich client side website templating using MVC (Model-View-Controller). FXT solves a host of problems for using Flex and Flash Player for website development.

Yahoo View on Yahoo Web Search Model using FXT
Home Template View
Results Template View
Both of these pages use the same SWF template but use a different model within the HTML source.

Flex View on Yahoo Web Search Model using FXT
Home Template View
Results Template View
Both of these pages use the same SWF template but use a different model within the HTML source.

FXT Component Use Examples
Basic Template Model
List Example
DataGrid Example

Download FXT Version 1.0 Source

Model == XML Island embedded in HTML
View-Controller == Flex 2 SWF

This is an implementation of client side templating using Flex. It is a very compatible and productive way to make data driven websites very quickly. The custom Yahoo Web Search mashup took less than an hour to create and the entire UI can be reskinned by changing a single SWF file.

The key point is that the Model within the HTML page drives the View of a Flex application. It allows Flex to compete in a page centric world and expands the reach of the Flex marketplace. In a typical HTML based application, data (Model) and tags (View) are merged and intertwined. With FXT, the data (Model) is separate from the templated Flex code (View) until both arrive on the end users machine. Both pieces need not arrive or update at the same time, creating a more real-time feel than most HTML applications have. This is because the data (Model) remains structured all the way to the client side where it is templated at runtime rather than being merged at the server. Using E4X, you can utilize components, data binding, and async loading to create truly immersive rich web applications. Reskinning in this paradigm is simple. If the developer changes the SWF template on the server, the entire UI will change instantly. This simplifies development and deployment of larger scale sites and allows for small teams to edit sites in an extensible and productive manner.

The solution is also 100% SEO compatible as the Model of a page is within the HTML of the application. Better still, the data can be easily parsed with any xml parser by web crawlers or other Mashup applications.

FXT Project Page
FXT Blog
FXT Bug Tracking
Download FXT Version 1.0 Source
FXT SVN Repository

svn checkout http://fxt.googlecode.com/svn/trunk/ fxt

Benefits:

Model Driven – The data (Model) is in HTML as XML. It is browser and search engine compatible.

Restful URLS – The urls are simple, bookmarkable, and back button supported.

Classic MVC – Model is XML embedded in HTML, View and Controller are Flex-generated SWFs.

E4X is used to render data within the template SWF file.

Flex States are supported.

Rapid – Just open a project, edit the XML model, and edit the Flex template to create an interactive site. Layout is component based and easy with E4X.

Fast – Once the SWF file is cached, each page load time is 100% data loading and Flex instantiation.

Enjoy FXT!

Ted Patrick
Flex Evangelist
Adobe Systems