Why things get hyped too much?

Things like AJAX, Web 2.0 etc get so much hyped? Aren't these better way of solving some existing issues. The way different sorting algorithms, network algorithms did. They way GUI(graphical user interface) replaced CLI(command line interface) years ago. The way bandwidth increase/Internet connectivity solved some existing problems (slow videos, less rich websites, slow access to information) etc..
Is it because now we have better Internet, information spreads faster than ever? I think, It's good but sometimes it's not so good.
Just some thoughts, an era of information overloading has started. Most of time, we are just reading same information over and over without much value added, just locations of content keep changing from one blog(site) to another.

Philip on Progressive Enhancement

If you are AJAX, Javascript or Web Developer, you should look at the posts of Philip. Quite interesting stuff.

BarCamp in Delhi

Jonathan Boutelle and some other folks(Amit, Gaurav, Manik) are organising a BarCamp in Delhi, venue is Adobe office, Noida. The scheduled date for this event is March 4th, 2006.
The topic would be "Next generation internet: Web 2.0, mobile applications, and other cool stuff".
Check out Jon's blog to know more about this event and about BarCamp.
If you are around Delhi, you should try to attend it. Unfortunately, I would not be able to attend, wish I could.

How to Speed Up Flash 8's ExternalInterface

Brad Neuberg talks about speeding up ExternalInterface in Flash Player 8. Quite interesting post.
Link: How to Speed Up Flash 8's ExternalInterface

Using VideoDisplay with live streams

You can use VideoDisplay with live streams from Flash Communication/Media Server using following code.

  • Create a directory called "flex_live_streaming" in C:\Program Files\Macromedia\Flash Media Server 2\applications\
  • Place main.asc inside "flex_live_streaming" or "flex_live_streaming\scripts" directory. See detailed instructions.

import NetConnectionClient;
private var nc:NetConnection;
private var camera:Camera;
private var microphone:Microphone;
private	var ns:NetStream;
private function initApp():void
camera = Camera.getCamera();
microphone = Microphone.getMicrophone();
private function publish():void
var streamName:String = "live_stream";
nc = new NetConnection();
//object where callbacks are defined.
nc.client = new NetConnectionClient();
ns = new NetStream(nc);
//subscribe to live stream, by assigning the RTMP url to VideoDisplay.
videoDisplay.url = "rtmp://localhost/flex_live_streaming/" + streamName;


public class NetConnectionClient
public function NetConnectionClient()
public function onBWDone(... rest):void
public function onBWCheck(... rest):uint
//have to return something, so returning anything :)
return 0;

If you notice the highlighted NetConnectionClient class in mxml code. Why do we need it?
We need it because main.asc invokes some functions(onBWCheck, onBWDone etc) on NetConnection.client while doing bandwidth-detection. If your NetConnection instance is missing these callback functions, you won't be able to publish/subscribe streams. It works fine with VideoDisplay because VideoDisplay seems to be having those functions defined.
If you are using Macromedia Flash Player's NetConnection and VideoDisplay together in your Flex application, you need to have those callback functions defined on NetConnection's instance, as shown above.
Note: This is workaround for current version(Beta 1) of VideoDisplay. Adobe Flex framework is still under development, so things might change later.
Hopefully we don't need any workaround. I wish, if there is a class in Flex framework which encapsulates NetConnection and all these callback so we can use it instead of using NetConnection.

Yahoo! releases User Interface library

Yahoo! has released it's User Interface library and Design Pattern library under an Open-Source license(BSD). I believe, Yahoo! has been using these internally but now they made it public.
I have had a chance to look at UI library which consists of utility classes and widgets(ui controls). Things like Drag-Drop, Custom Event, AJAX handling etc are so cool to use; few lines of code and you are done. Similarly, widgets like Tree, Slider, Calendar are also very easy to use...
If you are into eLearning domain, you would love this cross-browser library to make eLearning interaction. Which require drag-drop, animation etc.
If you are into RIA development and looking for AJAX as an option, you should look at the Connection Manager along with other classes.
Update: You can also look at Y! UI Blog.

I have joined Yahoo!

I posted about my last day in Adobe but didn't mention where I would be joining. So just wanted to let everyone know that I have joined Yahoo! Bangalore as Web Developer.
I hope, I would learn lots of things in Yahoo! and would do some cool projects. I would post more when I learn or do something new.

Good move by Adobe: Free Flex Framework SDK and Flex Enterprise Services

I am bit late to blog about the announcement that Adobe has made about free Adobe Flex framework SDK and FES . But I wanted to express what I feel about this announcement.
I think, this is another great move by Adobe after labs announcement.

  • It would make many more developers to join the gang of Flex developers.
  • It would hopefully take down some traffic on flexcoders. And people would now ask better/non-repeat/tough questions.
  • It would help Flex developers to come up with great components/applications based on Flex framework.
  • It would certainly make Adobe more respectable among Open-Source community. I know, this announcement is not about making code Open-Source but people, who like to dig into source code, would love this announcement.
  • It would allow developers to learn about different patterns and techniques used to make this awesome framework/ui-toolkit.
  • Developers would be able to suggest better techniques/algorithm. It would help Adobe to make Flex framework more stable and mature.

I think, there would be some limitations in free FES, you can read details on Mark Anders' blog.

My last day in Adobe (Macromedia)

Today is my last day in Adobe. It has been a wonderful time working here among great people. I have learnt so much about product development, quality assurance and many more things.

I met people and worked with them, whom I always wanted to see, talk to. People, who have been a source of inspiration for me. I worked in a company which made Macromedia Flash Player and ActionScript, my love :)

It's mixed feeling today, I am sad and emotional because I would miss a great company with great culture, people/friends in Macromedia and many other things which I would probably realize after sometime. But at the same time I am excited about future.

I would like to thank everyone inside Adobe(Macromedia) and outside, who have helped me and supported me to do my work well. I hope to keep working with Adobe Flex/Flash/ActionScript in future with same passion and enthusiasm.

I also hope to be on flexcoders and other mailing-lists. I also wish, I blog some interesting and useful stuff more often, I know this has been my wish for a long time but somehow not able to do :(

The World is Flat

Thomas Friedman says that in his book The World is Flat. I am reading this book these days. This book is interesting because it talks about the globalized world in 21ST century.

I am learning many things about how call-centers, support-centers, banks, news-channels etc function to deliver services more efficiently than past. How people across the world work 24/7 on an average to make that possible, how technologies are making it easier and many more things.

Ok, I have started some general blogging. I think, that's another way to keep my blog up-to-date until I have some more interesting stuff to share with you all :)