Sun+Oracle

This week, it became clear that Oracle buys Sun. Personally, I think this is much better deal than if the IBM-deal had gone through. Just by looking at the corporate culture, it must be a hell of a lot easier to merge Oracle and Sun than trying to squeeze the laid-back-California-minds of Sun into the business suits of The Big Blue.

Oracle has a great history of software acquisitions and Java is so important for Oracle that it is probably in the best of hands.

Java 7

Will there be a Java 7? Will IBM’s potential acquisition of Sun affect Java? It most certainly will, but how? Will there be a JDK 7 and no Java 7? Follow the discussion at TheServerSide.

JUnitMax

Kent Beck has released JUnitMax.

“JUnit Max is an Eclipse plug-in that helps programmers stay focused on coding by running tests intelligently and reporting results unobtrusively. Every time you save a Java file, Max will run your tests and report errors like compile errors. In addition, Max runs the tests most likely to fail first, so you only have to pay close attention to test results for a second (literally) before getting back to coding, even if you have a long-running test suite.”

Running tests in the background is nothing new. A continuous testing plugin for Eclipse has existed for a while. What is new here is the logic deciding in which order the tests should run. But I am not sure people are willing to pay $2/month for it. There are too many free tools out there… I will be waiting for the NetBeans plugin before i give it a try anyway…

Integrating with ScrumWorks

In an earlier post, I wrote about ScrumWorks. After having used it on a couple of projects I have gathered some thoughts here.

I usually prefer the good old whiteboard with post-its or an Excel sheet to track progress and generate burndown charts. But ScrumWorks has proved to be an excellent alternative to these old techniques. Developers find it pretty easy to use, and ScrumMasters get a pleasent user interface and a nice burndown chart almost for free.

So what is the downside? Well, sooner or later you will be asked by management to report progress. And managers are usually not willing (or capable) to using any unfamiliar tools, so you end up exporting the data to make some burndown chart or excel sheet available for them. This type of status reporting is overhead (or waste in lean terminology) and boring.

Luckily, ScrumWorks has a decent Web Services API which makes it fairly easy to extract the information you want. For example generate live burndown charts automatically on a wiki, or use the task information in ScrumWork to verify valid commit comments in a Subversion hook script. Imagination is the only limit…

NetBeans 6.5

NetBeans 6.5 is now available for download at netbeans.org. I have been using the beta and release candidates for some time now, so there should not be too many surprises. The feature I am happiest about right now is that it is possible to configure projects independently. This enables me to push out code conventions in the root pom.xml file for the entire project. Hence there is no excuse for not following the conventions 🙂

Download NetBeans!

Mockito

If you are going to set up a completely new greenfield project, I would definately consider using Mockito as mock framework. It expressive and very intuitive, and results in less boilerplate code in your tests than for example EasyMock.

Very few of us are so lucky to be setting up a completely new project, but are stuck with legacy code that probably require more advanced features than those offered by Mockito. In this case I would probably go for a combination of EasyMock and PowerMock.

PowerMock

The last couple of weeks, I have been testing a mock framework called PowerMock. See The PowerMock website for more information and download.

The short version is that this framework extends Easymock and lets you mock static methods, private methods, construction of new objects, bybass encapsulation and more to enable testing of code that used to be considered difficult (or impossible…?) to test.

JavaOne 2008

At Javarforum in Malmö yesterday, I gave a presentation about JavaOne 2008. Please see under Resources if you are interested in downloading the presentation.

The content of the presentation is:

  • Java + YOU
  • Upcoming Java Language Features (abstract from TS -5581 and TS-6185)
  • Future of Java (from TS-5581)
  • Boldness (abstract from TS-6213)