There are just so many good books out there that I really don't have the time to
read as many of them as I'd like to, but here's a list of the ones that I have read
and enjoyed. Although I have one or two framework type books listed, you'll probably
notice that most of the programming books attack the technology at a lower level.
I'm a firm believer in understanding how a technology works before using a framework
on top of it. I believe that if you truly understand the technology you will be
better able to apply yourself to it regardless of the framework, or lack thereof,
used.
The C Programming Language
by Brian W. Kernighan
and Dennis M. Ritchie
|
This is where my love of programming began. Strictly speaking you don't need to
learn the C language before you learn C++, but learning C first will make you a
better programmer of C++. I don't know any C++ programmer worth his salt who didn't
learn C first. Once you understand pointers the rest is all downhill. |
The C++ Programming Language
by Bjarne Stroustrup
|
If you're going to learn something there are some very compelling reasons to get
the information directly from the creator, especially when that creator actually
knows how to explain it. This is an essential reference text for any serious C++
developer. |
Effective C++
by Scott Meyers
|
If you are really really really into C++ and want to know how to use the language
at it's most optimal you simply have to read this book. The companion book, More
Effective C++ is also excellent, and a digital version of both books can
be purchased together cheaper. |
Essential COM
by Don Box |
Ok, I admit it, I went through a phase where I idolized Don Box. If you want to
know what's behind all those helper frameworks and really get to the bottom of COM
this is the book that will help you do it. Read it and you'll understand why Don
said, "COM is Love." |
Effective COM
by Don Box,
Keith Brown, Tim
Ewald, and Chris Sells
|
If you love COM read this. Like Scott Meyer's Effective C++, no other book
will make your COM development more efficient and accurate. |
ATL Internals
by Brent Rector and
Chris Sells
|
When I program COM I do it in ATL. No other COM framework produces code as small
or efficient as the ATL framework. It's also a great windowing framework for regular
UI applications as well. If Visual Studio had better support for it MFC would cease
to exist.
|
Programming Windows Security
by Keith Brown
|
Keith Brown has been around for a while and really comes into his own with this
book. I actually met him at a conference in Amsterdam back in 1999, but I was Don
Box blinded at the time and didn't take the opportunity to talk with him. He's an
excellent speaker and writer and your understanding of security will only improve
by reading this book. I believe he has later editions for .NET technologies as well. |
Programming Applications for Microsoft Windows
by Jeffrey Richter
|
Another of my programming heros, Jeffrey tackles a lot of low-level information
in his writing and really delves deep into code. I have never failed to learn something
new and interesting by reading his works. |
Programming Windows
by Charles Petzold
|
Another legend, Charles Petzold wrote the first book for Windows development back
in 1988. The proliferation of frameworks made many believe that they didn't need
to learn to program at the raw API level, so I really looked like a hero when I
came in and knew what was wrong with an application due to my knowledge of what
was really going on under the covers. Learn to program at the API level first, then
learn the frameworks. For Windows systems from Windows 3.1 to XP this is the book
to accomplish the former. |
Javascript & DHTML Cookbook
by Danny Goodman
|
In today's web world it would be very difficult to create a site of any consequence
without knowing a little client side scripting. Danny's books are legendary in the
industry for explaining just how it all works and how the features are implemented
across the different available browsers. This book is especially useful in that
it gives you the actual code for at least 175 of the most common tasks, and some
not so common. I haven't needed to program a client-side task where this book hasn't
helped. |
User Interface Design for Programmers
by Joel Spolsky
|
If you're interested in software management then you've probably already heard of
Joel Spolsky. If you haven't then you really need to check out his extremely informative
site. This book is just as engaging as his management rhetoric as he tackles the
elusive topic of interface design, something no true programmer could love! |
It's not the Big that Eat the Small, but the Fast that Eat the Slow
by Jason Jennings and Laurence Haughton
|
This book is what I call motivational - it doesn't really give you specific items
to try or an action plan for your company, but it serves to energize you about the
product or service you are selling. Filled with great stories of how small companies
made it big over their rivals it's like a Tony Robbins seminar in print. |
Code Complete
by Steve McConnell
|
Not only will your manager love you for reading this book, but so will the team
that has to maintain your application after you're gone. You'll love yourself also
when you have to look at something you did a long time ago and need to get up to
speed on it again quickly. Steve explains in great detail how to code in such a
way that your project is understandable to any other developer. |
|
Amit Kalani's MCSD training books
|
There's something about Amit's writing that's just so... readable. I have used three
of his books to get certified now and he's at the top of my list for future coursework.
He has a lot of samples and requires lots of hands on. |