My Reading List

The Startup Owner's Manual
The Step-by-step Guide for Building a Great Company
Steve Blank
Key learnings: Customer development process: does the problem exist? Does your product solve the problem? Can you build a profitable and sustainable business?
The Lean Startup
How Today's Entrepreneurs Use Continuous Innovation to Create Radically Successful Businesses
Eric Ries
Key learnings: Build a minimum viable product (MVP) and iterate through the customer feedback loop
Zero to One
Notes on Startups, Or How to Build the Future
Peter Thiel
Key learnings: Think bold. Monopolies are good.
(Artificial Intelligence)
Artificial Intelligence
A Modern Approach
Stuart Jonathan Russell
Key learnings: Autonomous agents
(Artificial Intelligence)
Reinforcement Learning
An Introduction
Richard S. Sutton
Key learnings: Train agents through rewards, not supervision
Joel on Software
Joel Spolsky
Key learnings: A+ would read again
The Psychology of Computer Programming
Gerald M. Weinberg
Key learnings: Managers need to understand the way programmers think and act.
Code Complete
Steve McConnell
Key learnings:
The Pragmatic Programmer
From Journeyman to Master
Andrew Hunt
Key learnings: Think of coding as a craft. Take pride in your work.
The Mythical Man-month
Essays on Software Engineering
Frederick Phillips Brooks
Key learnings:
Introduction to Algorithms
A Creative Approach
Udi Manber
Key learnings: Make sure to really understand algorithms and data structures and their runtime and space complexities
Introduction to Algorithms
Thomas H. Cormen
Key learnings: Comprehensive overview
(Artificial Intelligence)
Heuristic Search
Theory and Applications
Stefan Edelkamp
Key learnings: Admissible vs consistent heuristics, hierarchical A*
Badass: Making Users Awesome
Kathy Sierra
Key learnings: Title says it all
The Hard Thing About Hard Things
Building a Business When There Are No Easy Answers
Ben Horowitz
Key learnings: