Skip to main content

You Better You Bet

Posted by editor on July 13, 2006 at 7:54 AM PDT

More on desktop direction

Thanks again to Daniel Steinberg for handling yesterday's daily blog while I got the family from Traverse City back to Atlanta (drive drive drive, fly fly fly, drive drive drive). The combination of voices on this blog has worked surprisingly well for getting a rolling discussion going... maybe just a little at the party line's expense while Sun was on vacation last week (remind me to point to this series of blogs next time some troll asserts that lacks editorial independence).

To catch everyone up, in swapping blogs, Daniel and I have had quite a bit to say about Desktop Java. It started back in Substitute, when Daniel noted the curious-at-best (my characterization) decision to put Java DB in JDK 6 (just the SDK, not the JRE), and not some homegrown libraries that could seemingly do the desktop developer a lot more good, like Jini and JXTA. In Anyway, Anyhow, Anywhere and Let's See Action, I started talking up USB support, and in Friday's Eminence Front, I combined all these threads with the idea of a direction for desktop java: "focus on stuff that webapps and Ajax can't/don't do well", such as device support, spontaneous networking, multimedia, etc. And even if you don't care about the desktop, I argued that "enterprise Java is not well served by having a neglected, underpowered desktop cousin."

This thread has gotten a little traction, getting noted on the latest JavaPosse podcast, among other places. It also spurred an extensive new blog from Simon Morris, In Defence of the Desktop.

In his blog, Simon takes the old saw (ha ha) that "when the only tool you have is a hammer, every problem looks like a nail" and applies it to the current direction of desktop Java:

Reading through some of the recent comments on blogs and forums of late I've begun to wonder if there isn't a sizeable section of the Java developer audience who have forgotten the true nature of desktop software? I read comments attacking Swing as being too complex, and suggesting perhaps it should be more like those APIs used to build web application interfaces. At the same time I see a database being included as a standard part of the development kit for SE, the version of Java supposedly aimed at the desktop.

After explaining the profound differences between desktop and webapp development for those who might not have had a taste of both, he brings the discussion around to what's wrong with what we've been getting lately:

If SE is truly the edition of Java aimed at the desktop, and most real desktop applications (browsers, players, word processors, video editors) are not database heavy, why is Java DB being included in the SE JDK? Is it, perhaps, because those who influenced the decision spend too much time banging in nails, and now think the key to making SE more popular is to turn it into a hammer?

There are also some very good talkbacks already, with some calling for a modularization of SE, so that we can get (and deliver) just the pieces that are appropriate for a given application. This would be ideal for those of us who need to deliver audio/video libraries (not included by default) but have no use for a database.

Also in today's Weblogs Evan Summers looks at
The sharp end of the stick:
"I like that Java is entering its conservative age. Innovation is overrated for the innovator, and underrated for the follower."

Finally, Aditya Dada has a blog about attending the
Better Software conference, in which he talks about
"my recent presentation on 'Smoke Tests to Signal Test Readiness' at the Better Software Conference, and a review of a few talks that stood out."

In Java Today,
the Phobos project, a lightweight, scripting-friendly, web application environment, has released a new version and has finally posted its source code. As Roberto Chinnici blogs in New Phobos Build, Plus All The Source Code!, "there is a new Phobos build in the documents and files section of our project site. The build is dated July 10, 2006 and is available in binary form for the Solarix/x86, Windows, Linux and Mac OS X platforms." New features include support for JavaScript's E4X extension, the ability to drop new scripting languages into glassfish/lib, and the ability to package Phobos applications as WAR files.

"Java Platform, Enterprise Edition (Java EE) is not going to survive as a major standard programming model in the next five years, predicts Richard Monson-Haefel, senior analyst with the Burton Group, and SOA is part of the reason," according to the controversial (and much-linked) article Analysts see Java EE dying in an SOA world. Monson-Haefel claims "JEE5's failure to address complexity is a harbinger of the Java EE platforms' fall from dominance in the enterprise development platform arena," and that "the Java EE platform will go the way of other once promising standards, such as CORBA (Common Object Request Broker Architecture), which eventually fell out of favor and usage."

In an oldie-but-goodie from ACM Queue, Alex E. Bell writes in Death by UML Fever that "a potentially deadly illness, clinically referred to as UML (Unified Modeling Language) fever, is plaguing many software-engineering efforts today. This fever has many different strains that vary in levels of lethality and contagion. A number of these strains are symptomatically related, however. Rigorous laboratory analysis has revealed that each is unique in origin and makeup. A particularly insidious characteristic of UML fever, common to most of its assorted strains, is the difficulty individuals and organizations have in self-diagnosing the affliction. A consequence is that many cases of the fever go untreated and often evolve into more complex and lethal strains."

kbr has an interesting gotcha about library management
in today's Forums.

Re: Strange webstart launch problem points out
"If you've installed Java 3D in jre/lib/ext (which is what the installers do) then Java Web Start will be unable to override the installed version of Java 3D. In the case of JOGL, this is why we recommend against installing in jre/lib/ext. In general this is a pretty big problem for standard extensions and their evolution and I'm not sure there is a good solution."

demiant tries to figure out a bit of EE/GlassFish confusion in
Entity with collections are not changing:
"I have an object(X) which is a loaded entity with several collections of other entities(Y/Z), If new entities are inserted/deleted/modified to the DB (of type Y/Z), then as it seems, even if I re-load entity (X) from the DB through the EntityManager, the collections are still not get refreshed. Do I have to call entityManager.resfresh by myself? re-loading the entity is not enough? If so, as I understand, refreshing the entity is only possible if the entity is flagged as managed?"

In today's
News Headlines

Registered users can submit news items for the href=""> News Page using our
news submission
. All submissions go through an editorial review before being
posted to the site. You can also subscribe to the href=""> News RSS

Current and upcoming Java

Registered users can submit event listings for the href=""> Events Page using our href="">events submission form.
All submissions go through an editorial review before being posted to the

Archives and Subscriptions: This blog is delivered weekdays as
the Java
Today RSS feed
. Also, once this page is no longer featured as the
front page of it will be
archived along with other past issues in the href=""> Archive.

More on desktop direction