Thursday, September 07, 2006

EclipseWorld, Day Two

For me, today was Rich Client Platform (RCP) day at EclipseWorld. I planned on attending four separate sessions on RCP. As it was, I took a small detour to learn about the Java profiling tools in the Test & Performance Tools Platform (TPTP).

The first RCP course was First Steps for Building Eclipse RCP Applications. It was mostly review for me, but I thought it would be good preparation for some of the more advanced courses. The instructor, Dwight Deugo, did a good job describing the basics.

I also attended Fundamentals of RCP UI Programming. This session was a little disappointing. The instructor is a good speaker, but he spent the entire two hours talking about JFace -- and from a very high level. Although he occasionally showed some sample code, it was difficult to follow along. The sample code wasn't reproduced in the presentation materials. Even though I was near the front, I couldn't see the details. Pity the poor folks in the back.

To complete "RCP day", I planned on attending a two part session called Successful Architecture Design for RCP Applications. I expected this to be about factoring your RCP application into features, plugins and fragments; interactions between views and editors; extension points; the job manager; and other hard-core Eclipse concepts. Ten minutes through the first part, I realized I was mistaken. The session was all about migrating three-tier business applications from the web to RCP. Although the instructor has good "Eclipse credentials", this topic didn't really fit with the other sessions in the RCP track. It certainly doesn't interest me personally.

Rather than sit through the second part of Successful Architecture, I decided to switch to Profiling Java Application Behavior with Eclipse TPTP. This was a revelation. The instructor demonstrated the features of the Profiling and Logging perspective which is contributed to Eclipse by TPTP. The profiling views let you track execution flow, execution statistics, memory statistics and object references in a running JVM. You can quickly sort these views to find hot spots like methods that consume lots of CPU cycles. I use Eclipse everyday but I didn't realize the free profiling tools have gotten this good. For a good introduction of the Profiling and Logging perspective, see this tutorial at


Brian said...

Wow! Did you have to pay for the conference yourself? ;-)

Dave Delay said...

No. My employer paid for it.

I suppose I should be writing only positive comments to convince my boss it was money well spent. Although it wasn't the perfect conference, it really was worthwhile. I'll be writing more about that in the next installment. :-)