Previous  |  Next



Tim O'Reilly

Tim O'Reilly

Aerith: Java, not Ajax

There was apparently some serious Ajax envy and angst at JavaOne. But also some cool stuff, reminding us that Java had the vision of rich web apps long ago, and is still a great platform for building network-enabled apps with great front-ends. aerith is "a roadtrip slideshow builder that combines Google Maps, Flickr, and Yahoo Geocode to let you make your own slideshow of photos you took on your trip. Once you are [done] setting up the slideshow you can share the trip with your friends as an applet."

It's often frustrating to early developers with big visions when something later comes along and steals their thunder by offering far less. But there's a lesson here: as Donald Knuth says, premature optimization is the root of all evil. And that doesn't just apply to performance, it applies to design. It's impossible to think through what people are going to want to do until they start doing it, so sometimes it's best to seed the market with a hack that gets people going, and then follow up as you watch what they do with it.

tags:   | comments: 9   | Sphere It


0 TrackBacks

TrackBack URL for this entry:

Comments: 9

Romain Guy   [05.22.06 01:39 PM]


Reminding that the Java platform is still a great technology to build Rich Internet Applications was indeed one of our goals when we started Aerith. Yet, as RIA don't stop with desktop applications, we wanted to remind everybody that they're not only about Ajax applications. We wanted to show the audience that both technologies are great, each offering a different set of possibilities. From the early feedback we know that it got people excited again about Java on the desktop.

And I perfectly agree with your statement regarding the release of an early hack. This is why we will release the source code of Aerith so that other developers can start doing the same and go further. I can't wait to see what the community will do!

mkb   [05.22.06 03:25 PM]

I believe the line about premature optimization is from C.A.R. Hoare and not Knuth.

Phil Atio   [05.22.06 06:05 PM]

MKB is correct. C.A.R. Hoare was quoted in Knuth's book, Literate Programming (Stanford, California: Center for the Study of Language and Information, 1992), 276. The exact quote is: "We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil."

Unfortunately, the thrust of this quote is at odds with another phenomenon: problems with architecture and design become progressively more difficult and expensive to correct later in the system development process. Such problems proved fatal for at least two big projects I can think of. Of course, in many small projects, it's easy to push a quick hack out the door (and we don't do that often enough), but if you're designing the avionics of the Boeing 787, it's an entirely different story.

So I think the best policy is not to be too dogmatic about optimization. I agree premature optimization can be a bad thing, but, as Sir Tony (Hoare) implies, there's that 3% of the time where early optimization is appropriate.

A J King   [05.23.06 02:59 PM]

Premature optimization? Isn't there a medicine you can take for that? :)

Fred   [05.25.06 08:44 AM]

Tim, I'm usually not one to go with platform or technology wars, but I have to disagree with Java being a better (or even good) platform for web-based applications - and I'm assuming we're talking web-based because Ajax is mentioned as "competition", and clearly Ajax has no real way to get into the desktop as a sole technology.

I wrote sort of a response article here, but the gist of it is that this is comparing apples to oranges.

Ken   [05.25.06 02:09 PM]

Have you guys seen this yet?

James Governor   [05.26.06 04:14 AM]

is something wrong with your radar, tim? seriously i was at java one and the excitement about javascript was palpable. i didnt see any angst or envy - can you be more specific?

Martin Knell   [05.26.06 09:14 AM]

So is it me, or is AJAX a bigger threat to Flash than Java - seems like no one builds Java clients (on PC's) any more, they use Flash. But I see Flash apps kinda cratering now that AJAX supplies easier access.

krish   [08.24.06 08:48 AM]

There is one Aerith in JAVA,
there are 100's if not 1000's of applications like these in Flash.

BTW AJAX cant replace Flash. Flash is consistent across Platforms, very easy to develop RIA's, With Flash 9, you can make powerfull web applications in Flash, it wont be too far (1MB) Flash 9 be availabe in majority of browsers, Can we imagine 7MB to 10MB Java be available everywhere ?

JAVA frezzes Browser on startup,Flash starts smoothly.

Developing Flash GUI application is very easy.

Post A Comment:

 (please be patient, comments may take awhile to post)

Remember Me?

Subscribe to this Site

Radar RSS feed