We were talking about O’Reilly learning and books this morning. For those who don’t know, I’m giving a Java course on O’Reilly every 2 months.
I thought it will be useful to create my list of books I think everyone should read. I will keep it up to date so bookmark this page.
You can also find it on O’Reilly for the books available there (most of them).
In random order.
- Refactoring - Martin Fowler
- Working Effectively with Legacy Code - Michael Feathers
- Head First Design Patterns - Eric Freeman, Elisabeth Robson, Bert Bates, Kathy Sierra
- Effective Java - Joshua Bloch
- Java Concurrency in Practice - Brian Goetz
- JUnit in Action - Vincent Massol, Ted Husted (I haven’t read the third edition written by someone else)
- Core Java - Cay Horstmann
- Test-Driven Development by Example - Kent Beck
- Continuous delivery - Jez Humble, David Farley
- The Goal - Eliyahu M Goldratt, Jeff Cox
- Accelerate - Nicole Forsgren, Jez Humble, Gene Kim
- The Phoenix project - Gene Kim, Kevin Behr, George Spafford
- Code Complete - Steve McConnell
- Rapid Development - Steve McConnell
- Clean Code (but don’t believe everything he says) - Robert Martin
- Mythical Man-Month - Frederick Brooks
- The Algebra of Happiness - Scott Galloway
- Start with Why - Simon Sinek
- Getting things done - David Allen
- Flash boys - Michael Lewis
- Options, Futures, and Other Derivatives - John C. Hull
- Rogue Trader - Nick Leeson
Understand the world
- Guns, Germs, and Steel - Jared Diamond
- Collapse - Jared Diamond
- 1491 - Charles C. Mann
The list is quite incomplete. I will add tons of books that worth your attention, but that’s a good start. If you think watching videos and reading blog posts is enough, sorry you are wrong.
You will learn more with any of these books than by reading months of blog posts.