Financial/Investment/Money Books
The Millionaire Next Door
By Thomas J. Stanley, William D. Danko
This is one of the books I've cited the most amongst friends. In a sea of wealth management, financial management, how to be wealthy, etc. books, this is the best out of all of them. Rather than give you random advice, the authors (both Professors) decide to do something simple. They surveyed a bunch of rich people, looked at the results, and found common patterns. No B.S., fluff, or nonsense, just conclusions based on stats with a mixture of great stories in between.
Rich Dad, Poor Dad
By Robert T. Kiyosaki, Sharon L. Lechter
Unlike most people, I'm not going to outright bash this book. The book offers several points that are half decent, such as people needing to have a "financial education." The problem with the book is that it doesn't offer much concrete advice. People shouldn't take the book seriously.
The Wall Street Journal Guide to Understanding Money and Investing
By Kenneth M. Morris, Virginia B. Morris
A short little book that gives you an introduction to the financial markets, not half bad.
How to Read a Financial Report : Wringing Vital Signs Out of the Numbers (How to Read a Financial Report)
By John A. Tracy
Likewise, a simple book to learn about basic accounting. I read this to get an idea how to read income statements, balance sheets, and things like that. I still don't understand all of it, but now I have a clue.
The Warren Buffett Way
By Robert G. Hagstrom
It's an interesting read on the investment magic of Warren Buffet.
One Up On Wall Street
By Peter Lynch, John Rothchild
An interesting read on Peter Lynch's investment magic while managing the Magellan fund. It's a decent read and doesn't make investment analysis seem boring.
Secrets of the Millionaire Mind: Mastering the Inner Game of Wealth
By T. Harv Eker
If I recall correctly, I had a layover, got bored, and bought this. I wouldn't recommend it, it's got a lot of typical high-level motivational advice.
Business/Management Books
Fish!
By Stephen Lundin, Kenneth H. Blanchard, John Christensen
Fish! Tales
By Stephen C. Lundin, Harry Paul, John Christensen, Philip Strand
Fish! Sticks
By Stephen C. Lundin
These books are from the Fish! line of management books. I got the first book from a friend in college when I was going through a "what am I going to do with my life/career" phase. I think many find the story/management style in the book somewhat insulting. I think that comes from taking the book/series too seriously. The main ideas are worthwhile and should be applied uniquely for each situation. For me, it did give me a way to look at things differently.
Novations: Strategies for Career Management
By Gene W. Dalton and Paul H. Thompson
This book was recommended to me by a CS recruiter I worked with. This is a great book for any young career professional to read. You get some insights into office politics and how it affects your career.
Good to Great: Why Some Companies Make the Leap... and Others Don't
By Jim Collins
There's some good ideas, case studies, and interesting insights into (as the title says) why some companies succeed while others fail. My main criticism is that they go heavy on the case studies. It really slows down the pace of the book.
Delivering Happiness: A Path to Profits, Passion, and Purpose
By Tony Hsieh
Many management concepts in this book aren't new, however the stories and examples in this book are far more entertaining than other books (e.g. Good to Great). Much of the book reads like a blog post rather than a management book.
Who Moved My Cheese? An Amazing Way to Deal with Change in Your Work and in Your Life
By Spencer Johnson
I talk about this in a blog post. Summary, not my cup of tea.
The Innovator's Dilemma
By Clayton M. Christensen
A
classic book about disruptive technologies. I like a number of the
case studies presented, but I think it droned on just a bit long with
the examples.
Sports Books
Moneyball
By Michael Lewis
This is my absolute favorite book of all time. Moneyball mixes everything I've ever found interesting into one book: baseball, statistics, economics (placing value on certain commodities), analysis (finding information others can't), management (change in an organization). It's brilliant.
3 Nights in August
By Buzz Bissinger
A good follow up book to Moneyball, as it also discusses the human/emotional side of baseball that can't necessarily always be described by statistics. I talk about it more in this post.
Baseball Between the Numbers
Edited by Jonah Keri
After reading Moneyball, if you really want to start learning about sabrmetrics in more details, this is the book. It also gives some interesting contrasting viewpoints to what is said in Moneyball.
One Last Strike
By Tony La Russa
An overview of La Russa's last season. Not as good as 3 Nights in August, as there was less about the day to day strategy involved. Some discussion of player management was still there, but overall not as balanced.
Blind Side: Evolution of a Game
By Michael Lewis
I've never seen the movie based on this book. I saw the trailer for the movie and said to myself, "I'm not going to see the Hallmark-like retelling of this book, this book is a football book!" The best part of this book is its discussion on how football strategy changed over the years. They then discuss how it affected the football ecosystem (economics, recruiting, etc.) and how Michael Oher fit into the changing ecosystem.
The Extra 2%
By Jonah Keri
Overall a decent book about how the Tampa Bay Rays turned their organization around. It's more a case-study on how to turn around an organization than a baseball book, which disappointed me a bit. But there are some good management stories for me to keep in mind and some insights into the business of pro sports. Some of the Rays social media efforts were particularly interesting, such as their letter to Baseball Musings. Only late in the book do they begin to look at some of the stats or trades that turned around the team.
Social Science Books (how do I classify these?)
Freakonomics
By Steven Levitt, Stephen Dubner
SuperFreakonomics
By Steven Levitt, Stephen Dubner
I love the Freakonomics books. Applying statistics and economics to a range of random subjects and entertaining topics. I love referencing the stories in these books in conversations.
Everybody Lies: Big Data, New Data, and What the Internet Can Tell Us About Who We Really Are
By Seth Stephens-Davidowitz
Sort of like a follow up to Freakonomics (written ~10 years later) but with more and better data. Loved it.
Never Eat Alone
By Keith Ferrazzi, Tahl Raz
I can't remember how I came upon this book. I think I just saw it in a Barnes & Noble. It's a pretty decent read on people networking and its value. It definitely gave me the motivation to keep in touch with people better. One story they tell in the book is how Bill Clinton used to keep index cards in a shoebox about the people he met. I figure if Bill Clinton can use index cards and a shoebox, I can surely do better with a computer ;-)
Battle Hymn of the Tiger Mother
By Amy Chua
An entertaining read, as Amy Chua recounts stories of her upbringing of her children. I talk a bit about this here and here too.
Fooled by Randomness
By Nassim Taleb
The principle of this book is good, and there are some decent stories/examples. However, Taleb's writing style isn't to my liking and things drone on. I struggled to get through the book and eventually gave up in the middle.
Outliers
By Malcolm Gladwell
I love this book, I've cited it so many times in conversations. Personally, I always believed some if the ideas in this book, but just didn't have proof. Now I do! The title of the book is terrible though. It should be more like, "How random things mean so much more than you think."
The Tipping Point: How Little Things Can Make a Big Difference
By Malcolm Gladwell
Another Malcolm Gladwell book with interesting insights and stories.
Blink: The Power of Thinking Without Thinking
By Malcolm Gladwell
The weakest of the Gladwell books, Gladwell doesn't really do a good job of telling stories in this one. He seems to drone on about the same topics over and over again.
Talent is Overrated
By Geoff Colvin
Colvin goes over the latest research that more or less says that "natural gifts" or "born with this talent" is a bunch of B.S. His argument is that hard work and practice is what gets you to become excellent. The book is an interesting read, with a lot of interesting stories about great performers/achievers and how they got to where they are. The book got a little boring towards the end, as the examples wane and theory of how to succeed comes in, but overall its a good read. There are certainly good examples of how to manage/mentor/train that I'll try to keep in the back of my mind.
How to Be an Antiracist
By Ibram X Kendi
A very eye opening book exploring a lot of depths of racism. Learned that racism in society runs far deeper than even I realized. Perhaps the most important point I realized is that "race neutral" is perhaps the most dangerous racist attitude that can persist that people don't realize (i.e. race neutral = keep the status quo).
The New Jim Crow: Mass Incarceration in the Age of Colorblindness
By Michelle Alexander
While a number of the topics in the book were known to me, enlightening as it covers the topic in more depth and highlighting the travesties going in the justice system.
Math Books (?)
How Not to Be Wrong: The Power of Mathematical Thinking
By Jordan Ellenberg
Hard to describe the book. Sort of an interesting collection of mathematical tales, how statistics can trick you, etc. Not entirely sure if the author really got across the point of "The Power of Mathematical Thinking". But interesting book none the less.
Programming/Technology Books
Expert C Programming
By Peter van der Linden
Finally picked up this classic. It's easily the most entertaining programming book / technical book I've ever read. Most technical books you need to take regular breaks from b/c it just gets too overwhelming to read non-stop. However, this was a really easy read with fun information and stories.
Learning Python: Powerful Object-Oriented Programming
By Mark Lutz
I was convinced by a friend who worked at Yahoo! to learn Python. After reading this book (which BTW is a relatively light read despite it's thickness), there's a lot of amazing stuff in Python.
Effective C++: 50 Specific Ways to Improve Your Programs and Design
By Scott Meyers
I picked up this book on a recommendation like 8 years ago and never read it. I finally sat down and did, and it's pretty good. I picked up a few tricks I didn't know and reinforced a few ideas I totally forgot about. There are humorous tidbits in the text that keep the reading fresh/light. Like all programming books, it can drone on at times and you start skimming rather than reading.
Design Patterns: Elements of Reusable Object-Oriented Software
By Erich Gamma, Richad Helm, Ralph Johnson, John Vlissides
Another classic that I picked up. Like a lot of technical books, it can be rough if you try to read it word for word non-stop. I recommend reading the high-level overview of the patterns and understand the benefits of them. Then just log those ideas to memory and use the book as a reference for the future. That said, there's a reason the book is a classic. What you'll get out of it highly depends on your experience level, but there were definitely several "Oh, that's really neat" feelings when I realized how a particular programming pattern would be useful.
Hadoop: The Definitive Guide (2nd Edition)
By Tom White
(I'm almost afraid to post this review, as I'm sure it'll lead to head-hunters e-mailing me. Oh well, I'll try my luck.) I picked up this book pretty much on a recommendation from a friend, telling me that Hadoop and MapReduce was becoming all the rage. It's definitely an interesting piece of software. Ironically, my company has started to pick it up, so maybe I'll be hacking on Hadoop for work now too. The book itself is pretty good but it's definitely an overview book on the broad general topic of "Hadoop". To really learn things in detail, you're going to have to pick up many of the specific subtopic books on the subject (Hbase, Hive, MapReduce algorithms, etc.).
Hbase: The Definitive Guide
By Lars George
Another good overview book.
Cassandra: The Definitive Guide
By Eben Hewitt
Compared to most technical books I've read, this one is pretty disorganized. At one point, as an introduction to the Cassandra API, there is about a 10-12 pages of nothing but code. Not really much of a description afterwards about what the specific API calls and such do. I was able to get through several sections of the book more easily b/c I had already read the Hbase book and had general understandings of BigTable. I think I'd be pretty lost if this was the first book I read on the topic. I should mention I read this after it was clearly out of date.
Learning Apache Cassandra - Manage Fault Tolerant and Scalable Real-Time Data
By Mat Brown
I wouldn't really call this a Cassandra book, it's more a CQL book. Topics such as application APIs, setup, configuration, and such (which were discussed in the Hadoop & Hbase books above) were non-existent. However, as a general overview of CQL, you get an idea of how Cassandra is different than Hbase. Much better than the awful "Cassandra: The Definitive Guide" above.
Refactoring
By Martin Fowler
This is another classic that I picked up eons ago then finally read. Only read the first few chapters and skipped reading each refactoring pattern. Perhaps the most important thing I got out of this book was to motivate me to do the refactoring in some code I'd been putting off for a long time.
Machine Learning in Action
By Peter Harrington
I think this is a pretty good beginner book, although the content is not organized too well. There was definitely confusion on the content at times. After watching Andrew Ng's Coursera Machine Learning course, the content made a lot more sense.
Data Science from Scratch
By Joel Grus
This is an interesting book. It's sort of a hodge podge collection of random topics about Machine Learning and Data Science. It ranges from basic programming in Python, to introductory machine learning algorithms, to Python APIs. I think the audience for this are some strange cross section of people who want an introduction to data science people who want a introduction to data science but want some code to go along with it. I think it's better than Machine Learning in Action, but Angrew Ng's Coursera course is still better.
Software Engineering Books (tech books but clearly not programming)
The Mythical Man-Month
by Fred Brooks
I think the last few chapters with updated comments is sort of a bore. The real great essays are the ones from the 1970s. What I love is that while the essays may not have direct relevance in modern day technology companies, the principles still do. For example, all the topics about project planning and communication, while done slightly different, still apply. No one will bother with a "phone log" anymore, as Jira or E-mail will suffice. Engineers still poorly estimate hours needed to complete something. Memory is perhaps not the ultimate constraint on programming anymore, but the principle of "resource limitation" still applies to any number of computing resources (e.g. network bandwidth).
The Pragmatic Programmer: From Journeyman to Master
By Andrew Hunt, David Thomas
I think this book would have been much better if I read it in the beginning of my career instead of far later. Still, there are some decent points in the book to log away. It was a bit outdated by the time I read it, as Git isn't even mentioned but I think they still brought up CVS.
The Cathedral & the Bazaar: Musing on Linux and Open Source by an Accidental Revolutionary
by Eric S. Raymond
Finally read this after many years. I think it's interesting reading this book 15-20 years after it was written and comparing it to the current world we live in. I write a few comments about this in my post.
The Clean Coder: A Code of Conduct for Professional Programmers
by Robert C. Martin
I think this could have been a good book when I was earlier in my career, but so many of the topics covered in this book were "eh" to me. Similar to Rich Dad Poor Dad, one also has to take all the topics covered with a grain of salt.
Math Books (?)
How Not to Be Wrong: The Power of Mathematical Thinking
By Jordan Ellenberg
Hard to describe the book. Sort of an interesting collection of mathematical tales, how statistics can trick you, etc. Not entirely sure if the author really got across the point of "The Power of Mathematical Thinking". But interesting book none the less.
Programming/Technology Books
Expert C Programming
By Peter van der Linden
Finally picked up this classic. It's easily the most entertaining programming book / technical book I've ever read. Most technical books you need to take regular breaks from b/c it just gets too overwhelming to read non-stop. However, this was a really easy read with fun information and stories.
Learning Python: Powerful Object-Oriented Programming
By Mark Lutz
I was convinced by a friend who worked at Yahoo! to learn Python. After reading this book (which BTW is a relatively light read despite it's thickness), there's a lot of amazing stuff in Python.
Effective C++: 50 Specific Ways to Improve Your Programs and Design
By Scott Meyers
I picked up this book on a recommendation like 8 years ago and never read it. I finally sat down and did, and it's pretty good. I picked up a few tricks I didn't know and reinforced a few ideas I totally forgot about. There are humorous tidbits in the text that keep the reading fresh/light. Like all programming books, it can drone on at times and you start skimming rather than reading.
Design Patterns: Elements of Reusable Object-Oriented Software
By Erich Gamma, Richad Helm, Ralph Johnson, John Vlissides
Another classic that I picked up. Like a lot of technical books, it can be rough if you try to read it word for word non-stop. I recommend reading the high-level overview of the patterns and understand the benefits of them. Then just log those ideas to memory and use the book as a reference for the future. That said, there's a reason the book is a classic. What you'll get out of it highly depends on your experience level, but there were definitely several "Oh, that's really neat" feelings when I realized how a particular programming pattern would be useful.
Hadoop: The Definitive Guide (2nd Edition)
By Tom White
(I'm almost afraid to post this review, as I'm sure it'll lead to head-hunters e-mailing me. Oh well, I'll try my luck.) I picked up this book pretty much on a recommendation from a friend, telling me that Hadoop and MapReduce was becoming all the rage. It's definitely an interesting piece of software. Ironically, my company has started to pick it up, so maybe I'll be hacking on Hadoop for work now too. The book itself is pretty good but it's definitely an overview book on the broad general topic of "Hadoop". To really learn things in detail, you're going to have to pick up many of the specific subtopic books on the subject (Hbase, Hive, MapReduce algorithms, etc.).
Hbase: The Definitive Guide
By Lars George
Another good overview book.
Cassandra: The Definitive Guide
By Eben Hewitt
Compared to most technical books I've read, this one is pretty disorganized. At one point, as an introduction to the Cassandra API, there is about a 10-12 pages of nothing but code. Not really much of a description afterwards about what the specific API calls and such do. I was able to get through several sections of the book more easily b/c I had already read the Hbase book and had general understandings of BigTable. I think I'd be pretty lost if this was the first book I read on the topic. I should mention I read this after it was clearly out of date.
Learning Apache Cassandra - Manage Fault Tolerant and Scalable Real-Time Data
By Mat Brown
I wouldn't really call this a Cassandra book, it's more a CQL book. Topics such as application APIs, setup, configuration, and such (which were discussed in the Hadoop & Hbase books above) were non-existent. However, as a general overview of CQL, you get an idea of how Cassandra is different than Hbase. Much better than the awful "Cassandra: The Definitive Guide" above.
Refactoring
By Martin Fowler
This is another classic that I picked up eons ago then finally read. Only read the first few chapters and skipped reading each refactoring pattern. Perhaps the most important thing I got out of this book was to motivate me to do the refactoring in some code I'd been putting off for a long time.
Machine Learning in Action
By Peter Harrington
I think this is a pretty good beginner book, although the content is not organized too well. There was definitely confusion on the content at times. After watching Andrew Ng's Coursera Machine Learning course, the content made a lot more sense.
Data Science from Scratch
By Joel Grus
This is an interesting book. It's sort of a hodge podge collection of random topics about Machine Learning and Data Science. It ranges from basic programming in Python, to introductory machine learning algorithms, to Python APIs. I think the audience for this are some strange cross section of people who want an introduction to data science people who want a introduction to data science but want some code to go along with it. I think it's better than Machine Learning in Action, but Angrew Ng's Coursera course is still better.
Software Engineering Books (tech books but clearly not programming)
The Mythical Man-Month
by Fred Brooks
I think the last few chapters with updated comments is sort of a bore. The real great essays are the ones from the 1970s. What I love is that while the essays may not have direct relevance in modern day technology companies, the principles still do. For example, all the topics about project planning and communication, while done slightly different, still apply. No one will bother with a "phone log" anymore, as Jira or E-mail will suffice. Engineers still poorly estimate hours needed to complete something. Memory is perhaps not the ultimate constraint on programming anymore, but the principle of "resource limitation" still applies to any number of computing resources (e.g. network bandwidth).
The Pragmatic Programmer: From Journeyman to Master
By Andrew Hunt, David Thomas
The Cathedral & the Bazaar: Musing on Linux and Open Source by an Accidental Revolutionary
by Eric S. Raymond
Finally read this after many years. I think it's interesting reading this book 15-20 years after it was written and comparing it to the current world we live in. I write a few comments about this in my post.
The Clean Coder: A Code of Conduct for Professional Programmers
by Robert C. Martin
I think this could have been a good book when I was earlier in my career, but so many of the topics covered in this book were "eh" to me. Similar to Rich Dad Poor Dad, one also has to take all the topics covered with a grain of salt.