By alexismp on juil. 28, 2004
So, I'm back home from JavaOne. I must say that I had a good time. This may sound very politically correct, but for starters, this year's conference was more technical and more united (IBM, JBoss, etc...) and the networking was great as always.
But hey, one big news is that I'm now blogging! This is really a Sun corporate thing as even Jonathan Schwartz has started his own blog and I believe all this blogging ecology is a very natural thing given Sun's culture. One of the best things about JavaOne is that you can meet people and be curious. I was lucky enough to meet Tim Bray at a Sun-internal conference a few days before JavaOne. His talk was concise and pretty fascinating. Tim seems to be very curious (see here) and has this wonderful ability to explain in simple words pretty much any concept or technology. This, together with Pat's repeated suggestions (thanks for the comment, I now have to live up to the reputation!), is really what got be started with this whole blogging thing. Hopefully I talked my French colleague Eric Mahé into starting his blog real soon.
But back to JavaOne, the things I'm taking back are mainly these :
Tiger: huge release (I'll probably spend the next few week reading O'Reilly's Developer's Notebook) and long release. Still need to wait until late September before it's final. So far, compatibility has been the good surprise of this release. I'm still tracking performance figures, but they already seem pretty good (broader OS/Processor support certainly is a plus there).
Creator / JSF: this was a big topic at the conference and since I've been meeting with many customers lately on the subject I'm glad the product is finally out. It still has a long way to go compared to its non-Java competition, but the basis are very good - JSF for Corporated Developers rather than the "Now my tool does JSF too" approach. One interesting experience I had was with a J2EE customer looking for a RAD tool. He gave Creator the advantage (even before it hit final release) over Microsoft's Visual Studio arguing standard J2EE applications and integration with his existing infrastructure were more important to this him than a mature full-featured product like Visual Studio. Now you can't comment Creator without mentionning JSF. While it is still pretty early in the game, I think that it can do most of what STRUTS does (STRUTS really needs to inovate to keep being up to speed technically) and that while it lacks some features from other frameworks, it is leveling the ground for a great UI component market, providing standard and scalable MVC2 infrastructure but most importantly it was built with tools in mind from day one.
JDNC / JDIC / JavaWebStart: this is really about rich clients and I must say that I like GUI development, that I share many ideas with Amy Fowler (once a JSF spec-lead!) but also that many customers are looking into a better alternative to web clients trying to behave like rich ones. These customers need to have better end-user experience, not require a server for simple things like sorting, but also notification, keyboard-driven application, off-line usage, etc. So, when talking about rich clients using Java on the desktop, there's really three issue: (1) JRE deployment, (2) Application deployment, (3) Java client technology. In the enterprise, (1) can be solved using Windows/Linux masters, Active Directory deployments, or silent installs. (2) is really Java Web Start's job and the technology really got better with version 5.0 - better desktop integration, single instance, lock-down feature, extensive enterprise configuration, smart card support, Pack200 compression, etc. (3) is about Swing vs. SWT and which protocol to choose to talk back to the server. I believe that Swing's increased performance and look-and-feel, JDNC's ease of development (although it's not final and tools are not yet available), JDIC and the Netbeans Platform (not the IDE) are many good reasons for making a strategic choice for Java and Swing as the base technology for competitive rich-based Java clients. The protocol is something I may address in another blog, but let's just say Web Services are not the cure for now as there's no portable stub API and JAX-RPC is not yet part of J2SE, sorry JDK 5.0.
Tools: even looking just at Sun, there's more to tools than just Java Studio Creator! A few things worth noting: Borland joined the JTC (Java Tools Community, javatools.org). Beehive (BEA's new open source project) gained support from Eclipse. Borland now provides some of their tools for Eclipse developers! Meanwhile, NetBeans is making huge progress with its upcoming 4.0 release:refactoring, performance tuning using JFuid technology, ANT-based build system, Tiger (JDK 5.0) support, and J2EE support including EJB and Web Services. I guess an eclipse just can't last forever! Also, Java Studio Enterprise (the commercial version of Sun's tools) previewed UML two-way-editing-with-no-annotation support (nice reverse-engineering demo), collaborative tools (instant messaging for the developer), integrated profiling tools (most of them demoed during James Gosling's general session). Also showed during a technical session was a very nice-looking real-world (i.e. document-centric, long-runing, asynchronous, and conversational) Web Services developement prototype based on Crupi's J2EE extented design patterns (this is all part of the Kitty Hawk project focusing on SOA). Most other tool vendors are coming out with support for things like "visual" Struts, EAI, BPEL, etc. As always, timing is everything and future will tell if UML or JSF are more relevant than BPEL and Struts in 2005. I don't have the answer.
Java & Open Source: no, Sun has not open sourced Java and I believe the debate with James Gosling and others did a good job of asking the main questions: what does Open Sourcing Java really mean and what's in for the developer? To have at least one Open Source implementation of Java? That's already true for J2EE and certainly possible with J2SE JDK. Sun could stick an open source license on Java and not solve the developers pains (this isn't necesseraly true for die-hard OSS bigots who are said to be looking at Mono as a java replacement). The belief is that Sun can fix many issues developers face (bug fixing is probably the top one) without open sourcing java, and weekly builds are a visible first step. It's sun's Glasnost experience.
Among other hot topics, AOP, scripting (Groovy, JSR 223) and EJB 3.0 (J2EE 5.0) were on my todo list and still are (at least before I can comment them here). All have in common great potential, but also the risk of fragmenting either the platform or the community.
Wow, this was a long blog, maybe too long. Next ones will be more bistro-style.