The Source for Java Technology Collaboration
User: Password:



John Reynolds

John Reynolds's Blog

Thoughts on J2EE, Spaceship One, and getting back to the moon

Posted by johnreynolds on June 21, 2004 at 06:17 AM | Comments (7)

NASA

Throughout the 1950s significant advances were made in the aerospace field, building on the scientific and technological breakthroughs from the previous decade of war. Innovations were incremental, with carefully laid out programs to test and develop new rockets and supporting infrastructure. Then in 1957 the Soviet Union launched Sputnik. Overnight, space exploration went from a fringe interest of scientists and engineers to a social phenomenon that captivated the world. As a result, the carefully laid plans to develop space (like the X20 DynaSoar) were scrapped in favor of a no-holds-barred Herculean effort to get to the moon and back.

We did get to the moon, and it was a fantastic time to be alive. Unfortunately, the "new wore off" and after a few trips we never went back. By itself, that is kind of sad, but what is really sad is that we ended up essentially back where we had started. The rockets that we developed for going to the moon were only good for going to the moon. With the exception of Skylab's use of some surplus vehicles, the mighty Saturn V never flew again. The big rocket simply wasn't appropriate for any other use, and commercial launches reverted to the older Atlas and Delta rockets from the late 1950s.

NASA's follow-on to the Saturn V was the miraculously complex Space Shuttle. This beautiful spacecraft wowed the world, but it never met any of its major objectives. Launches were not cheaper. Launches were not more frequent. Missions were not safer. On top of that the system was so incredibly complex that it required an army of support staff and billions of dollars just to keep it running.

We wanted a space plane to zip into orbit on a whim. That is not what NASA's shuttle delivered.

Meanwhile, on the fringes, space enthusiasts kept plugging away. They saw past the PR and the hype of the shuttle and the international space station, and they quietly went about making progress where they could. Many times they demonstrated better ways of doing things (like the Delta Clipper), but sadly the space enthusiasts never managed to get the recognition or support from the main-stream.

Hopefully Burt Rutan and Paul Allen's Spaceship One will reinvigorate the renegades to keep fighting the good fight.

J2EE

J2EE was created in an environment similar to the space race between the USA and the USSR. The explosive phenomenon of the World Wide Web created unprecedented excitement and opportunities, and Java proponents rushed to develop a platform to meet the demand. Carrying the analogy further, some would say that there was even an "Evil Empire" to race with.

Unfortunately, the platform was somewhat complex, unwieldy, and not a pretty thing to behold. The platform was overkill for many applications. The platform introduced complexity. Some of the published "Best Practices" contained more propaganda then pragmatism. Big money backed the platform and big reputations were put on the line.

Meanwhile, on the fringes, the restless kept plugging away. Some criticized EJB containers and came up with leaner alternatives (like Spring and Pico). Some deplored CMP, lamented JDO, and produced lightweight POJO persistence solutions (like Toplink and Hibernate). Others moaned about JSP and came up with alternate display technologies (Velocity) and powerful MVC frameworks (Struts, Tapestry). Even major vendors strayed beyond the spec to enhance Java web development (Beehive's Java Controls and Page Flows).

On second thought, perhaps the J2EE restless weren't the fringe after-all. Perhaps they were closer to the heart of J2EE, and perhaps that is why we have a good chance to avoid the NASA mistake. We don't have to build a Space Shuttle.

As Bruce Tate points out in his EJB 3 article, there is much to praise and much to be cautious about in the proposed changes to EJB. Similarly, in Hans Bergsten's article on JSF and JSP we learn that JSF has a lot to offer, but that JSF interaction with JSP is a bit tricky to get right.

We need to be careful as we go about retooling J2EE. We do want to get back to the moon, but we also want to go to the stars. Fortunately, our odds are pretty good. Many of the Java restless now participate in the Java Community Porcess, and indications are good that they are setting the course. Maybe NASA should follow suit and listen to Burt Rutan.


Bookmark blog post: del.icio.us del.icio.us Digg Digg DZone DZone Furl Furl Reddit Reddit
Comments
Comments are listed in date ascending order (oldest first) | Post Comment

  • Getting back to the moon Excellent observations on the government space program. Incredibly, NASA still doesn’t get it. They are actually considering using the same old 50’s technology (Atlas, Delta, Titan) for Bush’s Moon and Mars initiative! You were being too kind to the Space Shuttle, it didn’t meet any design goals. It could barely limp into a low earth orbit. It has prevented real space travel for over 20 years now. Burt Rutan just demonstrated that the Air Force and NASA could have provided routine, on demand, manned access to space long ago. Your reference to Dyna Soar is a perfect example. The formula is simple, space planes for crew transport, big dumb disposable pressurized two-stage rockets for freight. Add an on-orbit nuclear tug (NERVA technology) and you have a space transportation infrastructure that would easily had us permanently in space and on Mars by now. Then we could then use J2EE to manage the logistics requirements of a space-faring society :)

    Posted by: ben999 on June 21, 2004 at 11:38 AM

  • Do you know what you are talking about? Some deplored CMP, lamented JDO, and produced lightweight POJO persistence solutions (like Toplink and Hibernate). The JDO specification was released in 2002. Toplink predates JDO by many years, and Hibernate was first released in late 2001. So how do you come to the conclusion that either of these products were influenced by 'lamentations' about the JDO spec? And in what sense is JDO less lightweight? (or less POJO?)

    Posted by: tom_davies on June 21, 2004 at 06:18 PM

  • Getting back to the moon Sadly the replacement for the Shuttle which COULD well have met the targets the Shuttle was meant to meet (but couldn't because the original design was changed time and again to please some congressman's constituency) was cancelled when the prototype was 90% complete. Venturestar would have been what the Shuttle was meant to be and more. A true SSTO that would have lowered the cost of space transportation to the sub-$1000 per kilo class (which is what is needed to make it commercially viable) as well as enabling frequent launches with a turnaround time of days or weeks instead of months. That too fell victim to political backstabbing as congressmen vied for contracts that would put their states into the limelight of space exploration by getting universities and industry in their states involved in space probes and rockets. I don't agree with the need for dumb rockets. IMO an unmanned SSTO would do better in lowering cost (even better, create a single SSTO that can be used both manned and unmanned so crew can be added as needed and a larger production run of vehicles lowers unit-cost). X-43 is a step in the right direction of creating the engines needed for a true SSTO that can land and take off from conventional runways. Combined with the lessons learned from X-33 and Spaceship 1 let's revive Venturestar and make it commercially viable (which was the plan anyway, something else some people didn't like to see). IMO you're being unduly hard on the Shuttle for another reason as well: it's served 20 years beyond it's projected lifecycle already. Initial plans were for the Shuttle to be an interim solution to gain experience in reusable launch vehicles until a true SSTO could be fielded in the mid 1980s. That plan didn't work and X-33 wasn't started until 10 years later only to be cancelled when almost complete. We're now looking at not having a Shuttle replacement until 35+ years after that replacement was to have entered service, all because of political infighting and backstabbing, not through any technical reasons to speak of at all.

    Posted by: jwenting on June 22, 2004 at 12:30 AM

  • That's what I get for using big words ;-) I was actually "lamenting" that JDO wasn't included as part of the J2EE spec. I intended the first definition below (from dictionary.com): la·ment ( P ) Pronunciation Key (l-mnt) v. la·ment·ed, la·ment·ing, la·ments v. tr. (1) To express grief for or about; mourn: lament a death. (2) To regret deeply; deplore: He lamented his thoughtless acts.

    Posted by: johnreynolds on June 22, 2004 at 05:35 AM

  • That's what I get for using big words ;-) Sorry to jump on you John, but it sounded as though you were putting CMP and JDO in the same category. Don't lament JDO's exclusion from the J2EE spec. One of its strong points, technically if not politically, is that it functions just as well outside a J2EE container as inside. Of course it would be nice if EJB3 used JDO 2.x as its persistence mechanism, because it is a simple to use standard with robust implementations. It could have had a robust open source implementation too, as one of the goals of JDO 2.0 was to broaden the specification to allow Hibernate to become JDO compliant. Perhaps this should still be done unilaterally? Many people have happily written J2EE applications without using entity beans, and I will continue to use a persistence technology which works for me. Tom

    Posted by: tom_davies on June 22, 2004 at 05:45 PM

  • The x-43 breaking the record is big success to bad they don''t have plans in place to follow it up X-43 Sets New Speed Record

    Posted by: graywolf on November 16, 2004 at 04:48 PM





Powered by
Movable Type 3.01D
 Feed java.net RSS Feeds