Another battle of platforms is upon us! Unfortunately this platform battle suffers from the ills of the past battles like the OS wars, Browser wars, Web video wars, HighDef format wars and the brewing Mobile OS wars.
Here are some of the keys to longevity in a platform battle.
- Developers/Content Creators are the engine that makes all this go. If your platform doesn’t make it easy to create AND deploy, it’s not going to win.
- JavaFX doesn’t deploy to LINUX. This is insane when you think about it. Sun, an open source embracing company, plopped out a platform that won’t work for the platform a TON of java developers primarily use makes no sense.
- WPF is windows only whereas Silverlight mostly works everywhere, but the tools that make it easy to create apps are windows only and they are expensive. Expression studio is great and it would be very competitive on Mac and Linux. Probably more annoying than anything is that Silverlight still uses Windows Media for video, which really is only good on Windows and its not possible to create high quality WMV on anything other than windows.
- AIR can be built on any platform with FlexBuilder, which is based on eclipse. The windows and mac versions of FlexBuilder are better, but the linux one does ok. Flash technology is ubiquitous and in version 10, so it’s well tested on all platforms
- Successful platforms minimize user headaches in installing and/or using developed apps
- JavaFX uses web start and all the other painful applet like launching experiences. i.e. it’s clunky. There are so many prompts to users and potential non starters making it very difficult to get a consistent install experience.
- WPF is embedded in vista, not available elsewhere. Silverlight is one of the easiest Microsoft deployments. No complaint there. it actually works.
- AIR and Flash have some weirdness with upgrade prompts and security issues at times. Generally it’s easy.
- Branding matters
- JavaFX? We’ll see on this. I personally think the Java is something that people either love or hate. Keeping Java in the name is going to hurt adoption because the haters aren’t going to go near it. Also, names like “FX” are pretty lame and non descript.
- WPF is lame. Luckily end users never interact with the name. Silverlight – it’s fine. No one knows what it means, which is probably just as well so that people don’t hate it just because it’s .NET or Microsoft.
- AIR – Not bad. Though, people still call anything flash related as “flash”.
- Oh, yeah, the technology is the most important thing!
- JavaFX. Based on my early tinkering and viewing the demos, this has some real power under the hood. It doesn’t hurt that Java has been around forever and there’s a big community and code base to repurpose. It’s likely to have more power to do bigger things natively than the other platforms, which are mostly “interface” platforms. More 3D opportunities available here.
- WPF/Silverlight. There is some power behind silverlight and the .NET backbone. Flex and Silverlight are very similar, so I’m not sure Silverlight has any technology that makes it standout against AIR. If you use WPF on Windows you get the backend to do anything.
- AIR. We know what we get with AIR. It’s a good interface and small game making platform. You’re not going to put tons of 3D into air without specialized libraries nor are you going to do a lot of data crunching. One of the most impressive AIR apps out there is the DirecTV NFL Superpass. It shows up some real cool technology and it doesn’t hose your system. The Flash engine is ridiculously small for what it does. The coming inclusion to embed C code may make this one killer engine.
This platform battle is somewhat odd in my opinion.
As a web developer (mostly), I’m unlikely to abandon the browser to produce a Rich Internet Application. It’s too much work for most projects and I don’t get any of the benefits of having it run in a browser (don’t have to worry about the OS or installs, etc. etc).
For any desktop apps I have to build, I’d rather just use the target platforms native toolset. The write once, run everywhere approach just doesn’t work. Not even with web server back ends. I’ve tried it many times. Unfortunately there’s always some gotcha.
I suppose the RIA concept could replace other ways of building interfaces for desktop applications. Like most web tech things though, it appears the Ad Agencies use the RIA concept more than any serious development shop.
What are you using for your RIA development? Are you doing RIA at all?
Lemmeknow.
Thanks for the informative article!
I’m not doing any RIA development, just researching.
After a few years of development with Delphi , I’m now very carefully choosing my future development platform. It would be too sad seeing AIR, Silverlight or JavaFX facing the fate of Delphi. Web is based on open and quickly evolving standards, that won’t end up in stagnation. And one cannot be so sure about mentioned RIA platforms…
Delphi’s not dead yet! It has many modern implementations and is still being used in many shops.
I wouldn’t migrate to any particular RIA. I would learn the basics of the paradigm and these are the same as Web Services and AJAX, the cool hip words before RIA.
Yes, but it’s already a laggard/imitator. FreePascal/Lazarus are behind even more, except being cross-platform. I do appreciate the developers’ efforts, however.
Thanks for the tip. I wasn’t going to look into RIA until I have a strong AJAX understanding anyway.
Based on these important concerns you highlighted, thought you’d like to hear about an open source alternative to AIR. We just launched a preview release of Titanium – it’s built on top of open source technologies like Webkit and Google Gears, and allows developers to build rich desktop apps using standard web technologies like HTML, CSS, and Javascript, as well as Flash and Silverlight. Titanium runs on Windows and Mac, and will run on Linux starting in January.
You can check it out here: http://titaniumapp.com
David at Appcelerator
David,
Thanks for the info. I downloaded and am playing with the PR1 release now.
I’ll let you know how it goes.
How does this compete and compare to OpenLazlo, in your opinion?
I left that out of my list only because so few people get it and its more of a “meta” platform sorta like what Titanium app sounds like.
[…] 9, 2008 by un1crom Well, I got a comment on my last RIA post and saw the news on techcrunch that the RIA platform space just got a little more […]
> JavaFX doesn’t deploy to LINUX
In one of the December Java Posse podcasts, there was some surprise from the windows users that the linux and mac users were able to get JavaFX running.
Just not accelerated yet from what I remember.
I think this battle actually helps developers. I use AIR and I love it (I actually build a serious program with AIR, Peaya Paper) — but there are some obvious feature AIR should include but not (such as launch native application, multi thread etc). Hopefully this competition will make Adobe do what is good for developers.