What do you keep in your Shu Box?

Alistair Cockburn uses the term Shu-Ha-Ri regularly to explain different levels of learning.
The literal translation is approximately Learn/Follow(Shu), Detach(Ha), Transcend(Ri). A number of people I’ve discussed this with equate these levels to the Dreyfus model of skill acquisition. In fact, the Wikipedia article on Dreyfus links back to Shu-Ha-Ri.
In my opinion, this is doing an [...]

The Curious Case of the Missing Present

Imagine, if you will, a Santa’s grotto in a magical department store. Fresh faced children, still glowing from the snowfall outside, line up to greet the jolly man.
Joy and laughter can be heard throughout the crowd. Parents breathe a sigh of relief that their children are behaving well.
The amazing thing about this particular grotto is [...]

2009 Retrospective

Last year, I chose 5 goals. How did I manage with these?
Write more (this includes blogging and code)
I definitely wrote more code this year, especially early on in the year when Antony and I started Pair With Us. I feel that my blogging is probably around the same amount as previous years. Ideally I’d like [...]

Pomodoro, AppleScript and Adium

I downloaded this Pomodoro Timer from the Apple website.
It has support for AppleScript events, so I created a script that automatically sets my Adium status to away (with an auto-reply) while I am working on a Pomodoro and automatically sets it to Available when I have finished.
After much messing around, trying to work out just [...]

Tiny Types

Mark Needham’s post on micro types sparked an idea in my head that recently came to fruition.
I was pondering on the Narrative Fixture code, and the fact that, although most of the internals are sensibly typed objects, at the FitNesse layer, we do a lot of passing of strings.
The idea (at least, my interpretation) with [...]

Lazynchronous

la⋅zyn⋅chro⋅nous /ˈleɪzɪŋkrənəs/
–adjective

having delegated a task with a desired output to a person or group of persons

Related forms:

la⋅zyn⋅chro⋅nous⋅ly, adverb
la⋅zync, abbreviation

Examples:

Asking your colleague / friend / network a question, where you could find the answer by using a popular search engine, would be a lazynchronous search.
Getting Mechanical Turk to transcribe your screencasts allows you to work lazynchronously.

Origins:
Compound, [...]

Making Feedback More Effective

Patrick Kua recently wrote a Guide for Receiving Feedback. He mentions that one way to understand how to receive feedback is to understand how to give it.
Here are some suggestions for giving feedback that will help to anchor desirable behaviours and enable change in less desirable behaviours.
Give feedback in the second person
One purpose of feedback [...]

Showing FitNesse Test Results in Hudson

Have you tried to get your FitNesse reports into Hudson?
Although it’s simple to get an Ant task to run the tests, and fail the build, it would be nice to see the results in Hudson’s junit report.
Unfortunately FitNesse outputs it’s results in a format that Hudson doesn’t understand. But that’s OK, because it’s all XML.
I [...]

Eclipse Workspace Template

Following on from my Installing Eclipse post, I put together an empty workspace using my recommendations, as well as a couple from the Ivan Moore and Mike Hill session Programming in the Small.
Unzip the template into your workspaces directory and rename it to whatever you want your new workspace to be called. When you start [...]

Do you have enough oil?

I was talking to someone who had had a project manager mention in a retrospective that he felt that the testing was slowing down the delivery. They wanted to stop “wasting time” on testing and refactoring.
When I heard this, I said “That’s a bit like going on a car journey and your passenger telling you [...]