Fun with graphs – metrics for CruiseControl builds

Update: Woo-hoo… I got the second graph working the way I want. Check out the demo page linked below.

I’ve been playing with XPlanner recently, and I was impressed by the graphs that it could produce. So I knocked up something similar (using the same technology) for CruiseControl.

‘ve been playing with XPlanner recently, and I was impressed by the graphs that it could produce. So I knocked up something similar (using the same technology) for CruiseControl.

You can find a snapshot of it at http://www.users.on.net/robertdw/demo/demo.html… the data behind the two graphs is real, BTW (the reason there were so many broken builds at the start is because it was a brand new project, and the builds didn’t pass until there was something to compile), so this isn’t a fake in any way.

The two graphs I have got up are a pie chart showing proportion of good vs bad, and a time-chart showing number of good/bad builds each day. (What I want to do in the end is have the Y axis of the time chart be the time of day of the builds, so we see when builds of both types cluster, and how long they take to fix)

Obviously for the real thing, I would polish it up and place it in as another tab on the reporting web page. Once I’ve done playing (in a couple of days, maybe a week), I will be committing the result. However, I’d love feedback, and although I’ve sent a letter to the CruiseControl devel list, I thought I’d post this here as well to see what people think.

So… thoughts and feedback anyone? Suggestions? To quote Dr Crane: “I’m listening”. Drop a comment in or send me a letter.

When offshoring can work

I can’t believe I’m writing about this, but here goes…

Offshoring is part of a continuing trend of economic displacement. In its current form, it’s been going since about the mid ’70s, when cheap bulk transportation (ocean-going cargo ships) combined with an increase in industrialisation in undeveloped countries (specifically: Japan and Taiwan at the time) started to result in manufacturing jobs heading to cheaper countries. This trend continued, and now the vast bulk of manufacturing work occurs along the Asian Pacific Rim (though I’d expect Africa to pick up if the political situation there ever stabilises).

Continue reading “When offshoring can work”

Adding unit tests to a J2EE application

I got asked a very simple question today: how do you go about adding unit tests to an already existing J2EE app? In particular, so you can test your logic standalone, without needing to go through a deployment cycle and test it in the server?

Continue reading “Adding unit tests to a J2EE application”

Learning communties – damn, they’re hard to grow

In many ways, the essence of my role at work is to foster a learning community. This is more than just a “learning environment” – all a learning environment does is to supply resources for learning. Essentially, it’s passive, just like any environment is.

Continue reading “Learning communties – damn, they’re hard to grow”

Aliasing problems and final member variables

I hit a really stupid problem today, and I’ve only got myself to blame (as usual). The problem was really simple. I was making an object that needed to know when it was created. This creation date wasn’t necessarily “now”, so I was passing a Calendar object in to the constructor of the object to … Continue reading “Aliasing problems and final member variables”

I hit a really stupid problem today, and I’ve only got myself to blame (as usual).

The problem was really simple. I was making an object that needed to know when it was created. This creation date wasn’t necessarily “now”, so I was passing a Calendar object in to the constructor of the object to represent the creation date.

Continue reading “Aliasing problems and final member variables”

Refactoring the “The Two Towers”

For Christmas, I (like many geeks and non-geeks around the world) got a copy of the “The Two Towers” boxed set (the 4 disc one). Should my wife ever read this, thanks again for this present.

For Christmas, I (like many geeks and non-geeks around the world) got a copy of the “The Two Towers” boxed set (the 4 disc one). Should my wife ever read this, thanks again for this present.

Continue reading “Refactoring the “The Two Towers””

Examples for “More on getters and setters”

At the request of a reader, I’ve decided to post some examples on how something like the Employee class described in Allen Holub’s article More on getters and setters could evolve. This may not be the only way, but it certainly is one way.

Continue reading “Examples for “More on getters and setters””

%d bloggers like this: