I think that every programmer tried to create a game. At least once. When it happens, a bunch of question usually pops up in the head of the young genious. This website has few excellent answers to the most frequent questions that occur at the beginning stage, so if you feel like creating a computer game but don’t know where to start, check it out.
Apart from general things it nicely covers stuff like shortest path, artifical intelligence, objects, tiles, and much more. These are frequently useful in other applications too.