Idealism is what precedes experience; cynicism is what follows...

Wednesday, May 28, 2008

Adobe Air : OnAIR Tour Stockholm (0)

The Adobe AIR team visits Stockholm in Sweden next month. Unfortunately the registrees have already reached capacity.

Several of the other stops on the tour is still open for signup, so dont hesitate to consider going to either Berlin or London if your in the area.

Check it out...

Friday, May 23, 2008

PureMVC : Pipes and intermodular communications

The PureMVC team (Read 'Cliff Hall') has been working this week on a new utility called Pipes. Its being unit tested right now and they expect to put up a demo soon.
Pipes will henceforth be the main way that modules communicate without having references to each other or sharing a Facade... very cool stuff.

Check it out...


Pretty printed source

Tuesday, May 20, 2008

PureMVC & Cairngorm (1)

We have recently been blessed with a couple of very skilled PureMVC oriented developers. Seeing that we have traditionally been a distinctive Cairngorm company, this was naturally an issue we needed to address... however, upon considering the options we came to the conclusion that there were no apparent reasons why our specific implementation of the Cairngorm framework could not coexist happily side-by-side with PureMVC. A number of apparent conflicts based on the various singleton's would have to be solved, but seeing that we have abandoned the singleton FrontController's and ModelLocator's in both frameworks all we had to do was to hook the PureMVC Facade and our custom Cairngorm EventBroadcaster together so our events being dispatched in one place will be delegated to the other place.
What we eventually end up with is a Hybrid which is based on Cairngorm but 100% faciliates PureMVC-based code and it seems to work without any major issues.

This is the first of what will become a number of posts I will be making about our experiences in taking a 1300+ Class large system based on Cairngorm and adding PureMVC to it.

Sunday, May 11, 2008

Control Creation : In Markup or Code ?

While it is possible to create all your controls and objects in code, best practices dictate that it is usually better to do so in markup. The most compelling reason is that markup is highly “toolable” – that is, it lends itself to round-trip modification in tools such as Adobe Flex Builder and MS Visual Studio / Expression and thus is easier to scale, modify and maintain.

EventHandlers / EventListeners : Where, inline or code ?

I admit it, I have a strong preference for declaring all event handlers/listeners in code. I believe it is better encapsulation, making for more scalable and more maintainable code. But this is a personal opinion.

Silverlight 2 : Attached Properties

Attached Properties are an effective and quite neat way obtaining flexibility without sacrificing any means on encapsulation. Attached Properties are the ability for a nested control in a layout control to use the layout control's property from within a control, this is referred to as an Attached Property. For example, the Button object might use the Attached Property Canvas.Left to position itself with respect to the left border of a surrounding canvas.

Jesse Liberty's rules for examples...

Reading about Silverlight 2, I stumpled upon Jesse Liverty's rules for examples, they are simple and almost universal...

Judge for yourself...

1. Keep it simple enough that the example totally focuses on what you are trying to illustrate (but no simpler)

2. Try to use something like business objects rather than cute animals or game objects

3. Don’t show off how clever you are, break the code down into small digestible parts.

4. Use interim variables; they’re easier to catch in a debugger

5. Strip away all exception and error handling and bullet proofing unless you are teaching exception handling, error handling or bullet proofing.

6. Use great variable names so you need fewer comments, but don’t convince yourself that means you don’t need any.

7. Show the output

8. Make no apologies (except when you’re wrong)

Thanks, Jesse... for letting us laymen get access to some of the experience you have gained from writing those 10+ technical books about programming :)

Saturday, May 10, 2008

PaperVision3D : Now in Stockholm

For all us fans in Scandinavia of the Papervision3D API, there are great news in the immediate future.
It appears that PV3D major contributor Ralph Hauwert is having a course in Stocktown on June 12th thi year.

Check it out:

Innovation Peak, when ?

According to Watts Humphrey in his work called "Managing for Innovation" the innovative peak for engineers and scientists occurs two times in a life time.
The first peak happens in the early twenties, which is not much of a surprise as its common knowledge, however there exist a common belief that once innovative skills decrease over the years which W. Humphrey seems to disprove.
It appears that the decrease over the years are less significant than most think. And as an encouraging thought for the seniors out there, it appears that a second and much later peak occurs in the mid- to late-50s. He claims directly that this double-peak occurs among all the groups of engineers and scientists and that the dip in between is not very significant.
He continues to argue that the late 30s and early 40s is a highly stressfull period, but once creative people pass this hurdle, they will continue their creative work for many years... he sums it by pointing to an all american icon, Edison, seeing that many of Edison's 1.100 inventions were produced later in his 84-year life.

Good news for us that intend to stay in the creative and innovative part of the software industry for many years.

Tuesday, May 06, 2008

HCI : Morphable Interfaces introduces new challenges

Lately I have been working on a number of applications where the requirements to the UI has been quite extensive. The paradigm of UI in RIA's are now getting more and more well-understood among the GFX departments, XD departments, IA departments, etc. and this has triggered something resembling a revolution in advanced UI's.
Among one of the new paradigms is the morphable interface where no elements are static in their representation, but on the contrary have many different and often incoherent states.
I have chosen the wording "morphable interface" as all elements now have many representations all depending on the overall state of the application combined with the fact that movement now has taken a new position as it now is used to communicate the change of state: hence the Adobe coined slogan, "movement matters".

Having many different incoherent application-states with an equivalent set of elements combined with an effect being played while transitioning between two states defines a morphable interface.

My Network