Tuesday, January 30, 2007

I don't want to be a "regression test slave" !

Yesterday I went to Jfokus, a one-day Java conference in Stockholm.
One of the best talks, in my opinion, was the opening keynote by Simon Phipps, Chief Open Source Officer at Sun Microsystems. He was talking about the motivation of Open source, and there was a few phrases that got stuck in my memory (I hope I am quoting him correctly).

- "Earn a living by giving back" - By giving back you the community, you can feel good about making your own living out of that product/project. I like that phrase.

- "Regression test slave" - someone that is using open source, but does not commit back their patches and new additions to the community. For the complete lifecycle of that OS project they have to maintain their codebase, and make sure they dare to upgrade to a newer version. Doesn't sound so good. So there is a selfish reason to help the community too.

There was a lot of other good content in his talk (regarding licenses etc. ), but I don't recall everything right now, hopefully the slides will be available somewhere soon.

So, what about the rest of the day? I went to the following talks:

Intro Java EE5, EJB 3.0
Mike Keith, Oracle
- A bit to basic (but again, it was supposed to be an intro)
Mike was talking about the "news" of EJB 3.0
I was talking to a collegue about the usefulness of comparing EJB 3 to EJB 2 (which is a technique nobody in the would even consider using nowadays), it would have been much more interesting to compare it agaist for example a Spring/Hibernate solution.
I had a bit of a deja vu feeling too ("I have heard exacly this talk before..."), and when I got home a couldn't help myself from verifying that it was almost the same slides that Mike Keith used at JAOO 2005...

Testing a Java system using Ruby
Ola Bini, from "Karolinska institutet" (and JRuby committer) was talking about how you can use rspec (and Jruby) to test Java code as easy as if it was ruby code.
An hour was a little bit short time to try to fit in an intro of Ruby, Jruby, rspec AND demo the testing framework at KI. But I think that Ola did a good job showing the benifits.
I really like the idea of a "runnable specification", and will see if I can use similar ideas in my projects.

OSGi - intro
I would have preferred a more hands-on talk, telling what you could use OSGi for, but for me, that didn't no much about OSGi before, it was kind-of ok. The best part was the demo the last 10 minutes (using eclipse), and when Rickard Öberg was answering a few questions at the end, of how he can see JBoss is moving towards using OSGi.

Spring Web Services
Arjen Poutsma, of Interface21, was talking about different ways of creating and consuming a web service.
The most interesting part was that he advocates "Contract first", that means that you are specifying the XML-schema/WSDL before the java class, and not by just adding an annotation to a regular java method.
In my post "A few gotchas from consuming .net-webservices with a Linux/Java-client" I talked about the problems that generating a WSDL without thinking about the return types etc. can have. So I personally can really see the point of "contract first" for interoperability reasons, if you have a web serivice that is supposed to support clients written in different languages for instance.

To summarize, it was a day with varying quality of content (some high, some low), and I had a good time and met a lot of people I have worked with before.