How to Think Like a Programmer is a bright, accessible, fun read describing the mindset and mental methods of programmers. Anticipating the problems that student's have through the character of Brian the Wildebeest, the slower pace required for this approach is made interesting and engaging by visual impact of hand-drawn sketches, frequent (paper-based) interactivities and the everyday tasks (e.g. coffee making) used as the basis of worked examples.
I got this out from the library at work because I've been trying to find books that would do a more organized job of teaching troubleshooting and debugging. This isn't quite that, as it's more geared towards beginners to programming and teaching them how to approach problems logically and systematically.
I'm glad I found it and flipped through it, though, I think it could be a very good introduction for people that are curious about coding but have always thought of themselves as more words people than computer people. It does seem like a lot to wade through before actually getting to build something that does a thing, but perhaps that teaching methodology could work really well for some folks.