Wednesday, March 19, 2008

Flex Builder

Adobe recently released Flex 3 with some interesting twists:
- Flex 3 SDK itself has been open sourced and is also free.
- FlexBuilder (the eclipse based IDE) is not free and comes in 2 flavors: Standard and Professional.

The standard version costs $249 (reasonable) but the Professional version costs significantly more $699 ($450 more than the standard version!!). The Professional version gets you the features from the standard version, along with the datagrid and charting components for data visualization, plus the testing and profiling tools.

I like that the Flex SDK has been open sourced. Adobe is definitely embracing the developer community and will certainly reap the rewards. However, I don't agree with how Adobe has bundled features (components and controls) along with the profiling and testing tools into a single product. Why should I have to buy the profiling and testing tools if I just want to use the controls? I understand that the richer controls are more complex and therefore should be priced more but why couldn't they give me just the data visualization controls for an additional $99 instead of having to pay $450 more for the tools I am not going to need? In this day and age when the industry is talking SAAS and paying by the feature, this is clearly a setback.

BTW, Flex Builder for Linux is on a different schedule and track and is still in alpha but (thankfully) is available as public alpha at Adobe Labs. No word on how they are going to price this yet.

Tuesday, March 18, 2008

YUI overlays on Flash under Firefox/Linux

I recently ran into a known problem of not being able to overlay DHTML on top of a Flash object in a web page. This problem was fixed in the flash player by the introduction of the window mode (wmode) which is described in detail here. The fix involves changes to both the flash player and the browser. However, this fix is currently not available in firefox on linux - the environment I am currently using and the one I need to support.

One of the ways to work around this is by placing the div on top of an iframe in the z-index order and keeping z-index of the iframe positive. This is illustrated in this example here. Use view source to take a look at the source.

The same idea and concept has been implemented nicely in YUI toolkit's Overlay widget.

This example does not work properly in firefox on Linux when there is a flash movie under the calendar widget (when the button is clicked, the calendar does not overlay on top of the movie but goes under the movie instead).

I was able to add the following methods in the YAHOO.util.Event.onDOMReady method of this example (after the call to calendar.rende()) to fix this issue
oCalendarMenu.cfg.setProperty("iframe", true);
oCalendarMenu.cfg.setProperty("zIndex", 10);
oCalendarMenu.stackIframe();
oCalendarMenu.showIframe();

These methods (plus more) essentially let one control the iframe that is dynamically created inside the overlay widget at any specified z-index.
Sweet!

Hello World

Ok. So this is my first post... hence the title!

So, why start now?

One of the reasons being that blogging has clearly emerged as one of the most efficient ways to share knowledge, wisdom, experiences and opinions and therefore to give back to the community.

During the last several years, we all have witnessed fundamental changes that the search engines have brought to the way we all look for and consume information on the internet. I've been mostly on the consuming end in this ecosystem, and must say have been feeling somewhat guilty lately. Furthermore, like Avinash Kaushik (a must read blogger btw if you are into web analytics), I hope to follow one of Guy Kawasaki's principles: "Eat like a bird, and poop like an elephant".

Some of the guidelines that I've promised myself include:
  • These posts must provide some value to someone. So no "I walked my dog last night" types of posts (they belong on twitter).
  • These posts must not simply be links to other articles and to the other posts elsewhere. They must have their own value (with possible references to other relevant articles of course).
These posts are mostly going to be about software and programming and about technologies, tech companies and such topics. The focus might shift at times, as I dabble into other areas or may have something interesting to say about something else. I'll be "tagging" these posts appropriately in order to categorize them into these areas.

Hope you all will enjoy and benefit from these as I have from several of yours.