http://www.spectrum.ieee.org/WEBONLY/publicfeature/jun04/0604aca.html