Question

I am planning to build a RIA about a year from now (when my current contract ends). What technology would you recommend investing time in?

I will need good cross browser/platform support for video, music, and canvas. And ideally I would like to leverage my Python skills.

Silverlight looks interesting because I could use Python through .NET. But I'm on Linux so I'd always be a 2nd class citizen. And it has a low install base. Flash on the other hand has a large install base. And I'm not sure about JavaFX because of the Oracle deal.

Or should I hold my hopes out for HTML 5?

Thanks!

Was it helpful?

Solution

You should focus on “HTML5” where “HTML5” is the new “Ajax” buzzword aka. the “Open Web Platform”—not just the HTML 5 spec itself.

Flash, Silverlight and JavaFX are all single-vendor plug-in offerings but “HTML5” is a multi-vendor browser-native thing.

If you want to an IDE workflow, you can use the Google Web Toolkit to have a Java workflow that targets the browser-native plug-inless feature set. Unfortunately, there’s no GWT-like Python system yet.

OTHER TIPS

If you have a year to prepare I recommend that you research all the technologies you can. Build the hello worlds for the different platforms. Then build the SAME simple RIA on each candidate framework to get a good feel for the differences. Obviously you will not uncover every little gotcha, but the gross architectures and styles will be evident.

Silverlight/Flash are interesting but closed platform

openlaszlo is another RIA platform which you should consider, you write in XML/javascript and output to multiple platforms e.g. Flash/DHTML and may be more in future

another candidate is Titanium where you can use python

my personal choice would be to just use plain javascript/HTML and may be HTML5 if possible django on server side, jquery on client side

Check out Titanium while you're looking around. It's similar to AIR, and you can use your Python chops.

Otherwise, I would say go as HTML/CSS/JavaScript as you can, and use Flash for any multimedia that you can't get to work otherwise. Keep in mind that mobile web is exploding and right now Flash is not a great solution for mobile (or at least not yet).

I would recommend Flash/Flex/AIR. It would definitely gives you the most freedom to build what you want.

Flex is great for making RIAs, and now with AIR, you can now deploy to the desktop.

Here are a few links:

http://pyjs.org/ pyjs is a Rich Internet Application (RIA) Development Platform for both Web and Desktop. With pyjs you can write your JavaScript-powered web applications entirely in Python.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top