I see that Sandi Metz has a new edition of her 99 Bottles book out, with new JavaScript & PHP versions as well as the classic Ruby. I'll have to read it. I'm a big fan of Sandi's, and her work tends to be rich with insights and well-formulated principles about coding & program design. Even if it's an OO-focused book, and my preference is more FP focused these days, it's still a good bet that the book will be more than worth the time to work through it.