Flex vs Silverlight vs AJAX vs JavaFX

15 01 2009

Yesterday, I was having this interesting conversation with a couple of  friends regarding which technology will rule the RIA space in the future. I believe, there’s room for all four of these as per my observations and experience. In fact, all these will have a separate domain and overlap at only few places. For example, AJAX is widely popular for creating community building apps,  portals, mashups, and so on. Flex is used for multimedia rich requirements, for example, interactive maps, photo albums, portfolios, games, product websites, etc. Silverlight is a direct competition here but might have more presence in the Enterprise apps market.

Flex has an advantage of running on the Flash platform which has a very wide reach on the internet and an integrated support from other Adobe products such as Photoshop, Flash, Illustrator, Fireworks, After Effects and some upcoming products – Catalyst, Thermo, Cocomo, and more. These are industry leading tools that help in building visually rich images, animations, and videos. AIR version adds value by having a desktop version of an app that is integrated with the online one.

Silverlight has the benefit of a huge community of .Net developers who will not need to learn anything new from scratch and utilize the huge libraries of .Net components available in the framework. It has a seamless integration between desktop and online version as well. Because of this, building enterprise applications will be the area in which Silverlight might edge over others.

AJAX, ofcourse, has two big advantages which has no competition as of now. These are – no plugin required and SEO enabled. That’s why apps like eBay, Amazon, MySpace, Blogs, and many more will continue to be largely based on AJAX with a few widgets/components built on either of the other three technologies.

JavaFX, is a late entry into this domain, although it all started with a Java product only i.e. Applet. Java enthusiasts will definitely lap onto this. It just remains to be seen what kind of value add JavaFX will bring over others. You never know, since it’s Java, the most reliable internet technology when it comes to providing security to user’s data.

There can, maybe, a scenario where a single app (for example eBay) utilizing all the four technologies for its different features.

So, whatever may happen, it’s the user who will benefit the most with a wide array of technologies to choose from. For developers, it will be important to specialize in one and at least have a good understanding of the rest to provide the best solution to a customer.


Adobe Flash Catalyst – Coming Soon

6 12 2008

One grievance that Flash designers have about the evolution of Flash IDE is that it has become more developer oriented than (as originally intended) designer friendly. Earlier designers could easily add interactivity using the menu driven coding. The Expert Mode for the code editor was a secondary option (Flash 4 and 5 .)

Well, Adobe is certainly an organization which is very sensitive towards its core customers (i.e. designers.) and have announced a new product called Adobe Flash Catalyst (earlier codenamed Thermo.) Catalyst is a tool targetted for designers who want to add interactivity to their design. The result is that we can create a UI in Catalyst and then just convert graphics into dynamic content by selecting objects and specifying actions from menus. No coding required. Output the file as a SWF or AIR. You can easily build a RIA prototype.

Catalyst will be launched very soon. Read more about it here…


Cocomo – “Social Networking Mojo” for Flex

20 11 2008



The most popular aspect of Web 2.0 today is social networking websites like Facebook, MySpace, Twitter, etc. Adobe has started a new initiative to add power to the Flex platform for building social networking websites – it is codenamed “Cocomo”.


“Add social features to your existing Flex apps or build totally new ones, such as real-time productivity/collaboration apps, multiplayer games, and audio/video chat.

Features of the Cocomo beta include the following:

  • VoIP Audio
  • Webcam Video
  • Chat
  • Multi-User Whiteboards
  • Real-Time File Sharing
  • User Management
  • Roles and Permissions
  • Robust Data Messaging

– Adobe”

Check it out here…


Flex AMF3

30 10 2008

Here’s a very interesting app made by James Ward for comparing the performances of different web technologies for building RIAs – Flex & AMF3, AJAX & XML, AJAX & JSON, and so on. You select a technology pair and click Execute. The command will fetch 5000 rows from a database and show the proformance results in terms of server execution time, transfer time, and so on.


Of all the technology pairs listed in this app, I’ve used Flex XML AS, Flex XML E4X, and Flex AMF3. Out of these I’ve found Flex AMF3 very easy to use, fast, and responsive. To get started with this technology I’d recommend chapter 7 of the following book by Friends Of Ed…


My first flex app

29 10 2008

Since the beginning of my career I’ve experienced that the best way to learn a new technology is to first go thru some of the tutorials and documentation. Then apply the little knowledge you have gathered and build something – maximum learning happens on the job.

So, I’ve built this little web app using Flex, PHP, and MySQL. It’s is a community building app for environmentally conscious people.  I’ve also implemented the Cairngorm framework here. Using a MVC framework in your Flex app has a lot of advantage. It separates the 3 layers – model, GUI, and business logic and helps streamline the development process. Saves a lot of time in the long run and reduces margin of error.

Check out Let’s Go Green

Let's Go Green

Let's Go Green

P.S. This is in beta stage.

Flex – getting started!!

24 10 2008

For some time now, I’ve really got hooked to Adobe Flex wich is a RIA authoring technology framework based on Flash player from Adobe. Being a Flash developer for past 6 years, this product came as a big shot in the arm for Flash developers like me. After going through some documentation and playing around with some of the components, I realised this is a big productivity booster over building an app in Flash.

To come up the learning curve, I’d recommend going through the Flex documentation and/or this ebook…