Tuesday, February 16, 2010

Karaoke - Bade Achche Lagte Hai

For long I have been searching the karaoke version of this song. Finally, here's the link to
Bade Achche Lagte Hain – Amit Kumar – SD Burman – BALIKA BADHU.

Friday, February 5, 2010

Flash as a UI: Integration with HDP Applications

As posted earlier, here is an application of the flash Dial component used from within a C# app. During this exercise, I have learnt a few good things. Flash can easily be used as a front end for a traditional application written in .NET or Java.

Flash, over the years have mastered the art of screen displaying content. It has excellent layout placement, UI precision as well as rendering capabilities. This, along with the great filters makes it a ideal for UI. On the other hand, languages like C#, VB, VB6 and Java are very strong from programming point of view. Memory handling, disk and shell interaction, interaction with the OS and now more recently web services are better handled by heavy duty developer platforms (HDP). But the HDP have always lacked (though we have probably not acknowledged) pretty graphical UI. A complex user interface does not have to, NOT look "chick".

The midway, Flash UI for a HDP App, has a lot of potential in store. A probable contender is AIR, but would lose out owing to the fact that legacy applications are still on the HDP (the developers lobby!). Also, AIR may be (at least initially) viewed as, not sturdy enough for HD applications. Lets look at the "Flash UI for a HDP App" approach.

The problem has always been the interaction of the HDP with flash. The common (unwilling crime) has been taking the "SetVariable" route. Here we update a variable from outside Flash and wait for it to detect the change asynchronously. The "ChangeVariable event is fired and all the processing is done within Flash without an active feedback back to the HDP app. This seems more of a HACK rather than a solution.



Long awaited, there is now a mechanism to run an operation synchronously from a HDP app to flash and back. It is done through "ExternalInterface" and can be smoothly called from HDP as well as javascript.


- or -


Here is an example created to demonstrate the above in .NET using an earlier created Flash component. Google out "ExternalInterface Flash Samples" for understanding the concept.


Another big advantage of using a Flash UI is, that it is usable both in desktop applications as well as web app. You develop a single UI... and it is deployable both on desktop and web; and looks and interacts exactly the same way. Sometime back, I came across a paper (pdf report) done around this area (citation invited)(* updated below) that talks about Flash as a front end. Go ahead, indulge... You can even afford to keep f-in-box aside and start on your own!

To sum up, Flash needs to be seriously tried as a front-end for complex, enterprise "user interaction intensive" applications like ERP, industrial automation, simulation, etc. I foresee frameworks, interface layers and design templates in the Open Source being developed to support and enhance such initiatives. A Flash UI could give a product company that small winning oomph over competition.

*Updated on 10th Feb 2010: Here is the pdf mentioned in the post above. It was a March 2003 paper taking about "Macromedia Flash and VB: A Potent Combination".