You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by Grzegorz Kossakowski <gk...@apache.org> on 2007/08/30 18:09:33 UTC

RIA technologies (was: Re: Wicket integration)

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.

I'm taking installation issues into consideration but if your application is worth downloading and
installing some VM people will do it. As long as it's matter of one-click installation people will
do it even if they will have to go for a five minutes break caused by download size.

In multimedia-oriented apps Flash is dominator for years now and nobody complains that Youtube
relies on Flash. If people want to watch all these movies, it's not the issue.

> If this would have been the
> case, everybody would write his applications for Flash (Flex/OpenLaszlo)
> but from my experience that's not the case (the exception are intranet
> applications but in that case you control the environment ...)

It's all happening now, there are already serious companies using Flash for developing RIA.
Polish, big company (Onet) has launched Google Maps alike site called Zumi (www.zumi.pl). You
guessed it, Zumi uses Flash instead of Ajax for their map application and you know what? I'm running
openSUSE 10.3 now and I have not even noticed they are using Flash. Only after third visit I started
to wonder how it's built and why it is loading little bit faster than Google Maps and discovered
they are using Flash...

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.

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.

WDYT?

-- 
Grzegorz Kossakowski
http://reflectingonthevicissitudes.wordpress.com/

Re: RIA technologies - which technology will "win"

Posted by Dev at weitling <de...@weitling.net>.
> Unfortunately, that is not true of all environments. Many large
> organizations such as governments and big corporations will not allow
> their users to install ANY plugins to their browsers for security
> reasons. A team of testers has to examine every piece of software
> installed on the network and approve it. Getting variances for a
> particular application is beyond most people's level of bureaucratic
> tolerance. And since providing their employees access to sites like
> Youtube is pretty low on these organizations' radar, a Flash player is
> not something that it is easy to get passed as an accepted piece of
> software unless they have purchased other software that requires it.
> And THAT is unlikely because developing software for large
> organizations that requires Flash causes this major friction point for
> sales. For Flash, it is a vicious circle.
>
> Given how much development is paid for by large organizations, I think
> it unlikely any RIA technology will become dominant unless it is
> embedded in something else. That means SilverLight embedded in the
> browser with the most market share; JavaFX embedded in the JRE since
> many of these organizations see Java as mission critical; or Ajax,
> support for which is already embedded into existing browsers. Of
> these, Ajax is the only technology that is currently generally
> available within these large organizations.
>
> Just thought I'd offer another perspective.

Full ack. And some other points:
- Flash is proprietary. I don't complain about the "Flash isn't OS
issue" but it introduces dependencies we should avoid.
- As with better javascript interpreters (as shall come with new
Firefox) rendering time shall increase. BTW: 300 ms on client side is no
problem. If it slowed down every request on server it would be...
- IIRC Flash started as interpreted, too. Java is kind of interpreted.
Both are (partially) precompiled. Why shouldn't javascript go the same way?
- With the current Ajax/CForms solution we have a fallback option for
non javascript-capable browsers and even for non HTML. Cocoon is still
an XML-publishing-system so we are neither bound to HTML/browsers nor
HTTP (what about the refactorings of that ServletRequest thingie?)

Just my four dashes...
Florian

RIA technologies - which technology will "win"

Posted by Bruce Atherton <br...@callenish.com>.
Unfortunately, that is not true of all environments. Many large 
organizations such as governments and big corporations will not allow 
their users to install ANY plugins to their browsers for security 
reasons. A team of testers has to examine every piece of software 
installed on the network and approve it. Getting variances for a 
particular application is beyond most people's level of bureaucratic 
tolerance. And since providing their employees access to sites like 
Youtube is pretty low on these organizations' radar, a Flash player is 
not something that it is easy to get passed as an accepted piece of 
software unless they have purchased other software that requires it. And 
THAT is unlikely because developing software for large organizations 
that requires Flash causes this major friction point for sales. For 
Flash, it is a vicious circle.

Given how much development is paid for by large organizations, I think 
it unlikely any RIA technology will become dominant unless it is 
embedded in something else. That means SilverLight embedded in the 
browser with the most market share; JavaFX embedded in the JRE since 
many of these organizations see Java as mission critical; or Ajax, 
support for which is already embedded into existing browsers. Of these, 
Ajax is the only technology that is currently generally available within 
these large organizations.

Just thought I'd offer another perspective.

Grzegorz Kossakowski wrote:
> I'm taking installation issues into consideration but if your application is worth downloading and
> installing some VM people will do it. As long as it's matter of one-click installation people will
> do it even if they will have to go for a five minutes break caused by download size.
>   

Re: RIA technologies

Posted by Peter Hunsberger <pe...@gmail.com>.
On 8/30/07, Leszek Gawron <lg...@mobilebox.pl> wrote:
>
> Client side javascript has exactly the same problem our flowscript has:
<snip/>
>    - debug tools are: print( "here I am" ) and nothing more (apart from
> GWT which uses 'advanced magic').
>

Not quite: Firebug for FireFox is wonderful for debugging AJAX code.
Let's you see the request the response, the current value of any form
field, etc.

FWIW, we have replaced all of our front end code that previously used
Flash with AJAX code, the developers are more productive and the
results are more esthetically pleasing.  I personally feel that there
are major advances to be made on front end scripting, but the current
crop of AJAX tools are a major leap forward from anything else we've
had available for complex cross browser UI functionality in the last
10 years.

-- 
Peter Hunsberger

Re: RIA technologies

Posted by Grzegorz Kossakowski <gk...@apache.org>.
Leszek Gawron pisze:
> 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 :)

:-)

> 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.

I can imagine that!

> 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.

What about JavaFX again? Sun promises that it cares about mobile from the beginning.

>   - you introduce client/server again so you need to
> create/test/maintain your communication protocol. Another layer to handle.

What do you mean by introduce "client/server again"? Don't we have client-server communication all
the time?

>   - 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).

When talking about RIAs I'm having ROA in mind not business objects. Nevertheless, usually there is
1-1 mapping between business objects and resources (in ROA sense) to some extent. What's important
with ROA is that you send links to other resources and don't even try to send every needed piece of
data in one request. It's called connectedness of resources and it's actually one of important
characteristic of good ROA.
I have written something about it in this[1] e-mail.

[1] http://www.mail-archive.com/dev@cocoon.apache.org/msg53155.html

-- 
Grzegorz Kossakowski
http://reflectingonthevicissitudes.wordpress.com/

Re: RIA technologies

Posted by Leszek Gawron <lg...@mobilebox.pl>.
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.