Alan's amusing and surprising homepage

Finding problems, solving problems, writing software.