I often like to take notes as I read interesting books so I can internalize what I’ve learned. Here, you’ll find a collection of the various notes I’ve written over the years. They’re presented as-is and may not completely summarize the contents of any particular book. With that in mind, I still hope you find something useful to carry forward from them.

Code Complete

Database Design for Mere Mortals

Do Hard Things

Grokking Algorithms

Grokking the System Design Interview

Head First Software Architecture

Practical Object-Oriented Design in Ruby

Slow Productivity

The Creative Problem Solver`s Toolkit (In Progress)

The Object-Oriented Thought Process

The Pragmatic Programmer 20th Anniversary Edition