I worked briefly with a project that used GWT (we of course ultimately
rewrote the whole thing in pylons) for some portions of a web based
administration tool.   The components were incredibly simple table
controls displaying database data.   There were two dozen GWT-derived
source files used to generate about four different data views that all
looked nearly alike, multiple compilers and two separate build.xml
files existed to compile the full application (gwt has its own
compiler separate from javac), and there were skeletons, stubs and all
kinds of translation/glue code all over the place.   On the view side
there was nothing about these components that you wouldn't have seen
from a perl CGI script 10 years ago - they were just flat tables of
data, no interactivity beyond "previous page/next page".   The usage
of GWT was obviously selected out of a vague sense of "doing things
the 'right' way" without the benefit of actual experience in doing
things at all.

These small table controls took more than a full second to render just
20 or 30 rows of data, and I assumed that the underlying SQL and
database was the reason.

Not so at all.   Removing the usage of GWT and replacing with a simple
ajax call to a struts action which rendered inline HTML directly from
a jsp page, with all other factors remaining in place including the
same database code and database (remember we're still in java), the
components rendered about 50 times faster.   The size of the code base
shrunk by about 24 source files, one less build.xml file, and several
hundred class files (their build process was multiplying the full set
of GWT classes in multiple locations for some reason, which I suspect
was not a GWT-specific issue).

To see why a straight ajax call to a JSP page to a struts action to
some hibernate code might be 50x faster than a GWT interface to a GWT-
enabled servlet to the same hibernate code,  the next time you build a
small GWT application, use firebug to look at the XMLHttpRequest calls
being sent over the wire.     The messages are more bloated than
Google's stock price two years ago and more inscrutable than Peter
Norvig's PHD dissertation.

Remember, the "enterprise" way of thinking is what's brought us the
economic disaster, vast ponzi schemes where everyone looks the other
way, etc.  I.e. "seems to work for now so fuck it".

On Jan 30, 4:04 am, Tycon <[email protected]> wrote:
> I heard that many "enterprise" web applications use tomcat (and Google
> Web Toolkit to create the client side javascript code).
> What are the advantages of using a framework like Pylons (or Django,
> Rails, etc) compared to using Java framworks ?
> Why can't the Java framwork be used for non-enterpise web site apps ?
>
> Java has a performance advantage over Python (and Ruby), but I guess
> the down side is that it's not as "agile" for rapid development ?
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/pylons-discuss?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to