Tech Opinion - What programming books would you recommend?

Date: 2007nov30
Keywords: books

Q.  What programming books would you recommend?


These aren't the only books I have read on these subjects -- just
ones I recommend.  I guess I'm a bit picky.  Hopefully this list
will help somebody avoid the less good books.

Subject		Book

Algorithms	Programming Pearls
		by Jon Bentley

Algorithms	The Art of Computer Programming
		by Donald E. Knuth
		I own all three volumes.  The examples are written in the
		the MIX machine code which isn't implemented anywhere.
		But a good series none-the-less.

Apple ][	Beneath Apple DOS
		by Don Worth and Pieter Lechner
		Of course, totally useless today but the first computer book
		I got into.

C		The C Programming Language (aka K&R)
		by Brian W. Kerniham and Dennis M Ritchie
		Well written and even later editions are still pretty thin.
		Which explains, in part, why the language is a success.

C++		The C++ Programming Language
		by Bjarne Stroustrup
		This is the official book about the language
		so you kinda have to buy it but its not a great book.
		I am sure there are better introductions out there.

COM		Steal This Code
		by Al Williams
		A few years old, just like COM, but great for getting
		an understanding.

Crypto		Practical Cryptography
		by Niels Ferguson and Bruce Scheier
		Apparently everyone reads this book, thinks they know
		everything and implements imperfect crypto systems.
		So don't do that.

Crypto		Disappearing Cryptography
		by Peter Wayner
		Inspired my site

CSS (Cascading Style Sheets)
		Designing with Web Standards
		by Jeffrey Zeldman
		Good blend of the practical and design.

Design		Programming on Purpose
		by P.J. Plauger
		Smart stuff.

Graphics	Graphics Gems
		by Andrew S. Glassner
		After the first one there was a series of at least 5 books.
		Some amazing tricks in these books!

Perl	 	Programming Perl (aka the Camel Book)
		by Larry Wall, Tom Christiansen, Jon Orwant
		The official book but good also.

Recursion	Sructure and Interpretation of Computer Programs
		by Harold Abelson and Gerald Jay Sussman with Jule Sussman
		Man, those MIT people must be smart if this was a first
		year text book.

OOPS		Design Patterns: Elements of Reusable Object-Oriented Software
		by Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides
		This book is a bit overrated.  It formalizes what rational
		people were already doing.  But it introduces now necessary
		vocabulary, like Singleton, that you need to know
		to be in the loop.

Unix/Linux Applications
		Advanced UNIX Programming
		by Marc J. Rochkind

Windows		Programming the Windows 95 User Interface
		by Nancy Winnick Cluts
		This stuff still works in Windows Vista