InfoQ

Interview

James Ward discusses Flex and AIR

Interview with James Ward by Jon Rose on May 20, 2008

Community
Java
Topics
Rich Internet Apps
Tags
Adobe ,
Flex ,
Adobe Integrated Runtime ,
Flash ,
Tamarin
Summary
In this interview from QCon San Francisco 2007, James Ward discusses Rich Internet Applications (RIAs), Flex and AIR, how Flex helps in the development of RIAs, the changes in ActionScript 3, the Tamarin engine, desktop and offline capabilities, Flex Builder, the Flex developer community, LiveCycle Data Services, the AMF protocol, RIA development trends, and the Flex component model.

Bio
James Ward is a Technical Evangelist for Flex at Adobe and Adobe's JCP representative to JSR 286, 299, and 301. Today he primarily uses Flex to build beautiful front-ends for Java based back-ends. Prior to Adobe, James built a rich marketing and customer service portal for Pillar Data Systems.
We're here with James Ward of Adobe Systems; he is a technical evangelist for Flex and AIR. James, can you tell us about why the enterprise developer should care about RIA and Adobe's role in that and give us the overview and we can drill down from there.
What technologies has Adobe given the developers to deliver that functionality, to solve those problems, to give those rich experiences, both on the desktop and the web, what do developers have available from Adobe to do those things?
So is Flex the programming language?
So isn't ActionScript just the clunky language that comes with the Flash player or is there something more to it?
Is it the same language, if I looked at it 4-5 years ago today, or has it changed?
Is that only supported then in the Flash runtime or are there other runtimes for ActionScript since it is just an implementation of the ECMAScript standard?
So does that mean that my Flex app will run outside the Flash player someday or is it more complicated than that?
Coming back to Flex, ActionScript is the programming language with MXML. So if I am a Java developer that sounds a little like tag libraries. Is that a fair comparison, in terms of declaring my view in a page?
So Flex provides the UI framework for the web. You talked about desktop functionality and offline functionality. What is Adobe providing for developers to build that kind of functionality?
So the Air Runtime, is that out of Beta?
And as a developer what can I expect the licensing and the availability of that product to be to me? Is that something that each of my clients would have to pay for that runtime?
So that obviously leads right into the next most important point for any developer looking at a new technology and the tooling. What tools are available, what kind of functionality are they providing, what are they similar to in other areas that we've seen and what are the pricing on those tools?
Is that the same tool that you use to build an AIR application then?
So if I go out and build an application in Flex and deploy it on the Internet, how do I know… Does the versioning of the player matter, how do I know they have it? There are always these limitations with the client. How do you guys resolve some of those and what can I expect in terms of a developer there?
Will Flex 3 target the same Flash player or will they have to upgrade to get the Flex 3 functionality?
When can we expect to see Flex 3 and AIR out of Beta and in a production release?
Can you tell us a little bit about the community and where enterprise developers fit? I come from the Java side of the world and when I talk to people about Flex and Flash it seems like the oddball in the stack. So can you tell us about where you guys fit in terms of enterprise software, with the typical developer, Flex developers, what kind of profile, what they look like, were they a Flash developer before, where they come from, Java or .NET, and also it would be interesting to know what size that community is, and just tell us more about what's happening there on the community side?
You guys license enterprise infrastructure as well, for data services?
To really build a Flex application, do I have to have LiveCycle Data Services or are there other options to me in terms of integrating with the backend?
Since we're jumping back, you threw out AMF there. Can you tell us what AMF is and why as a developer I would want to use that over more standards-based or open web service protocols?
Does Adobe ever plan to publish the standard for that or is it just reverse engineered?
Let's go forward. I am curious to hear about the community and what's going on there.
Beyond size, can you give us some attributes of both the developer that's adopting it and the kind of solutions they are building? Do you see trends? Is it just these "sexy applications" that people are using Flex for, or is it making its way into the enterprise and what kind of developers are you seeing that are quickest to adopt it and make use of it?
Is there anything else that someone considered starting a new project and considering which UI framework needs to know and also just in closing could you point them to any resources that would both help them evaluate that and then if they do adopt Flex will help them in their process, in learning it and implementing those technologies?
In terms of components is Flex providing me the basic components I need or am I going off to each of these different guys and grabbing those?
But I could go and build a decent application with what gets shipped in the Flex framework?
Are there any resources that the InfoQ readers can check out to learn more about Flex and what you guys are doing in the RIA space?
show all  show all
Interview a little dated by Andrew Pym Posted May 21, 2008 9:45 PM
Excellent interview by Teodor Baciu Posted May 22, 2008 2:53 AM
  1. Back to top

    Interview a little dated

    May 21, 2008 9:45 PM by Andrew Pym

    The interview is a little dated now that Adobe have launched Flex 3 and also AIR
    br
    Reasonably high level discussion. Useful as an introduction to the platform.

  2. Back to top

    Excellent interview

    May 22, 2008 2:53 AM by Teodor Baciu

    This interview provides good information about the purpose of Flex and AIR. For me as a Java developer considering to use Flex as UI for my next web application this presentation was really useful.

    There is a mention of the Adobe Livecycle Data Services, the framework provided by Adobe for communicating with remote data services. The interview was done apparently before tools that support the AMF communication protocol were open sourced and became BlazeDS. More info about BlazeDS can be found at: opensource.adobe.com/wiki/display/blazeds/BlazeDS

Educational Content

Brian Marick on 4 Challenges and 5 Guiding Values of Agile Software Development

Brian Marick takes us through a quick tour of the most important values and challenges to adopting Agile successfully (they aren't the typical challenges and values we hear in the community).

Are You a Software Architect?

The line between development and architecture is tricky. Does it exist at all? Is an ivory tower actually needed? There's a balance in the middle, but how do you move from developer to architect?

Agile – A Way of Life and Pragmatic Use of Authority

The word 'authority' sometimes produces an allergic response in hard-line agilists. Freedom and authority – both are bad if misused and both are good if used in right spirit for a noble cause.

Getting Started with Grails, Second Edition

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Using ITIL V3 as a Foundation for SOA Governance

Those familiar with only ITIL V2 often scoff at the thought that ITIL could serve as a governance framework for SOA. With ITIL V3, the focus of the framework shifted towards service-orientation.

Adrian Colyer on AspectJ, tc Server and dm Server

SpringSource CTO Adrian Colyer discusses AspectJ, SpringSource's dm Server and tc Server products, OSGi and Scrum.

Adam Wiggins on Heroku

Heroku's Adam Wiggins talks about Rails, Background Jobs, Add-Ons, Ruby, and how Heroku manages to work around Ruby's inefficiencies using Erlang and other languages.

SOA as an Architectural Pattern: Best Practices in Software Architecture

For Grady Booch the foundation of a good architecture is patterns, SOA being just one of many patterns. In this Second Life presentation, Booch attempts to bring more clarity on what architecture is.