Skip to main content

Into the Great Wide Open

Posted by editor on June 29, 2006 at 6:34 AM PDT

Taking Aerith's source code for a spin

The cause of quite a bit of complaining and demanding -- even the Java Posse were calling for it to come out already -- the source for Aerith, the 2D/3D/webservices photography and mapping mashup from the first JavaOne 2006 keynote, is finally available from the Aerith project.

Granted, it's not just about Aerith, but rather a history of JavaOne "gee whiz" demos whose source was never made available, making it far more difficult for others to duplicate the demos' accomplishments. In some cases, presenters have code that works but is poorly organized, and they don't want to put that out as a model of Java programming. Aerith had not only this problem, but also legal entanglements from the various third-party API's they used, meaning there was that much more to deal with in the post-JavaOne come-down in order to get a release out.

Two blogs offer two distinctly different perspectives on the release. Joshua Marinacci's Aerith Code is Go! covers some of the licensing and techincal issues, with a little bit of expectations-setting to boot:

A word of warning. Aerith requires a fast machine and a recent copy of Mustang. This is to support the 2d/3d integration that was a key component of the demo. Also, the code is rather crufty and not all parts may work. If you'd like to fix some of these bugs please download the code and get involved on the mailing list. This is a demo, not a real product, so we can't spend much time polishing it, but we always welcome outside contributions.

Meanwhile, Richard Bair's Aerith is free! flashes back to the genesis of Aerith as a mad rush to be ready in time for James Gosling's keynote "tryouts":

Romain, Josh and I setup a war room in one of the conference rooms here on campus. As all good war rooms, ours was stocked with food, liquid nourishment (water for me, on a diet :-)), and pizza (so much for the diet). Oh, and chocolate cake. No "Romain" war room is complete without chocolate cake.

In three days of intense coding (Thursday, Friday, and Saturday. Usually about 18 hours+ each day) we wrote the entire map viewer and editor, and part of the applet. The original applet contained only the 3d "twinkle" code. (For those familiar with Romain's blog, Twinkle is one of the projects he released that we reused for this demo). With that, the demo was more or less feature complete. Later that week I added what we called the "Indiana Jones" viewer in the applet. Otherwise, bugfixes occupied our time. And endless tweaks to get things up to Romains standards.

Oh, and for those of you who were wondering about Aerith co-author and Swing rock star Romain Guy, he's still around, and added a one-line blog of his own to mark the occasion.

Also in
Java Today,
Artem Ananiev and Alla Redko discuss Using Headless Mode in the Java SE Platform: "Headless mode is a system configuration in which the display device, keyboard, or mouse is lacking. Sounds unexpected, but actually you can perform different operations in this mode, even with graphic data."

Linda DeMichiel is Sun Microsystems' specification lead and chief architect for Enterprise JavaBeans 3.0 and the Java Persistence API (JSR 220). In the concluding segment of a two-part interview, Refactoring the EJB APIs: A Conversation with Linda DeMichiel, Part II, she discusses the role of interceptors, dependency injection, the Java Persistence API, and how EJB 3 relates to other Web frameworks

In our Feature Article, Jason Zhicheng Li looks at how to
Validate Java EE Annotations with Annotation Processors. Annotations are one of Java 5's most compelling features, but their openness is in some ways a curse: there's nothing keeping you from declaring illegal combinations of annotations (like @Stateful and @Stateless). Annotation processors give you the opportunity to inspect annotations, either with the currently available Apt or or the upcoming JSR-269 annotation processor. Jason takes a look at both in this article.

Ethan Nicholas says So long, and thanks for everything in today's Weblogs. "After eight years with Yahoo!, I just gave notice. What could lure me away? Here's a hint: it starts with 'S' and ends with 'un'."

Immunizing the Internet, or: How I Learned to Stop Worrying and Love the Worm, James Gosling recalls,
"When we first released Java in 1995, we made all of the sources available on the net. Most people just downloaded the binaries and used them, but a lot of folks downloaded the sources, and many of them spent many hours trying to figure out how to break the security of the system."

Billy Newport has just finished a web application and wonders aloud about the relative advantages of
Java versus PHP:
"I've been building a PHP site over the past 6 months and it's been interesting given my Java background."

In today's Forums,
deronj discusses why server-optimized Java is a disaster for client apps like Looking Glass in
Re: No 64bit release for 0.8.1:
"The problem with using the server vm for an interactive client application is that, at least in the case of [Looking Glass], the server compiler applies considerably more aggressive optimizations than the client vm, and so compiles take longer. Thus, it can take several minutes before the 'compilation burst' which occurs at LG startup has subsided."

Justin Couch seeks some domain-specific help in
Anyone doing motion capture work?
"I've just finished off a file parser for the somewhat industry-standard C3D file format. I'm looking for some live motion capture data to test with beyond what I already have. Most of my data comes from a ViCON 2.5 application, and I'd like to test against output from some other systems."

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.

Taking Aerith's source code for a spin