I'm assuming you have a FreeBSD box handy. If not then you should :-)<p>If you're just getting started with unix and C I'd say start with /usr/src/bin and /usr/src/usr.bin since there are plenty of easy things there like cat, date, etc.<p>Next I'd head over to /usr/src/lib/libc, do a grep for "Chris Torek". Everything he writes is good. Learning low level details about how libc works on whatever platform you're on is always a good thing if you're doing any real C programming.<p>After that it's a matter of taste. Find something that interests you and read that (e.g. if you like kernel stuff head over to /usr/src/sys).
"Code reading requires its own set of skills, and the ability to determine which technique to use when is crucial. In this indispensable book, Diomidis Spinellis uses more than 600 real-world examples to show you how to identify good (and bad) code: how to read it, what to look for, and how to use this knowledge to improve your own code.<p>Fact: If you make a habit of reading good code, you will write better code yourself."<p>Check out this next time you are in the bookstore:<p><a href="http://www.spinellis.gr/codereading/" rel="nofollow">http://www.spinellis.gr/codereading/</a>