Diasparsoft Logo Let's write software that people understand.

Home | Contact

Training

JUnit support

Outsourcing

The work that Diasparsoft did for us was outstanding. We are now using the software on a daily basis and their work could well have a dramatic impact on the Reds' organization in the near future.Cincinnati Reds Baseball Club.


Publications

Tips & Tricks

Diasparsoft Toolkit

What is Diaspar?

Interesting Bits RSS

Tuesday, October 26th

XP Day Toronto 2005 is on the air!

I watched the No Fluff, Just Stuff tour cancel its Toronto engagement last summer with disappointment. I attended IBM's CASCon recently and enjoyed the experience, which affirmed (in my mind) a decision to host XP Day Toronto, a one-day conference aimed at the Toronto-area software community. The principal goal of the conference is to bring together the XP-curious and the XPerienced in and around Toronto for a day of tutorials, coding and Open Space. We wish to lower the barrier to entry into the XP community with an inexpensive, one-day event that will deliver a comprehensive introduction to the topic. We also wish to give the local XP community a chance to meet and discuss what it is doing through Open Space sessions. Early registration ends December 31, 2004, after which point the price increases, so register today!

jbrains on 10.26.04 @ 01:03 PM ET [link]

Speaking at TASSQ on 10/26/2004

I will be speaking tonight at the monthly dinner meeting of TASSQ, the Toronto Association of System and Software Quality. Click here for details on the talk, which concerns the relationship between testers and programmers. Being mostly a programmer in a roomful of mostly testers will be an interesting experience, to be sure. I am quite looking forward to hearing their stories about experiences with programmers, as they will provide a good complement to my stories about experiences with testers, both good ones and bad ones.

jbrains on 10.26.04 @ 12:57 PM ET [link]

Thursday, October 21st

10-second review: Working Effectively with Legacy Code

If you need to fix, maintain or extend code without tests, and you're trying to do it without having a copy of this book by your side, you might as well just jab yourself in the stomach with a knife. Michael Feathers does for legacy code what the Gang of Four did for design: establish a vocabulary to make it easier to understand and communicate about how to work with legacy code. A complete review is available at MasterProgrammer.info.

jbrains on 10.21.04 @ 06:04 PM ET [link]

Sunday, October 17th

Subversion on Fedora Core 2

I have installed Fedora Core 2 Linux on my main server at home, and when I went to re-install Subversion to host my repositories, I got a scare: I couldn't install the neon component that Subversion needs, due to:

[root@casper Linux]# rpm -Uvh subversion-1.0.6-1.fc1.i386.rpm
error: Failed dependencies:
        db42 >= 4.2.52 is needed by subversion-1.0.6-1
        libneon.so.24 is needed by subversion-1.0.6-1
        neon >= 0.24.7 is needed by subversion-1.0.6-1

No problem! Let me just get that db42 package and install it...

[root@casper Linux]# rpm -Uvh db42-4.2.52-0.1.i386.rpm
error: Failed dependencies:
        db4 = 4.2.52 is needed by (installed) pam-0.77-40
        db4 >= 4.1.25-11 is needed by (installed) openoffice.org-1.1.1-4

What?! All right, after a little chasing on Google got me nowhere, I decided to try something desperate, but as it turns out, logical.

[root@casper Linux]# yum install neon

Strangely enough, it worked, but notice the version it installed: 0.24.7-2.1. Ever so slightly more recent than the version 0.24.7-1 the Subversion site provides. That's one nice thing about using a package management system like yum: someone might just have fixed the problem for you!

After that point, installation proceeded well, not to mention the fact that although I had downloaded Subversion 1.0.6, yum installed version 1.0.8!

jbrains on 10.17.04 @ 11:20 AM ET [link]

Friday, October 15th

Java 5.0: A little bit of syntactic sugar

Fellow Agilist and expert Java programmer Mike Bowler sent me this e-mail, and I thought I'd pass it along to you folks.


One of the tricks that I know we both use when writing tests is to use Arrays.asList() to prepopulate a list.

Arrays.asList( new Object[] {"one", "two"} );

I just realized that Java 5.0 has changed the syntax of asList() to use the new varargs so now it's possible to write this instead:

Arrays.asList( "one", "two" );

Just one of those little things that makes coding more pleasant ;-)


Thanks to Mike for pointing this out. Although I'm not a fan of variable argument lists, I like the nicer code here. It's closer to PHP syntax for declaring an array, which is relatively compact. I would much prefer Ruby-style syntax for literal list values:

["one", "two"]
jbrains on 10.15.04 @ 12:39 PM ET [link]

Sunday, October 10th

UGOT: A familiar approach to testing from Frank Cohen

Recently JavaRanch promoted Frank Cohen's latest book, Java Testing and Design. Given the title, naturally I was interested in seeing someone's viewpoint on how testing affects design. Frank described UGOT -- User Goal-Oriented Testing -- which sounds awfully familiar.

UGOT is a testing methodology that models the behavior of archetypal users of a service. In the book I show how to understand these behaviors and how to turn them into test agent code. The resulting code does a functional test of a service.

This sounded to me like Customer Testing, so I asked Frank about that, and he admitted having little knowledge of Agile testing techniques. His response confirmed what I suspected, that UGOT is essentially Customer Testing with explicit use of the Personas technique of User-Centered Design. I find it encouraging when different communities, working separately, come up with strikingly similar ideas.

Follow the discussion here.

jbrains on 10.10.04 @ 01:38 PM ET [link]