Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Google Web Toolkit Now 100% Open Source

Posted by Zonk on Tue Dec 12, 2006 01:02 PM
from the nicely-done-sirs dept.
chrisd writes "When we first released the Google Web Toolkit (GWT) we were focused on building a great tool for people to build AJAX apps with. Now, we're happy to announce that all of the GWT source code is available, including the Java to JavaScript compiler and the debugging browser, under the Apache 2.0 license. If you'd like to see how we pulled off letting you avoid dealing with nasty browser quirks, you should take a look. More importantly, we're running this like a true open source project now: we'll be developing GWT completely in the open, as per our project charter. More info on the GWT blog."
+ -
story

Related Stories

[+] Technology: Is Anyone Using the Google Web Toolkit? 470 comments
eldavojohn writes "After seeing some applications from Google and participating in the Google Codejam (which seems to be built using the GWT), I kind of expected to see websites spring up left and right based off the GWT. Well, it's been a year and a half since they open sourced it and I have to admit that I am more than a little disappointed by its low profile in the UI community. I've been trolling their blog and have seen a few books out on it. But the one thing I'm not seeing is its use outside of Google. I've worked through the examples and tutorials at home and though I've been impressed with the speed, I am disturbed by the actual result — a whole ton of generated Javascript. But this is the first UI technology I've found where I can write in the native language of the server (Java) to generate and unit-test the UI code. Aside from Google's use and the games of Ryan Dewsbury like KDice & GPokr, does anyone know of major sites using the GWT? If you don't and you've used it yourself, why isn't it taking off? Is it too immature? Is it a solution to a problem that already has too many solutions? Is it fundamentally lacking in some way?"
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • by clifgriffin (676199) on Tuesday December 12 2006, @01:08PM (#17211036) Homepage
    While I'm sure purists will decry anything that promises to automate the process, I think we need more tools like this.

    One of the problems with designing easy to use functional web applications is that the web is really structured to support it. What you end up with is a difficult balancing act with interactions between server side code, javascript, and anything else in between.

    It's nice to see Google sharing some of the tools they use because let's face it...Google's web apps (in particular gmail) are very impressive.

    • Re: (Score:2, Informative)

      That should read "the web isn't really structured"....

      Sorry.
    • by dsginter (104154) on Tuesday December 12 2006, @01:48PM (#17211590)
      While I'm sure purists will decry anything that promises to automate the process, I think we need more tools like this.

      The problem isn't that these new tools aren't useful - they are. Rather, the "purists" seem to hate it when education is made on assumptions.

      For example,

      Switching theory is considered the "calculus" of computer engineering. And like calculus, it is being dropped from many undergrad curriculum with the assumption that software can best manage this aspect of microprocessor and other digital design. Those who graduate without this knowledge are basically standing on a foundation of assumptions. This is the proverbial "box" outside of which one is supposed to think.

      The purists are just quick to point out that one should never found their decisions on assumptions. In the GWT example, the purist will quickly point out that it is safe to use, provided that the user have the knowledge to work under the hood, when necessary. In my switching theory example, what will happen to microprocessing once we are up against the very laws of physics? This will happen in the near future and those who don't know the basics will not be able to go back to them in order to move us beyond such limitations.

      Back in the '90s, when Y2K was the big worry, the FAA went to IBM for reconciliation. IBM's response?

      "We'll have to replace the whole thing. There isn't anyone left who understands the entire system."

      • by Fozzyuw (950608) on Tuesday December 12 2006, @03:18PM (#17212944)
        Switching theory is considered the "calculus" of computer engineering. And like calculus, it is being dropped from many undergrad curriculum with the assumption that software can best manage this aspect of microprocessor and other digital design.

        This has always been one of my pondering points of Star Trek. Where, in the development of the Earth, did they find the time to 'educate' students on the likes of Calculus and 'general education requirements' while also being able to teach them the intricacies of Quantum Mechanics, deflector dish re-alignment, and power coupling re-direction, all by the age of like 18 and flying around on a star ship!

        Calculus was pretty difficult enough, let alone the difficulties of studying as a teen-age when the temptations of a holo-suit are sitting in your own 'dorm'. There's enough addiction in games like WoW, I cannot imagine what it would be like on the Enterprise. =D

        Cheers,
        Fozzy

        • by s4m7 (519684) on Tuesday December 12 2006, @04:05PM (#17213686) Homepage
          Eh, no it's not. The 'box' is the set of standard notions that are currently accepted as the way to do things.

          That's what you think the box is. I think it is an actual box, located 15 miles south of Champagne, IL.

          All kidding aside, please don't legitimize corporate doublespeak buzzwords by trying to claim they have an actual definition. It's an insult to those of us who are not marketroids.

          • Re: (Score:3, Funny)

            by breadbot (147896)

            You mean Champaign [google.com], Illinois? I'm typing this from Urbana, right next door to Champaign (and just down the highway from storied Peoria), although as a child I lived in the the one and only Oblong, IL [villageofoblong.com].

            Ha! A chance to be pedantic! How often does that happen?

            Auugh! No, not the off-topic button! The Midwest really does exist! It's made of peeeeeooople!

    • Re: (Score:2, Insightful)

      by Shados (741919)
      ::nods:: Well, since the current web standards are garbage, we need to abstract it. Either through toolkits that simply replace it (Flash, WPF, etc), or stuff that, again, abstract it (OpenLazlo, GWT, and so on).

      Someday, hopefully, all this cross-browser mess will be behind us.
      • by Mad Merlin (837387) on Tuesday December 12 2006, @02:18PM (#17212024) Homepage
        Well, since the current web standards are garbage...

        No, the current web standards aren't garbage. The browsers that don't even attempt to pretend to follow the standards are garbage (I'm looking at you, IE).

        The correct solution is to rip and replace IE, not the perfectly good web standards that it ignores.

        • Re: (Score:3, Interesting)

          by Shados (741919)
          Matter of opinion i guess. Having done internal apps that had to take full advantage of "the perfectly good web standards" (thus picking a single standard compliant browser..it was internal after all), I'm not confused by the difference between Microsoft's crappy implementation, and the standards themselves.

          In my opinion (which i guess is what I had forgotten to specify), the web standards are garbage. Fully implemented or not. (And well, in some cases, IE isn't the only one to blame... Safari's javascript
      • Re: (Score:3, Informative)

        You might be interested by this project that aims to create a tool just like GWT but for Python. http://pyjamas.pyworks.org/ [pyworks.org]

        Their goal for 0.1 was all Google examples at least mostly working on Firefox and this is what they released. Their goal for 0.2 is all Google examples, completely working on all browsers.

        I wouldn't use it yet in my projects but I'll keep an eye on it. I tried GWT and despite being Java, it's very sweet. I'm eager to be able to do the same thing with python.

  • Does anybody know how to use this toolkit along with Tapestry [apache.org]? We have a couple of web apps of considerable size now, done in Tapestry, and are in the process of adding some AJAX functionality. This looks like a great alternative but the web developer told me he hasn't been able to integrate these two frameworks.
  • by namityadav (989838) on Tuesday December 12 2006, @01:11PM (#17211070)
    I mostly work on business layer / mediation tier, and have never been too good with the web tier. So GWT, at first, looked like a god-send to me. But after implementing my first GWT based test-solution, I realized that maintaining a GWT based solution will be many folds more difficult than a traditional Javascript based solution. So, my personal opinion is that although GWT is good for personal projects, it still needs to prove itself for professional development.
    • Um..correct me if I'm wrong, but doesn't Google use this to power some of their web-apps?
    • by david.given (6740) <dg@cowlarDALIk.com minus painter> on Tuesday December 12 2006, @01:40PM (#17211452) Homepage Journal

      From what I've seen, the big advantages to using GWT are:

      • You get to write your logic in a language other than Javascript --- that is, one with type safety, compile time checking, sane syntax, and a reasonably consistent implementation.
      • You get to use the same form verification logic on the client and on the server, which means you don't have to implement it twice, which makes it much harder to get it wrong.
      • You completely avoid the horrific browser inconsistencies.
      • You get a real debugger.
      • For most tasks, the pain of connecting your front end to your back end is done for you.

      I wouldn't say that GWT is a particularly nice solution to the problem --- it's doing some pretty damned foul things behind the scenes, you should look at the code it generates some time --- but it hides the foulness rather effectively. It basically lets me get the job done far more easily than I could otherwise, which makes it valuable to me.

      • Re: (Score:2, Insightful)

        by namityadav (989838)
        Well, for one, the Javascripts produced by this tool are nowhere as simple and easy to understand as the ones written by the Javascript expert (Sitting in the next cubicle) who understands the product better. And how do you debug a problem now? First you'll have to find the problem in the automatically produced Javascript, then find out how that relates to your Java files that were used to produce the Javascript. What if the tool has a bug? It'll take you a very long time realizing that. Then, most of the t
        • Debugging (Score:3, Interesting)

          by da_flo (1029770)

          And how do you debug a problem now? First you'll have to find the problem in the automatically produced Javascript, then find out how that relates to your Java files that were used to produce the Javascript. What if the tool has a bug? It'll take you a very long time realizing that.

          Well, according the the GWT website [google.com], that's not true. One of the big advantages of GWT, or so is it advertised, is that you can develop *and* debug your app directly in Java, not having to mess with the Javascript at all.

          From the GWT overview :

          Google Web Toolkit (GWT) is an open source Java development framework that lets you escape the matrix of technologies that make writing AJAX applications so difficult and error prone. With GWT, you can develop and debug AJAX applications in the Java language using the Java development tools of your choice. When you deploy your application to production, the GWT compiler to translates your Java application to browser-compliant JavaScript and HTML.

          Here's the GWT development cycle:

          1. Use your favorite Java IDE to write and debug an application in the Java language, using as many (or as few) GWT libraries as you find useful.
          2. Use GWT's Java-to-JavaScript compiler to distill your application into a set of JavaScript and HTML files that you can serve with any web server.
          3. Confirm that your application works in each browser that you want to support, which usually takes no additional work.

        • Re: (Score:3, Insightful)

          Then, most of the times it's much more difficult to maintain a solution which depends on a framework producing files for you at compile time.

          And how is this different from a compiler? Whether it's object files or class files, it's probably worse to debug the raw assembler/byte code then it is to wade through generated javascript. And yes, compilers make errors. Apparently, GWT is a compiler, with the only twist that it generates javascript rather than raw machine language or a (different) virtual machi

        • by breadbot (147896) on Tuesday December 12 2006, @04:17PM (#17213864) Homepage
          There's a good answer to that: the compiler can be invoked in two modes. Production mode generates compressed, obfuscated (as a side effect of compression) JavaScript, with function names like a3(). Development mode, though, generates incredibly verbose JavaScript, with Java packages and class names and method names visible everywhere, that is encredibly easy to trace back to your original code.
  • by Anonymous Coward on Tuesday December 12 2006, @01:12PM (#17211078)
    I am glad to see smart companies and developers using developer friendly licenses like Apache and Mozilla. I've been burned early in my career by using the GPL and I'll never do it again for any software I write. I hope more developers use good solid community licenses like Apache 2 and MPL.
    • As someone who has contributed bits and pieces of code here and there, and considering some bigger ideas to be released as GPL, I'm interested in why you'd prefer Apache 2 and MPL. It's all rather murky to me what the differences are. Mind elaborating?
      • Re: (Score:2, Informative)

        by maxume (22995)
        If you are in a situation where you are working on a code base that you initiated but it has become a 85% you, 15% contributed situation, your ability to 'go binary' becomes pretty limited, depending on how that 85% is spread about. That's the point of the GPL of course, but if you start using it without realizing the implications, I can see how you would feel burned.
      • Re: (Score:3, Interesting)

        by david.given (6740)

        As someone who has contributed bits and pieces of code here and there, and considering some bigger ideas to be released as GPL, I'm interested in why you'd prefer Apache 2 and MPL. It's all rather murky to me what the differences are. Mind elaborating?

        If I'm a company, then if I use GPL software, I cannot modify it. This rather defeats the purpose of using open source software.

        The reason why I can't modify GPL'd software is fairly simple: releasing in-house software as GPL is expensive. It requires leg

        • by Anonymous Coward on Tuesday December 12 2006, @01:46PM (#17211560)
          GPL primarily has distribution restrictions. If you are just using modified GPL code internally, that is not a problem. If you are re-distributing (selling) the software, you need to provide the source code, including your modifications. I don't see the problem.

          Your company doesn't want to "support" the software? Why would anyone want to purchase software from your company?
        • by Anonymous Coward on Tuesday December 12 2006, @02:29PM (#17212202)
          > The reason why I can't modify GPL'd software is fairly simple: releasing in-house software as GPL is expensive. It requires legal oversight to make sure that we can relicense it, it requires infrastructure to allow us to give customers access to it, it requires us to support those customers --- if you're a real company, you can't get away with telling customers to piss off when they ask you questions --- it requires us to religiously differentiate between the GPL'd code and the non-GPL'd code to prevent license poisoning, and above all, it requires the process to manage the above. Using GPL'd software involves an entire management chain from legal downwards. Using BSD software doesn't.

          Well, if you're using GPL'd software as part of your proprietary software, you were barking up the wrong tree to begin with--the whole point of the GPL is to promote free (libre) software.

          As for the relicensing bit, you can only license things you own. If you're not using code you own, you have your own problems right there, GPL or not.

          And if it was for simple in-house *use* (the GPL covers *distribution* as you can see from the preamble section), well, you didn't really have to release anything, anyhow, so there couldn't have been anything to vet to begin with.

          Honestly, it sounds to me like you grabbed a screwdriver and were disappointed because you couldn't make a very good hammer out of it.
    • I am glad to see smart companies and developers using developer friendly licenses like Apache and Mozilla. I've been burned early in my career by using the GPL and I'll never do it again for any software I write.

      I don't agree with you on this, but FYI the GNU GPL version 3 will be compatible with the Apache 2.0 license. See this RMS transcript [fsfeurope.org] from the Free Software Foundation Europe. The combined GPLv3+Apache2 work can be released under the GPLv3+"patent termination protection" license.

      If people think

  • It is good news that more open source toolkits are becoming available, I would love to check this out...

    the problem is the demos don't seem to work in Konqueror (3.5.5) although I am not surprised. Funnily enough I have problems with Gmail in Konqueror, it freezes, and some of the features just don't work.

    It would be nice to see some patches against GWT to support these browsers, now it's open, we can.
  • Dang it. (Score:2, Funny)

    by Anonymous Coward
    Stuff like this makes me wish I could code. :(

  • by Ed Avis (5917) <ed@membled.com> on Tuesday December 12 2006, @01:15PM (#17211134) Homepage
    So... you can write your application in Java, but then compile it to Javascript to run inside a web browser?
  • Yes please :) (Score:3, Interesting)

    by growse (928427) on Tuesday December 12 2006, @01:18PM (#17211170) Homepage

    I've always been of the "build it yourself" philosophy in the past, when I first coded my website (4 years ago), I built the blog, the guestbook, the cms, everything. I don't have a CS degree, and this proved to be a valuable way to learn some programming skills.

    Even today, I start new projects, I look at existing offerings, reject them and try and put it together myself. I'm currently some way through building an AJAXy online photo-management tool. It's fun stumbling across a bunch of unanticipated problems and figuring out how to fix them. At the end of the day though, with this particular project, I just want something that's asynchronous, but as reliable and cross platform as gmail.

    When the people who make the application whose standards you're trying to match release a toolkit that helps you do that, I'm having me some of that.

    • So, um, how does using GWT to avoid browser quirks and the need to know JavaScript fall in the "build it yourself" philosophy?
      • Re:Yes please :) (Score:5, Interesting)

        by growse (928427) on Tuesday December 12 2006, @02:31PM (#17212240) Homepage
        It doesn't. You missed the point. I tend to think in the "build it yourself" mindset, but I don't write my own compiler, or my own XML parser plugin for Perl. Sometimes, it just doesn't make sense to build something when there's a tool out there that helps you achieve the ultimate goal. Sure, I don't learn about how to get around browser specific JS bugs with the GWT, but on the upside, I get to learn Java. Bigger benefit.
  • Um ya...... (Score:3, Informative)

    by jrwr00 (1035020) <jrwr00@[ ]il.com ['gma' in gap]> on Tuesday December 12 2006, @01:26PM (#17211272) Homepage
    Found this under the GWT FAQ:

    Does Google Web Toolkit send any information about me back to Google's servers?

    When you use the Google Web Toolkit's hosted web browser, the application sends a request back to Google's servers to check to see if you are using the most recent version of the product. As a part of this request, Google will log usage data including a timestamp of the date and time you downloaded the Google Web Toolkit and the IP address for your computer. We won't log cookies or personal information about you, and we will use any data we log only in the aggregate to operate and improve the Google Web Toolkit and other Google Services. Please see the Google Privacy Policy for more information.
    • Re:Um ya...... (Score:4, Insightful)

      by Anonymous Coward on Tuesday December 12 2006, @02:25PM (#17212118)
      You have the sources, so you can just cut out that functionality.
  • Can anyone explain what they mean in TFA by "JavaScript's lack of modularity?" AFAIK, javascript is a pretty standard (prototype-based) OO programming language, and I don't understand what's not modular about it.
    • by Shados (741919)
      The OO features are kind of lacking in it, or tend to be annoying to use. Certain toolkits "fake" it, thus adding all the missing features. Its kind of cool.
    • Re: (Score:3, Informative)

      by curunir (98273) *
      The modularity lacking in Java is packaging and importing. As another poster mentioned, toolkits create the illusion that JavaScript has these, but it really doesn't. Somewhat less important is that there really isn't a true inheritance model. You can inherit another object's prototype, but that doesn't give you the same flexibility as true inheritance.
  • Devil's Advocate (Score:5, Informative)

    by wralias (862131) on Tuesday December 12 2006, @01:48PM (#17211586)
    From TFA [google.com]:
    Writing dynamic web applications today is a tedious and error-prone process; you spend 90% of your time working around subtle incompatibilities between web browsers and platforms, and JavaScript's lack of modularity makes sharing, testing, and reusing AJAX components difficult and fragile.
    Anyone who has done heavy work in JavaScript can attest to it's modularity; in fact, it is a very beautiful, expressive, and misunderstood language. Some folks claim that it is not object-oriented - but that is simply not true. It supports inheritance, static members, etc. - you just have to conceptualize them differently. I hesitate to trust the output or business logic of a program that "compiles" in javascript from another language, even if it is something so similar syntactically as Java is. I guess if you don't know JavaScript and you're uncomfortable with browser quirks, and you are a Java person, then this framework is for you. Bad news, though - you'll still need to figure out CSS, and that is a mind-fuck in and of itself.
    • by abes (82351) on Tuesday December 12 2006, @02:35PM (#17212288) Homepage
      It's a first that I've seen someone call Javascript beautiful. Javascript, for what it was first conceptualized for, got the job done (back when it was Livescript). The misunderstood part of Javascript, is that it is prototype-language, which is unlike most other languages. That is, you can create object types on the fly due to how the associative arrays work. foo.bar is the same as foo['bar']. From that you can get all the OOP you want (note: although Python is much more of an OOP'd language, it can also be used as a prototype-language).

      But this is definitely where the beauty is in the eye of the beholder comes into play. Is this some quick syntactical sugar that gives the impression of structure, or is there indeed a well thought out design to the language. Of course, the fact it's been a slowly evolving/hacked together language would point more towards the former in my book.

      Personally, I've never been a fan of the Javascript method of doing things, and prefer a much stronger structure in the language. Python does a great job of it, I like what little I've seen on Ruby (especially Rails), and there is of course my personal favorite C++ (yes, flame all you want, but *know* the language first before you complain about it).

      Prototyping languages, from what I've seen so far, are great for hacking together small projects, but get messy when you try to do anything on a larger scale. This is where strong language structure comes nicely into play.

      While Java is not my favorite language (I usually refer to it simply as, 'that bastardized c++ language'), I am excited about trying this out. I'm curious as it will compare against RoR, Django, etc. The prospect of being able to write a well maintained library for web interfaces that is easily extendable is a much worked on and much needed item in the world of webs.
      • Re: (Score:3, Informative)

        by macshit (157376)
        They aren`t quite objects if you need to conceptualize them in a different way...

        The phrase "object oriented" does not refer to single implementation technique, it refers to a general category of languages. Perhaps the majority of people are more familiar with C++/java style class-based designs, but there are many others. One of the most famous (in the research community at least) is "prototype based" languages, of which the "Self" language is the most well-known example. Javascript, it would seem, is a
      • by kubalaa (47998) on Tuesday December 12 2006, @09:01PM (#17217816) Homepage

        You cannot package javascript up in a module which ensures that there will be no namespace collisions
        Sure you can, if you are willing to accept the risk of collisions in module names (after all, what happens if two Java packages use the same name)?

        // define a new module
        org_slashdot_moduleX = new function() {
        var module_private_variable = ...
        function private_function() {
        ...
        }
        this.public_function = new function() {
        ...
        }
        } // end module org_slashdot_moduleX
         
        // import the module as "mX":
        var mX = new org_slashdot_moduleX();
        mx.public_function();
        You can even parameterize modules to create ML-style functors.
  • ZK (Score:3, Informative)

    by Dan Farina (711066) on Tuesday December 12 2006, @02:28PM (#17212192)
    This is good news, but I would highly suggest anyone looking at a tool such as GWT also look at ZK ( http://www.zkoss.org/ [zkoss.org] ).

    While not technically competitors (GWT is all client side, ZK provides a way to handle AJAX requests automatically on the server side) they fill many of the same niches. There is an informative interview available ( http://blogs.pathf.com/agileajax/2006/06/an_interv iew_wi.html [pathf.com] )

    If you want to jump straight into the ZK demo, check out http://www.zkoss.org/zkdemo/userguide/ [zkoss.org]
  • by littlewink (996298) on Tuesday December 12 2006, @05:34PM (#17215162)
    Once again a Web 2.0 Javascript framework that doesn't gracefully fail for those who disable JavaScript.

    IMO this is nice-looking but a non-starter.
    • Re: (Score:3, Insightful)

      by soliptic (665417)

      Once again a Web 2.0 Javascript framework that doesn't gracefully fail for those who disable JavaScript.

      If you just searched for <NOSCRIPT> and didn't find it, and assume this means it won't gracefully fail with js off - you could be wrong.

      You can do graceful degradation that way. OR, you can output a page that works without javascript, all the links being traditional serverside "do_something.php?action=foo&id=foo" stuff. And then, the body onload() goes through your DOM and replaces all the

    • Re: (Score:3, Informative)

      by nuzak (959558)
      There is no overlap. In fact, the GWT only works with the Java 1.4 subset of the language (though you can run it on any 1.4 and up JVM, you just have to use -source 1.4). No generics, no enhanced looping, etc.

      Java 6 SE includes Rhino (without E4X) which I suppose could be used as a target of the GWT for the server side, but it seems a tad pointless except maybe for validation of generated code.

        • Re: (Score:3, Interesting)

          by nuzak (959558)
          > Almost all Java dev on the server side takes place on 1.4.2-level syntax.

          Sadly true ... most java dev is using hopelessly archaic junk. Thank god my Java projects aren't driven by glacial rollout schedules and fear of new things, so I quite happily use things like Seam, which is chock full of Tigerisms like annotations. It's the only I can get myself to stand working in Java at all.

          I suspect a platform like .NET that carries less encumbrance of big legacy deployments must be a bit more liberating. I
    • by Shados (741919)
      Well, lack of needing a plugin for one. And making an applet that have ajax functionalities probably require some socket connections or something. Much much larger memory footprint, etc.

      There's a ton of reasons.
    • Re:Wither AJAX (Score:5, Insightful)

      by chill (34294) on Tuesday December 12 2006, @01:43PM (#17211492) Journal
      No, the reason Java didn't take off for web stuff is the massive hit you take when first firing up the JVM. The first time the JVM initializes you can add 3-10 seconds to the web page load. It also chews memory disproportional to what it was used for -- little applets.

      Don't get me wrong, for larger programs and projects Java can be an excellent tool. When you fire up the JVM with system boot, or once a week or so, then no problem. But using Java to give you an automatic clock, roll-over buttons, or pretty water effects on pictures is just wrong on so many levels.
    • Re: (Score:2, Informative)

      by whargoul (932206)

      With Java 7 under GPL, why would anyone develop an AJAX application instead of a signed Java applet? The reasons Java applets never took off were security concerns and limited consumer bandwidth. Both of these are less of a concern now and no more of a concern than running rich apps directly in the browser.

      Time to make like it's nineteen-ninety-eight. Again.

      I avoid Java applets as much as I can. Not because of security or bandwidth, but because they take so damn long to load and often cause the browser (IE or FF) to freeze until they're done loading.

    • Re:Wither AJAX (Score:5, Insightful)

      by iabervon (1971) on Tuesday December 12 2006, @02:06PM (#17211864) Homepage Journal
      Because it's really hard to write a Java applet that doesn't break user expectations for content inside the browser window. If you do it all with a Java applet, you break the "text size" menu items, the back button, bookmarks, the print menu item, and so forth. If you use AJAX correctly, all of these work (better even than without AJAX, because it makes "next" and "previous" buttons on a big list act like scrolling through it, rather than being additional history items). People want to use web sites like web sites, but with extra-clever controls, not like desktop applications. Java applets are inherently objects embedded in web pages, not integrated with the browsing interaction.