Here are a few of my favorite software engineering related books I’ve read in the last year. To make this list the book had to be something I read in 2009, and it had to be interesting, useful, or just plain insanely great at totally changing my perspective on something.
I mentioned Innumeracy: Mathematical Illiteracy and Its Consequences a few posts ago. I just finished reading the book this weekend so I thought I’d give my final impression of it.
I just took a look around my work area to see what the most useful thing has been over the past week. It has been a rather long week since I’ve been studying for an exam. There is nothing I hate worse than exams. They are the least practical way to evaluate real knowledge that I can think of, but that is another story. What I found to be most useful is How to Prove It: A Structured Approach, a book that does a good job of presenting a very important skill for anyone working toward a degree in Computer Science (or math I imagine). I really wish I had known about this when I was getting my Bachelor’s degree. It would have helped a great deal with the “introductory” courses in discrete math, computer science theory, and graph theory.
If I could only recommend one book that every software engineer must read it would NOT be The Pragmatic Programmer: From Journeyman to Master, but to be fair I’m not sure what it would be. I will say that when you graduate with a B.S. in Computer Science your university should send you a copy of this book.