Books I read in 2016
Thanks to my sister in law I really picked up reading books this year. As most people do I read a whole lot of the internet content and as most programmers do I tends to google solutions to my problems so I learn a fair bit from sites like Stack Overflow. This year though I broke that loop and read read books. I know, crazy right? Here’s the list books I read (in the order I read them) and my synopsis of each. ^_^
Outliers: The Story of Success
Outliers: The Story of Success
by Malcom Gladwell
was suggested to me by my sister in law, Laila as a good read about what some of the most successful people in the world have in common. This book coins the notion that 10,000 hours of practice is what it takes to reach expert level at something. It pins down the fact that being the greatest of the great relies on a lot of factors from a persons birth date, the environment they were raised in, the resources available to them, their personal drive to become great and even explains how luck can a factor.
Overall, I found Outliers to be a pretty good read. It gets a little slow at times late in each chapter as Malcom Gladwell digs in to the details of the examples provided but that aside it’s pretty engaging and interesting.
The Pragmatic Programmer
The Pragmatic Programmer: From Journeyman to Master 1st Edition
The Passionate Programmer
Good to Great
How To Win Friends and Influence People
How to Win Friends & Influence People
by Dale Carnegie
is a great. The art of successfully negotiating is based on your ability to allow everyone involved to understand your reasoning and this book definitely teaches you how to approach people and situations in such a way to achieve this success. I think everyone should own and study this book.
The Clean Coder
The Clean Coder: A Code of Conduct for Professional Programmers (Robert C. Martin Series) 1st Edition by Robert Cecil Martin is an awesome book that very clearly explains why (in general) programmers are not seen as professionals. We simply don’t act like professionals on so many levels and although writing that almost feels like an attack on myself this book lays the problem and solution out in a clear and inoffensive way. I definitely suggest this book to anyone who’s making a career out of software development.
Clean Code: A Handbook of Agile Software Craftsmanship 1st Edition
by Robert Cecil Martin is another great book and although it’s core crowd is definitely Java developers, most of the information in the book can be taken away by those who knows a couple other programming languages. The big takeaway (to me) is learning how to write code that can be easily read and understood at first glance. Learning to write elegant code makes everyone’s life easier. I would suggest this book to anyone who’s making a career out of software development.
The Mythical Man-Month
The Mythical Man-Month: Essays on Software Engineering, Anniversary Edition (2nd Edition) Anniversary Edition
by Frederick P. Brooks Jr. has a lot of great content although I found it a little difficult to read. The information is extremely relevant for the book being so dated. Operating System/360
is referenced a lot and although it’s only referenced as a project Frederick P. Brooks was a part of, it made the reading easier when learned more about it. The two big takeaways from this book (for me) are (1) that adding men to an active project doesn’t help speed the project up and (2) that there are no silver bullets to software development efficiency. Bottom line, your software development practice needs to be sharp and your team needs to communicate well. This is a good book and it’s definitely worth reading, especially if you find yourself responsible for large projects.
Design Patterns: Elements of Reusable Object-Oriented Software
Design Patterns: Elements of Reusable Object-Oriented Software 1st Edition