Click here to Skip to main content
Click here to Skip to main content

Useful Reference Books

, 19 Dec 2011 CPOL
Rate this:
Please Sign up or sign in to vote.
A list of popular reference books sent in by the readers of CodeProject
This is an old version of the currently published article.

I get a lot of requests from readers about which books are best for learning MFC, ASP, ATL etc, but with hundreds of books coming out each year, and technology moving ahead in leaps and bounds, keeping up with what's best is hard. Which books have helped you the most?

Here's a list of favs sent in by readers. If you are just starting out in the industry then don't get lured into buying only books that deal with the language you are working in. Read books on how to program. You will save you and your employer a lot of stress. The "Programming Discipline and Design" section below lists a bunch of great books worth reading.

This page will be moved to a more appropriate section soon (and updated constantly) - but for the moment if you have any additional suggestions just post them in the comments section below!

Programming Discipline and Design

  • Writing Solid Code - Steve Maguire
  • Mythical Man-Month - Frederick P. Brooks Jr
  • Code Complete - Steve McConnell
  • The Art of Computer Programming - Knuth
  • Algorithms - Robert Sedgewick
  • Debugging Applications - John Robbins
  • Taligent's Guide to Designing Programs - Taligent
  • Design Patterns - Gamma, Helm, Johnson, Vlissides
  • The Career Programmer: Guerilla Tactices for an Imperfect World (Apress) - Christoper Duncan

C / C++

  • The C Programming Language (Prentice Hall) - Kernigan and Ritchie
  • The C++ Programming Language - Bjarne Stroustroup
  • Effective and More Effective C++ - Scott Meyers
  • Inside Visual C++ - David J. Kruglinski
  • C++ How to Program - H. M. Deitel, P. J. Deitel
  • Thinking in C++ (2nd Ed) - Bruce Eckel


  • A Programmer's Introduction to C#, 2nd edition (Apress) - Eric Gunnerson
  • Inside C#, 2nd edition (Microsoft Press) - Tom Archer
  • Component-Based Development with Visual C# (M&T books) - Ted Faison
  • C# Essentials, 2nd edition (O'Reilly) - Ben Albahari, Peter Drayton & Brad Merrill


  • Debugging ASP.NET (New Riders) - Jonathon Goodyear, Brian Peek, Brad Fox
  • Designing Microsoft ASP.NET Applications (Microsoft Press) - Jonathon Goodyear, Brian Peek, Brad Fox
  • Debugging ASP.NET - Jonathon Goodyear, Brian Peek, Brad Fox
  • Microsoft ASP.NET Step by Step (Microsoft Press) - G. Andrew Duthrie
  • Depploying and Managing Microsoft .NET Web Farms (Sams) - Barry Bloom

Windows API

  • Programming Windows 95 - Charles Petzold and Paul Yao
  • Programming Applications for Windows - Jeffrey Richter
  • Advanced Windows - Jeffrey Richter
  • Visual C++ Windows Shell Programming - Dino Esposito


  • Programming Windows 95 with MFC - Jeff Prosise
  • MFC Internals - George Shepherd and Scot Wingo
  • Professional MFC with Visual C++ - Mike Blaszczak


  • Professional ASP Techniques for Webmasters - Alex Homer


  • Windows CE Developers Handbook - Terence A. Goggin
  • Programming Windows CE - Douglas Boling (Microsoft Press)
  • Essential Windows CE Application Programming -Robert Burdick (Wiley)


  • Essential COM - Don Box
  • Professional COM Applications with ATL - Sing Li and Panos Economopoulos
  • Creating Lightweight Components with ATL - Jonathan Bates
  • Inside ALT - George Shepherd and Brad King
  • Understanding DCOM - William Rubin and Marshall Brain
  • Programming Distributed Applications with COM and Microsoft Visual Basic 6.0 - Ted Pattison


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Chris Maunder
Founder CodeProject
Canada Canada
Chris is the Co-founder, Administrator, Architect, Chief Editor and Shameless Hack who wrote and runs The Code Project. He's been programming since 1988 while pretending to be, in various guises, an astrophysicist, mathematician, physicist, hydrologist, geomorphologist, defence intelligence researcher and then, when all that got a bit rough on the nerves, a web developer. He is a Microsoft Visual C++ MVP both globally and for Canada locally.

His programming experience includes C/C++, C#, SQL, MFC, ASP, ASP.NET, and far, far too much FORTRAN. He has worked on PocketPCs, AIX mainframes, Sun workstations, and a CRAY YMP C90 behemoth but finds notebooks take up less desk space.

He dodges, he weaves, and he never gets enough sleep. He is kind to small animals.

Chris was born and bred in Australia but splits his time between Toronto and Melbourne, depending on the weather. For relaxation he is into road cycling, snowboarding, rock climbing, and storm chasing.
Follow on   Twitter   Google+   LinkedIn

Comments and Discussions

Discussions posted for the Published version of this article. Posting a message here will take you to the publicly available article in order to continue your conversation in public.
SuggestionOne more book for algorithm PinmemberLaxmikantYadav18-Dec-14 2:23 
QuestionRegular Expressions PinmemberDavid A. Gray7-Nov-14 20:25 beginner PinprofessionalAbhijit Ghosh (Subho)27-Jul-14 3:11 
GeneralRe: beginner Pinprofessionalaarif moh shaikh2-Oct-14 21:57 
QuestionBEST BOOK FOR MATLAB AND SIMULINK RTOS (Real Time Operating System) and C PinmemberMember 871975124-Jul-14 23:48 
QuestionMy vote of 5 PinmemberShay Dolev24-Jul-14 9:35 
SuggestionC Language and C++ Language each deserve their own list [modified] PinmemberLyle Snodgrass23-Jul-14 10:21 
Bugwrong section PinmemberSerge Desmedt23-Jul-14 7:28 
QuestionC# PinmemberAnotherKen22-Jul-14 19:41 
GeneralGreat gift to the community! Pinmemberjoeolson22-Jul-14 10:07 
QuestionFREE EBOOKS PinmemberMember 1056530022-Jul-14 9:23 
AnswerRe: FREE EBOOKS PinmemberSerge Desmedt23-Jul-14 7:27 
AnswerRe: FREE EBOOKS PinmemberDivyam Sharma2-Oct-14 21:53 
Question+5 from me PinprofessionalPraveen Kumar Katiyar21-Jul-14 23:38 
GeneralMy vote of 5 Pinmentor_ Kunal Chowdhury _21-Jul-14 21:09 
AnswerUseful Reference PinmemberAlice H. Banuelos4-Jun-14 23:27 
QuestionAnything by Michael Kay on XSLT PinmemberBill Wade7-Apr-14 9:55 
GeneralMy vote of 5 PinprofessionalRenju Vinod2-Apr-14 1:46 
GeneralMy vote of 5 PinmemberJoe Gakenheimer1-Apr-14 17:12 
QuestionOther books PinprofessionalJonas Hammarberg1-Apr-14 4:05 
SuggestionThanks very much for sharing so useful and pragmatic books. Pinmemberemmama31-Mar-14 23:08 
QuestionVote of 5 PinmemberGanesanSenthilvel30-Mar-14 8:21 
AnswerRe: Vote of 5 Pinprofessionalaarif moh shaikh2-Oct-14 21:56 
QuestionCan you please suggest some books for WCF? PinmemberMember 398526425-Feb-14 0:06 
AnswerRe: Can you please suggest some books for WCF? PinmemberLisavon23-Jul-14 17:53 
SuggestionOne more book PinprofessionalRahul VB22-Jan-14 9:09 
QuestionBroken link PinmemberMikeTheFid30-Dec-13 3:29 
SuggestionC# Book PinmemberWamuti23-Nov-13 6:52 
QuestionSlim and useful c++ Pinprofessionalaltomaltes10-Nov-13 13:12 
QuestionSQL Book PinmemberMike Meinz7-Nov-13 8:52 
AnswerRe: SQL Book PinmemberRahul VB21-Jan-14 23:10 
SuggestionSuggesting Few books Books. PinprofessionalPratik Bhuva6-Nov-13 21:21 
GeneralRe: Suggesting Few books Books. PinprofessionalRahul VB22-Jan-14 9:09 
GeneralRe: Suggesting Few books Books. PinprofessionalPratik Bhuva28-Jul-14 2:22 
GeneralRe: Suggesting Few books Books. PinprofessionalAbhijit Ghosh (Subho)27-Jul-14 3:16 
GeneralRe: Suggesting Few books Books. PinprofessionalPratik Bhuva28-Jul-14 2:22 
GeneralI'm not the author of this article PinmemberTarek Elqusi2-Nov-13 11:07 
GeneralRe: I'm not the author of this article PinmemberSteve Wellens4-Nov-13 16:29 
GeneralRe: I'm not the author of this article PinmemberTarek Elqusi4-Nov-13 21:42 
QuestionKindle and Cookbooks Too! Pinmemberdiverbw30-Oct-13 10:16 
GeneralMy vote of 5 PinmemberOshtri Deka16-May-13 2:14 
QuestionGreat list PinmemberMike Hankey10-Feb-13 2:50 
QuestionOld book Pinmembertuanakka11-Dec-12 5:51 
QuestionWindows® Internals Pinmemberserhiy.semenyuk19-Oct-12 0:14 
GeneralMy vote of 5 Pinmemberserhiy.semenyuk19-Oct-12 0:13 
GeneralMy vote of 5 Pinmemberfredatcodeproject24-Jul-12 2:58 
QuestionC++/CLI/MFC book PinmemberZac Greve31-Mar-12 9:14 
QuestionNo VB books why...? PinmemberJαved27-Feb-12 2:34 
AnswerRe: No VB books why...? PinadminChris Maunder27-Feb-12 6:04 
GeneralRe: No VB books why...? PinmemberJαved29-Feb-12 1:25 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web01 | 2.8.150414.1 | Last Updated 20 Dec 2011
Article Copyright 2000 by Chris Maunder
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid