Can anyone recommend other books similar to this one?

Having done the Nand2Tetris course and started the Ray Tracer Challenge book I find I really like these books that guide you through a pretty complex project.

It helps you learn by doing while at the same time preventing you from falling into bad practices or getting overwhelmed.

Not a book, but an interesting self-guided course and apparently a great way to pick up a new language: Make A Lisp [0],[1],[2]

Basically, work through building a lisp interpreter in any given language (C, Java,...bash, vimscript) in 10 steps. Each step is backed by tests, and these tests help to guide you through the process. Very cool.

[0]http://kanaka.github.io/lambdaconf/

[1]https://github.com/kanaka/mal

[2]https://www.youtube.com/watch?v=jVhupfthTEk