Archive for September, 2006

RIA Jobs with Adobe Consulting and Adobe Product Teams

So it’s exciting times at Adobe, as we are recruiting for the growth of our consulting practices and our product teams. There are a number of job openings in the RIA Practice in the US, in the Flex product team and in the Breeze product team, that I keep being asked if I know anyone that fits the bill. If you’re reading this blog, you’re probably the kind of person I’d hire 🙂 so I figured I’d post here !

Adobe Consulting

We’re growing our Manhattan office in New York City with a consulting presence. We’re looking for a couple of technical architects with bias in either LiveCycle or RIA technologies to join our User Experience colleagues who have already setup office downtown. If you’re interested in joining our consulting group based out of New York, then drop an email to tiffany s at adobe dot com.

Flex Product Team

We’re looking for a senior level engineer to join the Flex team, to work on proof of concepts for next-generation products. The Flex platform is an incredibly exciting technology; this is an opportunity to get on the inside of defining the future of RIA. There’s a link over at if you’re interested.

Breeze Product Team

I had the pleasure of spending some time with the Breeze product team last year, as they were working with Flex and Cairngorm. This forward looking team now has an opening for a software engineer on the team. I’ll post the full job description here, as I’ve not caught it online yet – but for those of you working with Flex and Cairngorm, note that we’re eating our own dogfood at Adobe, and these are desirable skills for candidates interested in applying. If you fancy this role, drop an email with your resume to barnes at adobe dot com with a subject heading of “Resume for Breeze Applications Team”.

Software Engineer

Recognizing that employees are at the core of our success, Adobe recruits and retains highly qualified and motivated individuals, creates an environment where they can innovate and achieve their best, and rewards them for their performance by giving them an opportunity to share in the company’s success.

Position Summary:

If you are a software engineer with a passion for putting great technology to good use, the drive to do the right thing, and the pragmatism to do it in a way that meets customer requirements and product schedules, you will enjoy working at Adobe and we’d love to have you on our team. We have some great ideas about how to shape the future of Internet application development and we are looking for someone to help us turn these ideas into products and ship them (quickly). We are looking for a hands-on contributor who can dive in and make significant contributions to the Breeze product and help deliver great new user experiences.

Knowledge & Skills:

• Extensive knowledge and proven experience in Adobe Flash and Adobe Flash ActionScript development.

• Ability to design and create highly accessible, practical and innovative user interfaces.

• Proven experience in building, and deploying commercial-grade software, with a focus on web applications and an advanced level of server integration.

• Ability to work closely with multiple teams including product management, QA, operations and other engineering teams to design and implement cutting-edge solutions.

• Passion for researching interesting new technologies especially related to evolving industry standards.

• Bachelor’s or Master’s degree in Computer Science or Software Engineering, or equivalent.

• A minimum of three years’ experience developing Internet-based Adobe Flash applications.

• Experience with Adobe Flex, Cairngorm, and other languages, presentation technologies, and data technologies a plus.

• Excellent analytical, writing, and interpersonal skills.

Adobe believes personal fulfillment and company success go hand in hand, sustaining one another. In fact, our dynamic, rewarding working environment is well known – including seven consecutive years on FORTUNE magazine’s “100 Best Companies to Work For” and other, similar accolades. By hiring the very best and brightest, Adobe continues to be a simply better place to work – creating a dynamic environment today and providing incentives for future achievement.

Patterns in Technology and Design

One of the things that has most excited me about Rich Internet
Applications in particular, has been the way in which it has created a space
where great Design and great technology come together to create great
solutions.  Some people are fortunate to have talent in both areas – I’ve
always had to settle for an affinity to the compiler rather than the canvas. 
Working within Adobe Consulting has been a great opportunity to blend a 
passion for technology, and a passion for the way that technology can
revolutionise business,  with a collective of people who have the same passion
and beliefs that Design can do the same thing, creating user-experiences that
are useful, usable and desirable.

Tom Peters , a
reknowned and innovative management guru , defines Design as “the ‘soul’ of the
new enterprise” in his highly recommended read, “Re-imagine!”.  
If you’ve been evangelising about Rich Internet Applications, it’s hard not to
have empathy with the following quote from Peters, “Design has become a
professional obsession.  I simply believe that design – per se – is the
principle reason for emotional attachment (or detachment) relative to a product
or service or experience”
.   I’ve recently done a number of customer visits
and  presentations with Simon Smith, our worldwide practice leader in Adobe
Consulting for User Experience,  who throws a great quote up in his
presentations, also from Peters, that Design “..should be on the agenda of
every meeting, in every department, throughout the Enterprise”

Is design on your agenda ?  Within Adobe Consulting, whether
someone is a Project Manager, a LiveCycle specialist, a Rich Internet
Application specialist, a Mobile application developer or an Engagement
Manager, they are immersed in the importance of Design.  Through Adobe Consulting University – an ongoing learning program for our consultants – Design is
placed on everyone’s agenda, as being as critical to the success of a solution
delivery as the technologies which underpin it.  The fusion of great design and
great technology is an online experience that exhibits breathtaking utility.

Design Patterns

I’ve written and spoken at length within the RIA community,
around the topic of design patterns.  However, the idea of capturing design
ideas as a pattern is attributed to the American architect, Christopher

Christopher Alexander, a professor-emiritus at the University of California, Berkeley, co-authored “A
Pattern Language: Towns, Buildings, Construction”,
a book which almost 30
years on is still reputed to be one of the best-selling books on architecture. 
In the book, Alexander first coined the idea of a “pattern language” derived
from traditional architecture, which documented over 250 patterns that adhered
to best-practices and thinking, while still affording the architect the
creative freedom to adapt them to a particular context or situation.  By way of
example, the “Arcade Pattern” is described as follows – “"Arcades
– covered walkways at the edge of buildings, which are partly inside, partly
outside-play a vital role in the way that people interact with buildings”.
This is then followed by a description of the pattern,  cross-reference to
smaller component patterns such as columns, and larger patterns within which an
Arcade has context. 

This logic and structure of this book was the inspiration
for the software engineering text, “Design
, by Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides,
known affectionately as the “Gang of Four” or “GoF”. 

In software engineering, a design pattern is considered as a
general and repeatable solution to a commonly occuring problem in software
design.  The Gang of Four thinking became widespread, leading to a number of
works including the one which had some of the greatest influence on my own
software architecture thinking, “Core
J2EE Patterns”
by Deepak Alur, John Crupi and Dan Malks.  Many of the Core
J2EE Patterns were to provide the basis of the Cairngorm Microarchitecture,
which we advocate within Adobe Consulting as a consideration for the underlying
software architecture in an Enterprise RIA.

Design Patterns in Architecture and Software Engineering
… so what about in User Experience Design ?

The idea that there are recurring challenges for which tried
and tested solutions exist, solutions which document approaches to the problem
resolution while still affording freedom in implementation, always seemed to
make sense to me as being equally applicable to user-experience design.  It has
always struck me the Accordion Form in Flex for instance, represents a User
Experience pattern with forces of “the user must be presented with multiple
pages of form data to complete, but like a real-world form it is expected that
quick and random access to the form is required.  Furthermore, though the form
is logically sectioned, the order of completion of these sections is not
necessarily logical.  The Accordion Form offers a means of rendering the form
section by section, with sections accessed in an order determined by the user,
affording random-access and rapid-access without the need to step through
pages”.  I’m sure someone could come up with a more general and eloquent
expression of the pattern here, but the concept makes sense to me.

At the beginning of the year, I picked up Jenifer Tidwells
book “Designing Interfaces”
from O’Reilly.  In this book, Tidwell expresses interface and interaction
design as a pattern language, in the same way as Alexander, the Gang of Four,
or Alur et al before her.   The patterns are drawn from desktop applications,
web sites, web applications and mobile devices.  In the same way that other
pattern catalogues have tried to structure and group their patterns, Tidwell
categorises patterns as “Content Organisation Patterns”, “Getting Around”
patterns, “Commands and Actions”, “Showing Complex Data” and more.  The pattern
catalogue is online at http:///
and I’d highly recommend browsing the site for some insight.

Pattern Fever

When I presented this idea to some of my user-experience
colleagues, it was interesting to hear that while such efforts are valuable,
they create a risk that the patterns  be seen as the essence of a good
user-experience, rather than the understanding of where and how these patterns
should be used, of the fine-line between prescription and free-will, of the
responsibility to learn from experience and stand on the shoulders of giants
while still having the courage for creativity steeped in a solid understanding
of why some things work and why other things don’t.

 My balance in talent towards the compiler and away from the
canvas is not going to go away because I create an online banking RIA that
leverages the “Card Stack” pattern for my different accounts, in “Movable
Panels”, with “Diagonal Balance”, “Multi-Level Undo” and “Smart Menus Item”. 

Frankenstein’s Monster, yes.  Frank Gehry’s Guggenheim
?  I don’t think so.

And that creates an interesting parallel track in the
architecture, software and design pattern movements;  that similar criticism
can be drawn irrespective of problem domain.

I recently posted an article to my blog, “Why
I think you shouldn’t use Cairngorm”
, that attempted to provide early
warning signals to developers that they were perhaps getting a little too
pattern happy too quickly, and blindly applying the patterns that Cairngorm
provides, without understanding the contexts in which they do and don’t make
sense.  In his essay, “Revenge of
the Nerds”
,  Paul Graham writes “This practice is not only common, but
institutionalized. For example, in the OO world you hear a good deal about
"patterns". I wonder if these patterns are not sometimes evidence of
case (c), the human compiler, at work. When I see patterns in my programs, I
consider it a sign of trouble. The shape of a program should reflect only the
problem it needs to solve. Any other regularity in the code is a sign, to me at
least, that I’m using abstractions that aren’t powerful enough— often that I’m
generating by hand the expansions of some macro that I need to write”
.  Now
unsurprisingly to many of you I’m sure, I don’t agree that a pattern is always
a sign of trouble – however, whenever I am reviewing code, the over-sprinkling
of Factories, AbstractFactories, Decorators and Observers can often be a bad
code-smell, that whiffs of a developer who has abdicated responsibility to
design, in the belief that the patterns have it all covered.  In Cairngorm, the
View Helper as a catch-all for any logic that doesn’t go in a Command or
Business Delegate became a classic bad-code smell for us.

Other than Christopher Alexander’s own projects, those that
employed his patterns met with mixed response from other architects and
critics, leading Alexander himself to believe that patterns themselves were not
sufficient in their own right; in a subsequent text called “The Nature of
Order”, Alexander talks about the need to understand the way in which an environment
self-forms, something he called a “morphogenetic” understanding.  In essence,
this is a recognition that blind application of patterns is not a recipe for
success; but rather the patterns are tried and tested ingredients, many of
which work consistently well with each other, but rarely create a delicacy
unlesss under the guidance of an experienced chef who understands the broader
context of what makes a good dish.

If I can return back to the concept of user-experience
design patterns, we can recognise that neither is arming someone with a
pocketful of User Experience patterns the recipe for an effective
user-experience.   The “Multiple Document Interface”  is often misused, where
there is a lack of information about the currently opened windows, and there is
no relative context of what is on-screen in relation to the task that the user
is undertaking.  To quote our User Experience practice, “when everything is
equal, nothing is important”. 

If you instead consider something like the user-experience
in Breeze – itself a Rich Internet Application that has had much user-driven
design-thinking applied – you will have experienced how the fluidity of the
user-experience is capitalised upon, with areas of the screen expanding in size
and importance according to the current task of the current user.  When you are
presenting, the presentation window will grow in prevalence, shrinking in
importance at the end of a presentation as the application is moved into a chat
mode, and the discussion panel increases in relevance and real-estate.   A
naïve implementation may have made all of these windows overlapping, resizable,
draggable, dockable, collapsible, minimisable and maximisable windows. 
However, this underlying principle of “when everything is important, nothing is”
provides a higher-level of understanding and meaning.  This understanding of
the environment and the way in which citizens operate within the environment,
brings the same nature of order to a user-experience as Alexander describes –
whereas blind application of say the “MDI Pattern” or the “Tabbed Pane Pattern”
would create a user-experience that while perhaps technically clever, or
aesthetically pleasing, fails to match the needs of the people who must use it
from day to day.


So whether we are planning towns and precints, whether we
are architecting our software applications for scalability and maintainability,
or whether we are designing great user-experiences, we can count on patterns,
but none too much.  Striking a balance between established wisdom, insight into
the context and environment of our solutions, and the right to apply our own
creativity and ingenuity to innovatively solve problems, are important lessons
from both a technical and a Design perspective, and the path to a successful
solution, whether it be a building, a software architecture or a great

I recently read “The
Ten Faces of Innovation”
by Tom Kelley of IDEO, who defines 10 personas we
can all adopt when trying to heighten creativity and deliver truly innovative
solutions and services to our clients.  One of these personas, “The Cross
Pollinator” is described as someone who can  create something new or better
through the unexpected juxtaposition of seemingly unrelated ideas or concepts,
taking clever solutions in one context and then translating them successful to
another.  The role of the cross-pollinator is best captured in the book by a
quote by Alexander Graham Bell, the inventor of the telephone only a few miles
from our Adobe Consulting Edinburgh office: “Leave the beaten track
occasionally and dive into the woods.  Every time you do so, you will be
certain to find something that you have never seen before”.

With Design on my agenda, I’m finding there a number of
interesting parallels between good Design and good software architecture; I’m
curious as to what innovation lies beyond, and am curious as to the parallels
that you may also have found.

Cairngorm Community Documentation and eLearning Project

I’m really pleased with the following piece of news; Evan Gifford, one of the members of the highly popular flexcoders mailing list discussed with me his hopes to create a community around Cairngorm documentation and eLearning project.

Evan has created a new YahooGroup cairngorm-documentation, which is to be the focus of a community-driven documentation effort for Cairngorm.

Those of you on the flexcoders mailing list have seen Evan work with the community to create some diagrams that help newcomers to Cairngorm better understand how the patterns work together; Evan’s vision is to extend this to interactive eLearning modules and tutorials that will aid developers in quickly understanding Cairngorm, and the best-practices around Cairngorm.

I think this is a great step forward; please consider signing up to Evan’s list if you’d like to steer the direction of this initiative, or if you’d like to support Evan by contributing to the initiative.

Flex and LiveCycle – Platform for Enterprise Success

When I joined
Macromedia/Adobe Consulting
, my role as Practice Leader was to grow a
practice in EMEA around Rich Internet Application technologies.  In recent
months, we have taken the decision to bring together the Rich Internet
Application practice with our LiveCycle practice, reflecting the recurrence in
opportunity for us to fuse these client and server technologies together to solve
a number of enterprise business problems.  As I assume the responsibility to
grow this combined practice in EMEA, I’ll extend my blogging to share some of
the excitement and thinking we have around how the technologies from our
Enterprise Developer Business Unit – including Flex, Flex Data Services and the
numerous LiveCycle technologies – converge as an enterprise business platform.

I’d like for this blog post to initiate some thinking on
what this might mean.

I expect that people who track this blog – by the nature of
where it is generally aggregated – are already familiar with Rich Internet
Application technologies.  I expect these readers already have a strong
understanding of the importance and effectiveness of a user-experience that
enables consumers, customers, citizens, workers or all manner of other
individuals (user is such a non-personal description of the various persona of
people who interact with business through a user-interface) to perform their
tasks with applications that are not only useful, but usable and desirable.

What is LiveCycle ?

These same readers may not be as familiar however with the
LiveCycle suite of technologies.  I’m not going to go into exhaustive detail on
this suite of technologies, but would highly recommend a browse through the Adobe LiveCycle section of
our corporate website.  Nor am I going to attempt here to be exhaustive of the
business benefits of LiveCycle, but will instead aim to call out some concrete examples
of where the fusion of Flex and LiveCycle allows us to tackle even more of the
business challenges that our richer and more effective user-experiences have
set out to address.

The Business Benefits of RIA…

I’m a great believer in education through example, and
understanding through analogy, so let me try and paint a picture of the current

The ineffectiveness of online application forms not
delivering on the promises of 24/7 at-your-leisure access when delivered in a
browser, is well understood.  Take a mortgage or a loan application from your
online bank – these are characterised as frustrating
processes that typically employ between 8 and 11 different HTML pages, where
each page refresh results in 5% of applicants making an abandonment decision. 
The problems of page-refresh are well understood – technological frustrations
associated with navigating back through an already completed process or session
time-outs, user-experience frustrations such as being forced to complete the
form in a sequential manner (what I often compare to “reading a book through a
straw”) rather than more familiar “complete the easy stuff and come back to the
hard stuff”, or the situation where you need to go and find some supporting
information, like your social security number.  I can pitch this “failed
promise of the Internet” for an hour, so I’ll spare you here. 

Rich Internet Applications replace these multi-step, complex
processes with simpler, easier, more effective single-screen or
guided-completion processes, often employing UI metaphors such as the accordion
to deliver a user-experience that more effectively matches the interaction
patterns of real users. 

An analogous problem to financial service application forms,
is the same problems manifesting themselves through retail checkout experiences
– addressing these problems with RIA have been shown
in blind A/B tests to improve the appalling abandonment rates of 75% with
increased conversion rates of checkout customers by 50%
.  So with RIA,
we’re well on our way to delivering efficiencies through user-experience and
design-led solutions that attack the problem from the user’s perspective rather
than a technology perspective. 

I’ll talk more of such design-led approaches to RIA
solutions in future blog entries.

…fuse with the Business Benefits of LiveCycle

But typically, the rich user-experiences that we deliver
with RIA are often the beginning of a more complex document-based process, that
inevitably crosses the digital world to a world where people interact through

Let’s consider some of these inefficiencies, by returning to
our loan application.

Immediately you complete your application (and by replacing
that application process with a design-led RIA, there are many more of you that
have completed that application compared to the old days of the several HTML
forms) you enter the world of workflow, and the world of paper. 

In fact, many organisations will
insist that you become the protagonist in their paper play.  The final step of
your mortgage application will often require that you print your application as
a form, sign that form, and post that form to the bank. 

If you print the form, if you sign it, if you remember to
put it in your bag, if you buy the envelope and the stamp and if you remember
to post it, then some days later, once your piece of paper has survived the
postal system and made it’s way to the desk of a loan processing officer, your
application is ready to be processed.  Electronically.  But it’s a bit paper. 
So what are we going to have to do … that’s right, having taken you from the
state-of-the-art RIA-enhanced electronic world back to a piece of paper, the very
next step is to capture that form information digitally again.

So how will LiveCycle help us here ?  Well first and
foremost, moving seamlessly between the RIA and the PDF world is a simple and
obvious fusion of Flex and LiveCycle.  One of the key aspects to LiveCycle, is
the process of document generation – leveraging technologies such as LiveCycle PDF
to automate the creation of PDF files or LiveCycle Assembler
to “form-stitch” together document fragments to create customised PDF

More effective however, is to remove the paper-trail
altogether, and this is where LiveCycle can really begin to optimise the
behind-the-curtain processes in an enterprise RIA solution.   In addition to
creating a dynamic PDF representation of our application form data, LiveCycle
Document Security
will enable the customer to digitally sign and encrypt a
document before it is electronically submitted to the bank for processing,
removing the need for manual rekeying when the document is received. 

However, if the bank does require receipt of a paper
document with an ink signature, the manual rekeying can still be eliminated.  LiveCycle
Barcoded Forms
automate the capture of user-provided data from printed or
faxed forms, by representing that data as a 2-dimensional barcode that can be
easily and rapidly scanned, removing the processing and errors associated with
manual rekeying of user-supplied data.

Once your loan application is born again as an electronic
application form in back-office systems it must be processed; typically this
processing is a complex hand-off of your application between different
departments, or different people within a department.  Perhaps you have to be
credit-scored, before your application is then allowed to proceed to the next department,
who are responsible for checking your employer references.  A gap in your
employment perhaps triggers the need for a letter to be sent to you requesting
further information – otherwise, your application progresses to a decisioning
process that determines the maximum amount of loan you will be offered.  You
are then sent a letter either approving or declining the loan, and this kicks
off another step in the workflow, where your approved loan exists for 30-days. 
After 30-days, your loan is no longer valid, until another credit-check has
been performed.  And all the while, you have no insight as to where you are in
the loan approval process, or indeed whether your loan has even been received
at all.

What we have here, is an example of a complex workflow
associated with a transient document – your loan application – as it moves
between a variety of systems and people.  LiveCycle Workflow
allows us to streamline these human-centric processes, allowing
either the visual or programmatic assembly of “workflows”, which allow your
electronic application to move quickly and securely through an organisation.

Meanwhile LiveCycle Policy Server
could be employed, ensuring that information remains confidential, specifying
not only who has access to the document, but what they can do to the document,
when they can do that to the document (for instance, once the customer receives
their loan approval as a PDF, can they update their mobile telephone number
in-site, but not change their address), and for how long they can make these
changes.  Furthermore, Policy Server will allow all these security policies to
be updated even once a document has been issued – revoking access to a loan
approval after 30 days, or even confirming that the user has printed the loan
application approval, removing the need to send them a paper-copy in the post).

And what of keeping you, the customer engaged ?  A Flex
application upon a LiveCycle workflow, leveraging Flex Data Services, can offer
real-time notification to a user as to the receipt, the progress and the
success of their loan application.  The enterprise technology stack enables a
two-way communication between customer and bank, not a one-way flow of
information into a black hole. 

And the list goes on…

As I said earlier, I have no desire to be exhaustive in my
overview of LiveCycle technologies in this post, but I hope that the above
real-world scenario outlines how – effective as a Rich Internet Application can
be – we can offer significant additional return on investment when the RIA on
the front-end is supplemented with the process automation, document generation
and information assurance services that LiveCycle can offer in the back-end.

And it’s not just in financial services; think of all the
online processes that you have considered that can be improved and innovated
upon with RIA technology – not just financial services and online banking, but
travel booking, online check-in for flights, retail commerce, making a movie
reservation, booking seats at the theatre, hiring a car, submitting your tax
return, filing your expenses for approval, etc, etc. 

As limited as you are by your imagination, think how many of
these opportunities for insanely great user-experiences also result in
something physical and tangible in your hand as the result of a process of
automations, approvals, workflows or generation of documents.  

Like account statements.  Like travel itineraries.  Like
boarding passes.  Like movie or theatre tickets, with barcodes that can be
scanned at point of sale or point of entry.

Think of how a richer user-experience can not only benefit
business with increases in conversion rates, increases in the effectiveness of
cross-selling and up-selling, increases in repeat-business or increases in
customer acquisition through customer evangelism.  Think of how a richer
user-experience can benefit from the efficiencies of automatic and electronic

Think of the value you can begin to offer your clients, and
their customers.  Think of how Flex and LiveCycle might work together for you.


A couple of years ago, I was using the phrase “Enterprise RIA”
to define the kind of online applications that could benefit from a richer
user-experience while performing complex integration with new and existing
systems and infrastructure.  The fusion of RIA and LiveCycle dramatically
lowers the barrier to delivery of these enterprise RIA, upon a recurring
solution platform for enterprise business applications.

I’m tremendously excited about the solution opportunities
and business problems our consultants are going to be delivering with the
combination of Flex and LiveCycle. 

In future blog posts, I’ll speak more of how some of these
integrations can be achieved technically, whether you are a J2EE architect that
wants API-level access to these services, or someone who would rather
orchestrate these solutions in a visual development environment, and integrate
them with your Rich Internet Applications.

Additionally, I’ll be aiming to share some of the leadership
our User Experience practice, and RIA and LiveCycle practice consultants are creating
around Flex and LiveCycle.

I hope this blog post lifts the lid on a whole new world of
enterprise RIA development, while kick starting your thinking about the
solutions you could deliver, and the skills you could leverage or the
partnerships you could create in order that you are more suitably positioned to
deliver these solutions.

Future plans for Cairngorm with Flex, Apollo and Flash Lite at MAX2006

If you haven’t yet registered for MAX2006, or if you have registered but not yet signed up for your talks, then I want to share a little about what I’ll be presenting in my talk, “Developing RIA Solutions with Cairngorm 2”.

First and foremost, we are using MAX2006 as an opportunity to blend many of the best-practices and techniques that Adobe Consulting have been leveraging across a number of projects over the last year, with community feedback to Cairngorm 2, to create a dot-release of Cairngorm that we know will make it even easier and quicker to build scalable, secure and robust enterprise Rich Internet Applications upon Cairngorm.

I’ll be presenting the new additions to Cairngorm 2, and showing how we leverage these through the delivery of a sample online banking application, that has been developed by Yaniv de Ridder, one of the consultants working in our EMEA Rich Internet Application practice.

We’ve also been gaining tremendous productivity gains, and delivering some state-of-the-art user-experiences with Flex Data Services in our solution architectures. I’ll be spending some time during my talk presenting how we can use Flex Data Services within a Cairngorm 2 application, touching briefly on how we’ve rolled up a great deal of Peter Martin’s work on Securing Flex Applications – that he’ll be presenting in deeper detail at MAX – into the Cairngorm architecture.

There’s a great deal of buzz about Apollo; and the more time I spend time with customers understanding their business challenges and how we can deliver innovative design-led solutions that embrace these challenges, the more excited both customers and I are getting about the value proposition that Apollo and Flex offers. I believe that developing applications upon Cairngorm will offer a rapid transition from the browser to the desktop with Apollo, and will be demonstrating how we can deliver value-added features to an online banking experience by re-deploying a Flex 2 and Cairngorm 2 application to Apollo. I’ll be showing Cairngorm 2 and Apollo integration during my talk, and will speak of our roadmap for further Apollo support in Cairngorm 2.

The multi-platform and multi-channel strategy is another piece of our “Engagement Platform” value proposition that resonates strongly with the customers we are delivering visions and solutions for. Providing a rich, consistent user-experience to the right device at the right time is a reality with the Flash platform, and I’m excited about the contribution that Cairngorm will be making in this regard.

Matt Jacobi – one of the consultants in our Mobile and Devices practice in London – has been involved in a number of the innovative Flash Lite solutions that Adobe Consulting have been delivering to clients. Matt has been internally championing the use of Cairngorm for Flash Lite 2.x development, has back-ported Cairngorm to Flash Lite, and has created a lightweight presentation-tier framework that allows Flash Lite developers to create Cairngorm applications for devices using the same patterns and practices advocated in Cairngorm web-development. I guess this is the first place we’re announcing that we’ll be making a mobile version of Cairngorm available for everyone under the same terms as the Cairngorm 2 download, so that everyone will be able to apply their Flex 2 best-practices to Flash Lite application development using the same best-practices as our MAD (Mobile and Devices) practice.

And guess what — I’ll be showing Cairngorm mobile during my talk as well, playing it’s part in an integrated multi-channel self-service banking example that reaches out to the browser, the desktop and the device in your pocket.

Oh and before you all ask “what about the sample application, the multi-channel online banking demo that will target the browser, will offer different experience in Apollo and that will be delivered upon Cairngorm’s new mobile framework for Flash Lite ? Are you going to make the code available”.

We’re Adobe Consulting. You should know better. Of course I’ll be making the code available…

I’ve been speaking about Cairngorm at MAX since New Orleans in 2004 – and I’m really the most excited about this forthcoming talk. The original strapline for iteration::two, was “Pervasive. Interactive. Agile”. It was our vision on founding, that we’d be delivering richer user-experiences that reached out across all devices, and applying agile software methods in these deliveries. There’s a real sense of convergence of the desirable and the possible, and the presentation that I’m giving at MAX is exciting to me not just for the further evolution of our Cairngorm framework, but for the fact that we are now extending our RIA development skills to the desktop with Apollo, and to the handset using Flash Lite, while leveraging all our skills, techniques and best-practices that we have honed while changing the face of the web with Rich Internet Applications.

If there’s anything else you’d like me to cover in my talk, drop me a note in the comments — but I’ve got hours left to finish my presentation (you think the deadlines YOU get for your MAX presentations are tight, you want to work for Adobe…) so get ’em in quick.

And if you’re going to be at MAX, or even better are going to be at my talk, please come and introduce yourself – truly the best thing about the conference for me, year on year, is the opportunity to meet with those who are as passionate about delivering state-of-the-art solutions with RIA technologies as we are.

See you in Vegas.