The return of the applet?

There was a great chat about the return of the applet on last weeks "The Java Posse". In particular, they linked to, a site that contains a Commodore 64 Emulator along with a boatload of games. I tried one game, Galaga RGB. That was cool. Click & play. No download. Nothing like a VM running in a VM :)

I'd like to hear your reasons for why applets were consumer-challenged (be cordial). Macromedia Flash sure had no problem with gaining acceptance. My thought of why applets never really caught on is because Microsoft never updated the JVM. I wish I had kept the "Microsoft Loves Java" button I got at a Microsoft Developers Conference in my pre-Sun days (1996??). The JVM was a rather large download for a dialup line. That didn't help.

Today, an up-to-date JVM ships with most PCs. I forget the percentage, but me-thinks it's in the neighborhood of 60%. The JVM also auto-updates (more or less), consumes less resources, and is darn fast. FYI, Firefox is chewing up 64MB of RSS while my c64 emulator JVM is at 87M.

Question is, do you think the Applet is "back"?

Do you think Java on the desktop (via Webstart or native application) is "back"?


Honestly I have no clue why applets are "back" and I _love_ the javadesktop side of life(have you seen fuse by Romain Guy yet?) but as far as games on emulators running java go, one word: Java4k... Have you checked those out yet? This years contest for entries ends in March I believe, some really awesome things coming out of it!

Posted by Jeffrey Olson on February 13, 2006 at 12:36 AM PST #

John, Applets were dead because of the reasons you have rightly pointed out. One more thing i would like to add is also the complexity of AWT and SWING programming to program Applets. Maybe Flash were easier compare to Applets to develop. You have tackled the first issue of VM being generally available.. What about the next? Have SWING programming become easier to encourage APPLET programmers?

Posted by Muthu Ramadoss on February 13, 2006 at 11:57 AM PST #

Jeffrey, I also love what Romain Guy is doing. He's most definitely getting me pretty stoked on client side Java, not that I needed much nudging. I haven't checked out Java4k, but I'll look it up.

Muthu, I almost added "content creation" to my list, but I think coders had plenty of oppty to write great content via Applets. Those coders could have written something Flash-like on top of the JVM, but they didn't for reasons already listed (and perhaps more).

Posted by John Clingan on February 13, 2006 at 12:47 PM PST #

I tend to concur with Muthu's comment. Although I mainly work at lower level of the stack and my personal Java experience is servlet and server side application, in my limited contact with "frontend" developers, there is a common sentiment that Java applet is still a "program", it requires code planning, compiling, debugging, all of which seems like rocket science to frontend developers.

Plus, startup time and memory usage of JVM also pose as a barrier, there still is perceivable startup delay of \*each\* applet even in latest JVM. And in the case of Firefox example you gave, the RSS size is the sum of both Firefox and JVM. The situation worsen if multiple browser processes are running. This happens when naive end user simply clicks on the browser shortcut placed on their desktop rather than using tabbed browsing or starting new window in the already-running browser instance.

Talking in a broader context, the JVM isolation (thus the memory requirement) is both blessing and curse of deploying Java as desktop application developement language. I heard Apple has a class library sharing JVM implementation, though I am not sure about how it works.


Posted by Ivan Wang on February 13, 2006 at 12:49 PM PST #

If you tried to play any of the games on that c64 site, then you get a sudden recall of why applets never made it. They're slow. On Solaris. Which happens to be Java's native OS. Emulating a ~1MHz CPU. It's rediculuous. I've always said that Java is an ingenious concept made extremely badly. And when you run applets like those, it suddenly becomes painfully clear why. What good is a good language design if the end product is unusable? And while we're at it, not that it has anything to do with technical side of things, but Java apps are just plain ugly as all getout.

Posted by ux-admin on February 17, 2006 at 05:41 AM PST #

With all that talk about Ajax, I've also been wondering why not many people are writing Java applets. Most Ajax applications are where Java and Swing were 10 years ago. At the same time, lots of investment was made into making Swing better, and now with the Java plug-in, applets have also become easier to use (applet code is cached on the client). That applets got such a bad rap is only partly the reason, I think. More important is that writing non-trivial rich-client applications is, well, non-trivial, and require skills that not many Java developers have, as most developers have thus far focused on server-side development skills. As soon as developers start creating non-trivial Ajax apps, they, too, will encounter the same challenges one has to consider writing Swing apps. In fact, the few more complex Ajax apps that exist also behave very badly (I just tried an Ajax calendaring app, and it completely overtook my system). If the general knowledge about server-side apps were as low as the general knowledge about writing rich-clients apps currently is, server-side apps would also perform badly, etc. With JDK 1.5, no one can blame Java or Swing for performance problems any more, I think.

Posted by Frank Sommers on February 18, 2006 at 09:41 AM PST #

Post a Comment:
Comments are closed for this entry.

John Clingan-Oracle


« June 2016