Keith Devens asks:
I’ve always wondered this: How does an experienced developer dive into the code of a project he’s never looked at before? I mean, do you look at the makefile, see where the main is, and try to follow the execution of the program? Or do you first look at the file layout to try to get an idea of how the app is structured? Do you just open a file that looks interesting and start reading, following the chain of included files around until you get an idea of what some important files are? How do you start building a mental model of the structure of an application while you still have incomplete information as you’re reading the source, when you didn’t have any documentation in the first place?
You get the idea. I bet people who are accustomed to reading other people’s source on a regular basis have a definite process they go through, and the experience they have helps them grasp the structure of a program quicker than others would be able to. Are there any secrets?
Coffee is required, but beyond that, I don’t know. I have never grokked source in a professional setting, usually for me it is makefiles or a little source if I’m curious.