I'm not sure if he updated it on the site linked above (it's not loading for me), but as I remember James was working on a better code base for his tutorials. The theory on this website was good but the code had problems. The updated code was hosted at Google code - http://code.google.com/p/jamesm-tutorials/source/browse/