Wandering the Floor
I've found that one of my favorite places is the exhibitor floor. I've found that a lot of the information in sessions I'm able to find online or in books, but when it comes to rapidly learning about what's going on, nothing seems to beat the pavilion floor. (Exhibitor list).
My first tip of the show to any and all exhibitors - if you make a "business integration solution," good luck. There sure are an awful lot of you on the floor. My unscientific assessment is that the vast majority of the companies on the floor fit into the following product categories:
- Developer Tools
- Application management
- Embedded Java
- Cell phone related products
- Legacy integration
These are all pretty challenging fields for me to get too excited about. A huge majority of the developer tools seem to be aimed at generating large quantities of relatively proprietary and unmaintainable code in the name of "ease of use." I'd be the first to admit that I'm painting with an awfully large tar brush on that one, but I'm amazed how many product demonstrations fall apart when I simply say, "great, now show me the code." A good tool should keep the code in synch and generate comprehensible code. Too much time in the trenches and all that rot...
I was somewhat surprised by the number of companies that seem to be focusing on delivering more sophisticated applications via web browsers. This seems to be running a bit counter to the move toward mobile applications - I've been quite happy with using SiteMesh to simplify my applications and provide a rich desktop client and a slimmed down PDA client.
There seems to be a lot of buzz around JDO. Digging into that more after the show is on my short list. Lots of info at http://www.jdocentral.com/ from the looks of it.
I did find one genuinely new thing. There is a new category that seems interesting as well, a sort of "flight recorder black box" technology. The example of this is I saw at the show was demonstrated to me by Ron Hughes, founder of VisiComp. showed me a technology I found especially interesting.
The idea is that you instrument the bejezus out of your application code, and then when the app dies, you have a complete record of EVERYTHING that was going on, which you can then playback. Every variable set, every method call, every thread switch. It's smart enough to show you when a deadlock has occurred, etc. It generates binary files with all of this data, which you can then look at in the RetroVue desktop app.
This gets really interesting when you think about stuffing the logging tool into your beta software and distributing it with your application. When the app crashes or deadlocks or whatever, the client can then send the application trace file back to the developer for analysis. It's not just a stack crawl, it's a complete record of your application's execution. It's quite impressive, and incidentally a great testimonial to the massively increased power of computers today that such a thing is even thinkable.
As a final note, it looks like NetBeans has been bumped to 3.5, which I was assured at the booth features a bit performance boost. I'll let you know what I find, or you can drop me a line and tell me what you think. http://community.java.net/netbeans/