One good source is http://home.online.no/~gjon/pinhole.htm.