http://www.acm.org/technews/articles/2001-3/1207f.html#item16