While I don't consider myself an expert at programming by any means, here's a brief list of books on my current reading list. I've managed to get through some and am slowly working my way through others.
Note that some are rather expensive. Some time back, I started setting aside a portion of my paychecks for the reading list. Usually by the time I'm ready for the next one, I can afford it.
Please note that a) the books are listed in the order that I thought of them and b) the links take you to the most recent listing on FatBrain using the Monastery's [isbn://] link.
That said, here's one monk's (incomplete) reading list:
- The Art of Computer Programming, by Donald E. Knuth
- The Pragmatic Programmer, By Andrew Hunt,David Thomas
- Object-Oriented Software Construction, By Bertrand Meyer
- Design Patterns: Elements of Reusable Object Oriented Software, By Erich Gamma, et. al.
- Analysis Patterns, By Martin Fowler
- The Mythical Man-Month: Essays on Software Engineering, By Frederick P. Brooks Jr (note: anniversary edition)
- Code Complete: A Practical Handbook of Software Construction, By Steve McConnell
- After the Gold Rush: Creating a True Profession of Software Engineering, By Steve M. McConnell
- Rapid Development: Taming Wild Software Schedules, By Steve McConnell
- Software Requirements, By Karl E. Wiegers
- Debugging Applications, By J. Robbins (Note: While written for Visual Studio, this outlines techniques useful for any language, platform, or environment.)
- Code, By Charles Petzold
- Dynamics of Software Development, By Jim McCarthy
- About Face, By Alan Cooper
By the way, I second merlyn's suggestion for reading source, though wish to add an adjective: read good source. Look for stuff by people whose coding skills you (hopefully) respect. For example, I've been reading the source of CPAN modules by Lincoln Stein, Gisle Aas, <a href=http://search.cpan.org/search?mode=author&query=tilly">tilly, dominus, and others that've been mentioned before.
While it's possible to learn from bad code, there's a danger that you'll pick up bad habits in the process. Save yourself the effort and start with the good stuff
Also, it helps to locate some good periodical sites and go through their archives. TPJ, for example, has published some really useful stuff. Personally, I'm looking forward to the re-opening of their archives.
--f
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
|
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.