All work and no play makes Joe a Dull Boy.

May 8th, 2008

So I have had an opportunity to go out the past few nights with some former colleagues. Last night I decided to stay close to the Hotel. I had dinner at the bar/resturant that is in the hotel. I met a rookie bartender that didn’t know how to make a long island ice tea. Well after a few long island ice teas I had her pouring the 4 shots of clear liqueurs in 1 pour.

Here is the photo:

The owner of the restaurant asked me to email him the photo so he can put it on the wall. So now I am photographer that has been published in San Francisco.

Unit-Testing Database Operations with DBUnit

May 8th, 2008

This was a session that showed off the DBUnit framework. DBUnit framework is based on JUnit but facilitates the testing of operations that update the Database.

It is important to put the database into a well known state before starting the tests.

Could be tested using JUnit, but there is a lot of code. Lots of code to initialize the DB, and then a lot of code to verify the results.

DBUnit is a framework for doing this type of coding. There is representations of what the data should be when the test starts, and representation of what the data should look like after the test.

This looks really promising for those types of tests that update data. It would also have excellent application to more than just Unit tests, but also automated testing of any kind of data.

It’s All About the SOA: RESTful Service-Oriented Architecture at Overstock.com

May 8th, 2008

This session was a case study in RESTful Web Services.

Restful web services really is a light weight web services implementation. There is no specification. There is only style. REST does not use any of the ws-* specification.

Overstock.com rolled their own implement ion of RESTful web services. They were very animate about not wanting to use any of the SOA tools such as an ESB.

I suspect that Overstock.com will eventually experience service sprawl and will be looking to some of the ESB type applications to help them out.

I’m not sure I am a fan of these RESTful web Services. The lack of an interface specification seems to me that it will be problematic in the future. Of course I need to learn more before I can really make a determination.

Groovy, the Red Pill: Metaprogramming–How to Blow the Mind of Developers on the Java™ Platform

May 7th, 2008

This was really an eye opening presentation. I knew nothing about Groovy other than it was a language that ran on the JVM and had something called Closures.

Groovy syntax can be exactly Java Syntax. Groovy gives the ability to create domain specific languages using Method pointers. I’m thinking that a domain specific language could be created as a replacement for WLST.

I finally understand what a Closure is. Maybe it wasn’t all that hard to being with. But it is a hunk of code that doesn’t have a class that you can pass around with method pointers.

I love some of the syntaxical sugar that Groovy gives like the way for loops are done. The operation overloading, etc.

Groovy is also great for testing. I can’t wait to get in and write some decent test cases. I always found writing unit tests to be a pain in the ass. This might be a way to expedite the creation of unit tests.

I’m going to be looking more at Groovy and Grails.

Morning General Session with Oracle

May 7th, 2008

Oracle has the morning general session today. Here are some random thoughts.

Sun guys are all wearing jeans. Oracle.’s guy is in a full suit.

Oracle is pushing their Application Development environment. More drag and drop programing. Which sometimes is

nice, but I can’t help but think that they are trying to do with Java what Microsoft has done with VB, Visual C++, etc.

They also announced the Oracle Enterprise development plugin for eclipse. This is going to be available for Free.

Oracle is showing off some of it’s SOA stack, specifically it’s process orchestration based on BEPL. Of course none

of the BEA products seem to be shown here. They do reference that their process orchestration can integrate with an

ALSB service. But that is nothing more than any other Web Service. There was no real spot light on any BEA

products during the SOA portion of the conversation.

During the Grid portion of the Oracle talk, they are showing the JRocket Liquid VM running an Order Entry system, an

Oracle Coherence Data Grid and Oracle Application Server running on JRocket.

I was really disappointed that the Oracle presentation really didn’t talk about the direction of BEA and/or WebLogic. Maybe this wasn’t the time or the place, but that is what I was hoping for.

Virtualizing a Virtual Machine

May 7th, 2008

This session was given by a pair of engineers from AMD. At first it started out as a commercial for the AMD-V chip. Which is optimized for Virtualization.

There were some interesting things about virtualization that came up.

First, the really do recommend using the JRocket Liquid JVM from BEA.
Next, you really have to look at your Network requirements when you have virtualization. You need to tune your Network buffers. They found that if you use a an IO buffer size 64K works best for sockets streams.
Also, if you have a network switch that is using auto negotiate and your Guest OS network devices use a fixed speed like 100 Base-T, the negotiating does not always work. So you need to fix your switch to the same network speed that the Guest OS network devices use.

The most disturbing piece of info that I received was that if you have a Linux Guest OS with more than 800 megs of RAM, the translation from the Hardware memory addresses to the VM Memory addresses becomes a bottleneck. This has some big implications for one of my projects that I am working on now. It might be time to take a closer look at the JRocket Liquid VM.

Tuesday Sessions

May 6th, 2008

The Duke and the Elephant: PHP Meets Java™ Technology–the Best of Both Worlds
This session turned out to be a commercial for an IBM Product called WebSphere Smash. It has a PHP interpreter on a Java Application server. They came up with some neat ways to have PHP call Java and vis versa. There were a couple of good points about the grass routes growth of PHP and how eventually we are going to see more and more PHP in corporate IT.

What was interesting is that they wrote an interpreter in Java for PHP and not compile PHP straight to Bytecode. They do have a protype to go directly to Byte Code, but it is not in the product. As it turns out, there is no PHP specification for them to follow, and no complete set of tests to confirm that your PHP code is behaving properly.

More “Effective Java”
I am a huge fan of Jashua Bloch. His book, “Effective Java” is by far my favorite technology book. Joshua has come out with the 2nd edition of this book. He presented a few of the items from that book.
He spent a lot of time speaking about Enumeration and the ways to use them. Very powerful stuff. In the first edition of his book he presented an Enum pattern. Well that Pattern is now gone as Java 1.5 now has a built in Enum construct.
I’m going to pick up the 2nd edition of Joshua’s book. He did do a book signing but I had to get to another place.

Spring Framework 2.5: New and Notable
This was just an update as to the new features of Spring 2.5. A lot of support for annotations and meta annotations (annotations on annotations.) By the end of the talk my head was spinning with the annotations. The speaker put up a lot of code examples and jumped from slide to slide. It was very hard to follow.
Support for OSGI was also added to Spring 2.5. OSGI is a mechanism for managing and loading dependencies at run time. This is important when you are using open source components that depend on other open source components and you might have conflicts with the versions that you can use.
OSGI is going to be huge in Enterprise Java. All of the major application servers are going to re-architect their application servers to use OSGI. Knowledge of OSGI is going to become a requirement for Server side Java development and administration.


GlassFish™ Project v3 as an Extensible Server Platform

I know nothing about Glassfish coming into this talk. Seems there was a talk earlier that the speaker is referring too. I would like to get further into Glassfish as it might provide a nice alternative to WebLogic and more functionality than just using Tomcat. OSGI was also a big part of Glassfish.

I bugged out early from the GlassFish talk. I’m going to start my walk through the Vendor Pavilion.

I have one more session to go to from 6 – 7 pm. Virtualizing the JVM. It should be interesting and applicable to one of my current clients.

Rocking the Free World with Java

May 6th, 2008

So one of the last segments of the Key Note address, Jonathan Schwartz (CEO of Sun) came onto the stage. After a bit of bander he introduce Neil Young to the stage. When I heard they were calling up Neil Young, I really had my doubts about what it was going to be about.

Neil Young is involved in a project to get his Entire Anthology onto Blue Ray disks. The Blue Ray disks play the music while you are navigating his archives of photos, and papers and videos of the media (CD, 45, 8 Track, etc) that his music was originally published on. He claimed that this is something he has wanted to do for a long time, but until Blue Ray and Java navigation on Blue Ray, it was not possible.

I must say the segment was probably the coolest segment I have seen from a Key Note Address.

Another thing that Neil Young has going on is an entry into the Automobile X-Prize. It has sensors (based on Java) that measure the energy in and out of the vehicle.

RIA, Another Buzz Word?

May 6th, 2008

The Key Note address was is being led by Rich Green EVP of Software at Sun.

He started out by introducing a term or at least a new term for me, RIA (Rich Internet Application). He really didn’t define it well. It seems to be a combination of Agile Development, SOA, and browser base applications that can be run on any device. Seems to be a bit like mash ups.

They showed a demo of a Browser based Java Application running the new Java Plugin that connected Web 2.0 sites like face book, twitter, flicker in one view. The demo broke. I think the pipe here in the Moscone Center was an issue.

The demo also used Java FX. Java FX has 3D Graphics, codex High Def video, sound, a scripting language, etc. The crux of the Key Note really seems to be using Java FX to build these RIA.

With everything that he keeps saying about these really cool Java Application on mobile devices and how Java is not available on the(my) IPhone. :(

JavaFX is not out yet. Early release will be available in July. Perhaps the Java IPhone

Java One Is Huge

May 6th, 2008


So I just heard that there are 15,000 people at JavaOne. The line to get into the General session went around not just 1 block but 2 blocks. Of course once you got down the escalator the traffic lessened quite a bit.

We are being tracked. In the conference badges is a RFID chip. They are going to use these chips to make sure that you are registered for a session. They also have biometric sensors around the Moscone center to track the movement of people in and out of sessions and around the convention. JavaOne meets 1984.

The first Key Note speaker has a big spot light on JavaME, and the types of devices that can JavaME can power. Things from mining sensors to pace makers.