Flex

PureMVC to Parsley

January 25th, 2010

An overview of the transition from PureMVC to Parsley.

Is Silverlight overtaking both Flex and AIR?

November 18th, 2009 / Progressive Digressive

Reading the feature list of the upcoming Silverlight 4 release (now in beta), I am more than a bit impressed.  Up to now, there has been a few glaring features by which Silverlight was trailing behind Flex – camera/mic input; printing; clipboard access; and right-to-left text being ones that spring to mind.  Admittedly, all of these are fairly niche features which most applications wouldn’t require.

Morgan Stanley’s Matrix webcast recording

August 25th, 2009 / Dhruba Bandopadhyay

A month back a live webcast took place titled ‘Transcending the client experience’ that focused primarily on the use of RIA in financial services and particularly within Morgan Stanley’s Matrix. A recording of the webcast is now available. I offer a small summary of some of the highlights here.

RIA offers a zero footprint in terms of installation effort and supports real time data presentation through simple yet rich user interfaces. It is bringing the business closer to its clients and is more than just technology in that it is solving real world business problems.

Where to begin?

August 1st, 2009 / Progressive Digressive

So I’ve been thinking about what I could kick start this blog with – stuff in which I’ve developed a bit of a niche and have something to share with a wider audience.  My background has been primarily in web-based application development, with the tools focused largely within the .NET and the RIA spaces.

I recently helped a colleague out with an article on Flex vs. Silverlight in the Enterprise.  Both of us have a strong .NET background, and have more recently been heavily involved on a massive enterprise-scale Flex application.  Although I still stand by the original article, I realise it’s impossible to accurately and fairly detail each platforms’ strengths and weaknesses in one post.

Flex in finance

March 26th, 2009

Recently I’ve been taking a break from the joys of C# and Winforms and have been having a look at Actionscript and Flex. Looking through Flex livedocs I noticed this paragraph on their description of the Flex “Number” data type.

“Although this range of numbers is enormous, the cost of this range is precision. The Number data type uses 52 bits to store the significand, with the result that numbers that require more than 52 bits to represent precisely, such as the fraction 1/3, are only approximations. If your application requires absolute precision with decimal numbers, you need to use software that implements decimal floating-point arithmetic as opposed to binary floating-point arithmetic.”

Find security vulnerabilities in Flex applications

HP has launched a new tool to find security vulnerabilities in Flash/Flex applications, SWFScan. Looks quite promising, this is how it does it:

  • Decompiles and analyzes the application to identify security issues.
  • Identifies insecure code, and deployment setup.
  • No need for access to the code
  • And it is Free

Definitely worth trying, finally someone creates a tool to address Flash security.

Stubbing Flex HTTPServices

On a few projects I have worked on there has been necessary to stub the Flex HttpServices. A couple of reasons has been, server side code is not ready yet or services are too unstable to support a continuous UI development.

I have seen examples where there has been spent a lot of time developing code to accommodate for this, with the only result that code base has a lot of non production code which can cause bugs and add an overhead to maintenance of the system. In my eyes that would be wrong, test/mock coding is money wasted on valuable time that should be spent on developing features.

Mission critical Flex application

One of my previous projects were showcased on Adobe Max 2008 in San Francisco, a mission planning system for NATO AWACS, E-3A Component, presented by Peter Martin and Mansour Raad.
The application was built based on Flex, LiveCycle DataServices and Oracle, one of the main components used within Flex was the ESRI mapping api.

The presentation is available on AdobeTV.

Who said Adobe Flex couldn’t be used for critical systems? ) If Adobe wants Flex to be seen as a serious framework in the enterprise, this is the kind of projects they need to show more of.

PureMVC

August 13th, 2008

Cross-language implementation of the MVC meta-pattern – PureMVC. Supported languages:

  • ActionScript 2
  • ActionScript 3
  • C#
  • ColdFusion
  • haXe
  • Java
  • Perl
  • PHP
  • Python
  • Ruby

Scotch on the Rocks, day 3

My second presentation at Scotch On the Rocks was Flex Client Architecture & Best Practices. The one topic in the presentation which gained most attention was probably PresentationModels. I would say there is not really any magic to how to use PresentationModels, but it is more down to what kind of logic you put there and how it relates to your services. The PresentationModel pattern is also independent of any framework you would put on top of Flex.

If you have an interest in presentation patterns, I would recommend to look at Paul Williams great presentation pattern blog series. He also has a series covering how to unit test the different patterns, which most developers should find interesting.

Scotch on the Rocks, day 2

Today I had the first of two presentations I will have at Scotch on the Rocks 2008, todays topic was Modularizing Flex applications – Cairngorm & Modules. It was good to see so many Coldfusion ( and Flex ) developers being interested in how to use Flex modules and Cairngorm.

Tomorrow I will present “Flex Client Architecture & Best Practices”, where topics like PresentationModel and unit testing will be covered.

As I also announced on 360|Flex Europe in Milan, Adobe Consulting will over the next few months share some of our best practices in a series of articles. A topic could be for example “Cairngorm and Modules”. Steven Webster has posted a call for topics blog post

Cairngorm Deepdive

On Wednesday I had the pleasure of presenting “Cairngorm Deepdive” at 360|Flex Europe. Thanks to
Tom and John for organizing the first 360|Flex in Europe

Presentation Cairngorm Deepdive

360|Flex Europe – Cairngorm deepdive

It is now less than 2 weeks left till 360|Flex Europe kicks off in Milan, Italy. And looking at the list of topics being presented, it’s going to be a great conference!

In my presentation – Cairngorm deepdive, I’ll be covering some of the history behind the Cairngorm Microarhitecture, how to use it on large scale projects, how to handle security, and also shed some light on the future of the framework.

There is also a second presentation covering Cairngorm, Neil Webb will present Cairngorm for beginners.

If you haven’t already signed up for the conference, you can do so here

Service Chaining in Flex

February 20th, 2008

For my latest project I’ve been working on a set of related portals with the UI written in Adobe Flex, communicating with a set of REST services. A common requirement that I’ve seen amongst these are to call a set of services at startup to load various initialization and configuration data, use that data to initialize a set of controls, and then allow the user to begin interacting with the app.

Life With ActionScript and AIR: The Command Pattern Is Your Best Friend

November 16th, 2007 / Andre de Cavaignac : On Software

I've recently started a project (top secret!) using the new Adobe Integrated Runtime (AIR), Flex and ActionScript 3.0. Coming from a .NET and WPF world. this has been a step in a very different direction. There are a lot of things I don't really love about ActionScript, however it does do its job, and the Adobe AIR deployment strategy (along with its SQLLite database) is pretty damn good. One of the first things any developer will realize when trying to build a real Rich Internet Application (RIA) in ActionScript is the lack of threading. This makes doing background tasks very difficult. ActionScript, and its class library, works largely with callback methods (either from calling setInterval, using a Timer class, calling a SQLConnection or using the HTTPService or other class to make a data call). From what I can tell, this works much like the Windows message loop, inurrupting synchronous code on your UI thread to process the callback. While this is great for simple actions (say, a UI that calls a web service or REST service ), building a background process (such as a SQL Server synchronization engine) can get complicated. Due to the number of callbacks you'll receive each time you make a request (to SQLConnection or HTTPService ), there is a great amount of complexity in writing simple procedual background processes (that don't freeze up the UI). To better handle this situation, and ensure that your discrete functions run in the proper order (for example, Authenticate -> Get Data), a command pattern in ActionScript will become your best friend. You can string together multiple callbacks, and ensure that the code for these operations stay in one logical class. Furthermore, by using a queue, you can order your commands such that they run synchronously. This provides much more flexibility than the traditional scripting approach in ActionScript. Unfortunately, I cannot currently provide code samples, as I do not want to compromise the intellectual property of my project, however, I hope that this will help you get an idea of how to best manage your code and synchronous operations in .NET. Side Note: If you're using WCF I suggest you use the Basic HTTP Binding with Flex, as FlexBuilder gets confused with .NET Web Services

“Using Adobe Flex with Rails” tutorial at RailsConf Europe

September 17th, 2007 / Borre Wessel - Flex in the enterprise

Today I’m presenting at RailsConf Europe in Berlin together with Aslak Hellesøy from Bekk Consulting. Todays tutorial is “Using Adobe Flex with Rails”, the tutorial is all about how to combine two great tools to quickly develop nice looking and compelling applications. It is really interesting to see what the Rails community is doing with BDD (Behavior-Driven Development), Aslaks second tutorial of the day, and rapid prototyping.

Both Rails and Flex are considered “best in class” when it comes to rapid development, and during todays 3.5 hour session we will show how Flex can integrate with Rails using a REST based back-end.

Presenting “Eliminate Waste in Java Development with Adobe Flex” at JavaZone

September 13th, 2007 / Borre Wessel - Flex in the enterprise

JavaZone in Oslo, Norway, is the starting point of my little conference “tour”.

Today I presented Eliminate Waste in Java Development with Adobe Flex together with Espen Dalløkken from Ezmo at JavaZone in Oslo, Norway. A short outline of the presentation on how to eliminate waste in Rich Internet Applications:

  • Remove your Java MVC; Spring MCV, WebFlow, Struts 2…
  • No MVC, less configuration and no flow configuration on server, your application is data driven, why should the server care about the flow on the client!