Author Archives: James Furness

Java Concurrency Refcard

A handy concurrency refcard from Alex Miller is now available on DZone. Most of this should be second nature for experienced Java developers, but it provides a handy summary of concurrency and reminders of some of the less frequently used (and hence more easily forgotten) classes like ConcurrentSkipListSet, Atomic*Array etc.

Achieving Inbox Zero with GMail

Some tips on using keyboard shortcuts to speed up daily GTD email chores. I have personally been following a similar system also based upon Lifehacker’s trusted trio, but with “@” prefixes to the labels so they appear at the top of the list, filters so I can email todo items directly into my @action list […]


I have been having some problems with my employers’ remote access system which uses Aventail SonicWall. Unfortunately it seems that whilst it was previously working fine, some change to my PC means that the Aventail applet (used to verify the endpoint is running the Aventail system scanning agent) does not work correctly so access is […]

Thanks RAID!

After occasionally wondering over the past 2 years whether spending money on extra drives to build a RAID 5 array in my desktop PC was worthwhile, I now feel vindicated after one of my drives (a Western Digital WD5000YS) failed over the weekend. Upon restarting my PC, Intel Matrix Storage Console was able to identify […]

iPhone OS 3.0

After repeatedly retrying the upgrade for about 3 hours due to activation server errors I was finally able to upgrade by Wednesday evening. Since then things have gone pretty smoothly. Finally having the ability to copy and paste is a godsend, as are basic things one would expect from a phone like sending contacts to […]

Migrating from GMail to Google Apps

A quick guide to migrating contacts, calendar, email and email filters from GMail to Google Apps.

Domain Specific Languages for automated testing of FIX messaging

A DSL using the “Oslo” toolset that is capable of expressing order generation and responses from a range of market behaviors in terms of FIX messages in a dialect suitable for use by traders and financial engineers


Just came across this, looks like it has been around on Sourceforge for a while as part of lib-high-scale. Designed for large numbers of CPUs (e.g. Azul hardware), but microbenchmarks claim a small improvement over ConcurrentHashMap even on 2 CPUs.

Patching Apache on Debian

Steps for applying a patch to the Apache source tree and building a Debian package of the patched Apache in order to install via apt as normal.


After planning to do this for some time, I have finally finished setting up my domain as a blog. Still not 100% finished with the layout, which required an ugly javascript hack to sort out the column heights, but at least I can start posting now!