Grzegorz Kossakowski wrote:
Reinhard Poetz pisze:
Technologies for RIA that run within browsers have been around for years
- do you remember, there was something called "Java applets" long time
ago ;-) - but I think that none of them will become the dominator for
public internet applications because nobody wants to rely on something
which needs to be installed by the user.
Applets had been promoted before Web2.0 term has been coined and, most
importantly, applets were
utterly slow and ugly looking. There were no tools for designers that could
experiment with making
good looking UI for their own as it's today in Ajax or Flash applications.
Ajax is not the Ferrari either. I started to dislike cForms when dojo
was introduced as main ajax engine. The simplest page with cForm takes
300ms more to render than before. Awful...
As for the tools: there are no ajax tools available either. A JS syntax
enabled editor can be hardly called tool support :)
Once again, risk of forcing user to do one-click installation of Flash is not
an issue today.
In contrast, Ajax frameworks run in every modern browser (IE>=6, FF,
Safari) and modern Ajax frameworks (prototype, mootools, dojo, jQuery,
etc.) are really impressive.
Yes, the progress is spectacular but I'm still feeling all these framework are
fighting too much
issues and contain too much hacks. Last time I had to work with Dojo was my
Forms refactoring and I
remember that debugging Dojo was very painful experience. I hope situation
improved since then.
Client side javascript has exactly the same problem our flowscript has:
- you cannot tell if it's gonna work if you do not run it
- you have hard time creating test cases
- any refactoring is a major PITA.
- debug tools are: print( "here I am" ) and nothing more (apart from
GWT which uses 'advanced magic').
What I'm also concerned about is that if anyone takes into consideration
long-term future of Ajax
and it's ability to innovate. We have been already surprised by what Ajax gurus
can achieve but I
fear that there is a wall somewhere and with sign "Internet Explorer" painted.
Since Microsoft puts
a lot of effort into their own RIA technology I hardly see a reason why they
would want to put
innovation into their browser.
Other reasons why RIA does not work for me:
- try running it on any modern Smartphone and you'll fail miserably.
Only iPhone has a decent web browser.
- you introduce client/server again so you need to
create/test/maintain your communication protocol. Another layer to handle.
- If you are sending your business objects over the wire you have to
serialize them (introduce value objects again) and loose lots of ORM
support (old problem with serializing referenced entities and lazy
loaded collections).
lg
--
Leszek Gawron http://www.mobilebox.pl/krs.html
CTO at MobileBox Ltd.