Author Archives: Liz

Removing duplication from equality

A neat Java 5.0 snippet to remove duplication of standard equality checks between unrelated classes (eg: to stop Checkstyle complaining). public abstract class Equality<T> { public boolean areEqual(T thisObj, Object thatObj) { if (thisObj == thatObj) { return true; } … Continue reading

Posted in Uncategorized | 4 Comments

The value of code

Value in stories Generally, the features on a project should be those that will provide a value to the customer, for some definition of ‘value’. We can use the template As a <role> I want <something> So that <I get … Continue reading

Posted in Uncategorized | 2 Comments

Fun things to find in your code

An Http utility class with a getGetMethod method.

Posted in Uncategorized | 2 Comments

Dear XP

A musical tribute to the happiness of pairing, task cards, burn down charts and flowing clouds on summer days. With subtitles. http://www.youtube.com/watch?v=zpw8h4OGNxg (Am I going to have this song in my head all day now?)

Posted in Uncategorized | 3 Comments

Automated tests are not a replacement for manual QA

I used to be quite religious over automated testing, but lately I’ve come to realise that sometimes, I might as well run the app and see what happens. Automated tests can’t cover everything. Here’s a few interesting ‘untestables’ that I … Continue reading

Posted in Uncategorized | 5 Comments

Deprecate: a definition

Dictionary.com’s “Word of the Day” for the 8th: deprecate DEP-rih-kayt, transitive verb: 1. [Archaic] To pray against, as an evil; to seek to avert by prayer. It brings to mind the times I’ve deprecated code with that thought: “Dear God, … Continue reading

Posted in Uncategorized | 2 Comments

What does your code do? Or pretend to do?

What code does Code does: Sequencing: performing actions in a certain order. Logic: performing actions according to logic. Transformation: changing data from one form to another. Utility: getting some data from some other data, eg: “cat,dog,horse”.split(“,”). State: removing from, adding … Continue reading

Posted in Uncategorized | Leave a comment

Manual testing: are you working back-to-front?

How do you use tests to drive well-designed code, when you’re not able to write automated acceptance tests? Sometimes we do this, whether there are automated tests or not: Write some code that gets accesses the database (and turns the … Continue reading

Posted in Uncategorized | 5 Comments

The Cost of Change

This is a quick’n’dirty picture of the cost of change (y) against time (x) on a Big Design Up Front project (red) and an Agile one (green). For the colour-blind, the Agile cost is the one that stabilises with time, … Continue reading

Posted in Uncategorized | 16 Comments

Ten Tips for the Agile Martian Coach

Communication is important. Ensure that your Martian has a working translator. Provide expletive vocabulary as required. All Martians look alike. All humans look alike. Wear name badges and teach each other how to pronounce them. Remember that alcohol may have … Continue reading

Posted in Uncategorized | 2 Comments