Webinar: using PHP and Flash for developing Rich Internet Applications
On December 2nd, together with Roy Ganor from Zend, I will host an e-seminar about PHP and the Flash Platform. We will show you how you can create a Rich Internet Application using the Flex framework, Illustrator, Flash Catalyst, and Flash Builder 4. Then we will show you how to connect the Flex application to a PHP backend and how easy is to debug the PHP and Flex code using Zend Studio 7.1 and Flash Builder 4.
You can register for free here. The webinar will start at 6:00 PM Central European Time (9:00AM Pacific Standard Time) on December 2nd.
LATER UPDATE:
You can download the slides from here, and next week the recording will be available you can watch the recording over here (you need to have a Zend account).
PHP and Flex Webinars
Last week I visited Zend headquarters, and I had an interesting talk over there. One effect of this meeting is this: we will start to do webinars together with Zend.
If you want to find more about Zend Studio and other products related to PHP from Zend, or learn more about the integration between the Flash Platform and PHP (Flash Catalyst, Flash Builder, Flex framework) you shouldn’t miss this opportunity. I know that webinars don’t offer the same experience as in-person events. On the other hand, you can attend them from the comfort of your own home, there is no traveling involved and no need to convince your boss to let you attend the event.


We haven’t set the first event date yet, but it should be in the first week of December, and probably it will be in the evening (Central European Time).
Keep an eye on my blog for the exact date and time.
Article about Flash Catalyst in Dutch Magazine
If you are a designer or you just want to learn how to use Flash Catalyst you may want to check the latest issue of the Dutch Magazine Web Designer. I wrote an article for this issue demonstrating the workflow between Adobe Illustrator, Flash Catalyst, and Flash Builder. Although by the time the article got published, Flash Catalyst Beta 2 was already out (in my article I used Beta 1), I still think it is worth the read especially for someone who’s new to this tool. Almost forgot you have to know Dutch to read the article :D.
Adobe User Group Tour
As you probably know, we launched the first public betas for Flash Builder 4, Flash Catalyst, and Flex SDK 4 in June 2009. And we had about 100 events across the world, events that were driven by the communities (Adobe User Groups). I had the pleasure to present at four events: Amsterdam, Netherlands; Bucharest, Romania; Zagreb, Croatia; and Pavia, Italy.
I think all the events went great, and personally I had great fun doing the presentations and talking with the people afterwards. But, from my point of view the Adobe User Group from Netherlands deserves a special mention. Somehow the Netherlands, of all the events I’ve attended so far, has something special that is hard to find in other places. And I am not talking only about the Adobe User Groups events, I found that this is true also for events organized by the PHP community for example.
The location was extraordinary, the audience was big (more than 200 people) and very eager to ask questions, and there was good food and cold beverages, including after hours beer. I can’t stop thinking how it would be to have a MAX event in Amsterdam :)
The organizers taped the event. So, in case there wasn’t a Tour event near you, you can see here the presentations Christoph Rooms and I gave on Flash Catalyst, Flex SDK 4, and Flash Builder 4.
Round-trip Flash Catalyst and Flash Builder 4?
One question I heard a lot in the last weeks was about the round-trip between Flash Catalyst and Flash Builder 4. Out of the box, there is no round-trip between these two products. We do, however, support round trip between Flash Catalyst and Illustrator/Photoshop, and between Flash Builder 4 and Flash Professional CS 4.
Let’s take this workflow:
- The designer creates the user interface in Illustrator
- Using Flash Catalyst he transforms the static design into a functional design
- He hands the FXP project created by the Flash Catalyst tool to the developer
- The developer imports the FXP project into Flash Builder 4 and starts to add client logic and data services
- The designer has to change something, and wants to work directly on the developer’s project.
This is the message you get when you try step 5:
What are the challenges for a round-trip between Fc and Fb?
Why does this limitation exist in the first place? Before answering this question, let me tell you that we definitely want to have a round-trip between these two products, and we might have it in the future (keep in mind that Flash Catalyst is a version 1 product). Now, if you have a look at how a developer can work in Flash Builder 4 you can see two main approaches: Design view, or Code view. Sometimes you create custom components, and you do a lot of tricks and magic in order to create the desired application, and when you switch to Design view, nothing appears on the screen. This is really no big deal, because you can continue work in Code view, and press the Run button to check the application.
However, if you are the designer, and you work in Flash Catalyst, then all you have is the design view. If the design view can not render the application user interface and interactions on the stage, then the designer can’t work at all. Imagine trying to work on an Illustrator file without being able to visualize the document. It is really the same situation.
The solution
After giving this matter some thought, I think there is some kind of a round-trip that can be employed between these two products.
There are couple of things you need to do in order to succeed:
- The designer always keeps an instance of the FXP project that will not be touched by the developer. For example when he gives the FXP to the developer, he makes sure that he also keeps a copy of that file.
- The developer does his magic on the file received from the designer.
Now, suppose the designer has to modify the UI of the application to accommodate client’s wishes. He opens his FXP project, and makes all the changes. When he finishes, he gives a copy of the project to the developer. It doesn’t matter what kind of changes the designer made; if you look at the project you might find: new files, files deleted, existing files changed.
Which means that the easiest way to merge the designer changes into the developer project is by using a Merge tool or File/Folder Comparison tool such as Araxis. And just to illustrate my point, I added a new button in Flash Catalyst, then I saved the project. After this I unzipped the new project in a folder called v2 and the first version (or the developer’s project) in a folder called v1. Then, using Araxis I compare the two folders:
I can see very quickly if there are new files (like Button4.mxml), or if there are changes in the existing files (like Main.mxml). In the next image you can see the differences highlighted for Main.mxml.
Finally, there is a way to see the generated code in Flash Catalyst it self, and even to change it. Flash Catalyst offers a Code view (on the top-right corner you can choose between Code and Design view):
If you go in Code view, actually you can see the project as it will appear in Flash Builder when imported. While being in Code view, if you open an MXML file, you can see the code, but you cannot change it. And this is perfect, because, as I said, this is a designer tool and designers usually don’t work with code, but with tools. If you really want to play with the code inside of Flash Catalyst (maybe you are a designer/developer), you right-click on a file and choose to open it with Text Editor, then you can actually change it inside of the tool. But keep in mind, you might ruin the Design view by doing this.
Conclusion
I am not saying this is easy to do. But I really think it can speed up the integration of the designer changes into the developer project. And because we are still working on version one of the Flash Catalyst, we are still thinking and figuring out things.
Please, let me know what your opinion is on this matter.
Adobe User Group Nederland: Flash Catalyst and Flash Builder event
Tomorrow, June 3rd, Adobe User Group Nederland has organized a Flash Event in Amsterdam. I will do a session on Flash Builder 4 and Flash Catalyst. You can find more here.
Every time I travel to the Netherlands it has something special for me. I did the first presentation as a Platform Evangelist in the Netherlands :)
See you tomorrow!
LATER UPDATE: you can grab the PDFs for my presentations from here: Flash Catalyst and Flash Builder.
Flash Builder 4 and Flash Catalyst betas are available on Adobe Labs
We’ve just launched the first public beta for Flash Builder 4 (previously called Flex Builder) and Flash Catalyst. You can grab them from Adobe Labs.
Flash Catalyst is our newest tool in the RIA toolbox. Created with the designer in mind, it is a tool for creating the application interface and interaction. That doesn’t mean that developers can’t use it :D Basically, using Flash Catalyst, you can transform a static design (an Illustrator file or Photoshop file) into a Flex application. You can transform graphic items into text inputs, buttons, list, scroll bars, and so on. And while doing that, the tool creates the UI with the the exact look and feel of the original design.
After creating the UI, the designer can further refine the UI by creating the different states of the app and the transitions (with or without animations) from one state to another. He can also set the transitions to be started as a result of the user interaction with the UI controls. And all of this is done without coding. You can see below my Flash Catalyst workspace with a project. Keep in mind that at any given point you can edit an element back in Illustrator or Photoshop, and the tool will update the design.
It is worth mentioning that Catalyst can be used either in production stages (making designer / developer collaboration more productive), or in the prototyping phase (the designer can create prototypes to be shared with clients).
The result of the designer work is saved in a new Flex project format, called FXP. And this file can be opened by the developer in Flash Builder 4. As one might expect, Flash Builder 4 improves upon Flex Builder 3 both in terms of evolution and revolution. I will not talk here about the evolutionary features (improved code formatting, compiler, debugger, and so on). I’d rather talk about the revolutionary features. One of the them is the ability to work with Flash Catalyst projects. This means that the developer can focus on building the communication layer, and client business logic instead of “wasting” important cycles on things like transforming pictures into working Flex components.
This is an image of Flash Builder with the imported FXP project.
In Flash Builder 4 we’ve added new features to facilitate how a developer “consumes” server-side services. We have wizards that can introspect the server service and generate the ActionScript code in order to use it. We have wizards to generate the value object (or data object), and based on this object you can generate a Flex form.
What made this developer/designer workflow possible is the Flex framework, the fourth incarnation. We changed the component model (Spark is the name for the new components, Halo is the name for the Flex 3 set) in order to separate the logic/data from appearance. At the same time we introduced a series of new graphic primitives (MXML graphic). I have to add that while we have implemented round-trip between the Flash Catalyst and Illustrator/Photoshop, there is no built-in round trip between Flash Builder 4 and Flash Catalyst. But there are some ways to enable round trip. More on this matter in the near future.
If you can not tell yet, I am very excited to see these tools out, and I’m really curious to hear what you think. And just to keep it on the fun side, now the designers have to work more (they are in control of the final UI; no more passing the pictures to developers and blaming them if it doesn’t look good), and developers can have more time for beer and reading blogs (like mine, for example :D) because of the new wizards that make it so easy to connect the UI to the server data.
Where to go from here
First of all make sure you download these tools and play/work seriously with them. My belief is that they could save you loads of time and money.
Next, if you want to give us feedback, please use the dedicated forums.
And finally, if you want to learn more, have a look here: what’s new in Flash Builder 4, Flash Catalyst, and the Flex 4 SDK. Andrew Shorten has a tutorial that gives you a quick overview of what is possible with these two tools.





Android & AIR
PHP & Flex