@hugoestr I've never been able to get into HTdP. I'm sure its great, but the "build little games" exercise format is something I cannot stand, and thats really the book that I think pioneered that approach, which I've unfortunately became familiar with through its imitations, which soured my taste before ever encountering the original.
But I've heard some of the best young programmers in the world cite it as the book that really taught them how to design programs. And I use the design recipe heuristic all the time.