Ian McGonigle A software craftsman with too many interests and never enough time to explore them all.