
I've got two children (8 & 11) and done lots of volunteering teaching programming to children (and teach on a computer science degree as well!). I think a lot depends on the age and what you want them to learn.
Considerations: Do they read fluently? How is their typing? What sort of things do they actually want to programme? What is it that you want them to learn? Are you going to sit down with them and go through the book or just leave them to it?
There are a lot of resources these days that aren't books too which may be better. There are lots of online 'lessons' if you look at e.g. Code Club or Hour of Code. You've got games like CodeCombat and Erase All Kittens. There are lots of programmable toys of the robotic variety. You can get them doing stuff with Microbits or raspberry pis - the SenseHat is quite fun for example.
Not a programming book, but my older son really enjoyed Computational Fairy Tales by Jeremy Kubica.
I also wouldn't be too put off by some things being made simple. In a sense as a parent, you are trying to motivate them as much as teach them. And as a programmer yourself, you are in a good place if you want to say to them 'actually it's a bit more complicated than the book makes out'.
Other great STEM and computers books for kids:
"A is for Array"
"Lift-the-Flap Computers and Coding"
"Computational Fairy Tales"
"Hello Ruby: Adventures in Coding"
"Python for Kids: A Playful Introduction To Programming"
"Lauren Ipsum: A Story About Computer Science and Other Improbable Things"
"Rosie Revere, Engineer"
"Ada Byron Lovelace and the Thinking Machine"
"HTML for Babies: Volume 1 of Web Design for Babies"
"What Do You Do With a Problem?"
"What Do You Do With an Idea?"
"ABCs of Mathematics", "The Pythagorean Theorem for Babies", "Non-Euclidian Geometry for Babies", "Introductory Calculus for Infants", "ABCs of Physics", "Statistical Physics for Babies", "Netwonian Physics for Babies", "Optical Physics for Babies", "General Relativity for Babies", "Quantum Physics for Babies", "Quantum Information for Babies", "Quantum Entanglement for Babies"
"ELI5": "Explain like I'm five"
Someone should really make a list of these.
I first heard about this book on HN (http://news.ycombinator.com/item?id=2144526), when it was just a few chapters. I read them to my daughter, Laurel. She thought it was soooo cool and told him so. He actually wrote in a bit part about Lauren saying "My name's not Laurel!" and sent Laurel an autographed copy.
My kids went on to read the whole book with my parents over VTC (is that the category for FaceTime and Skype?), and it was a huge success. My mom happens to be a college math teacher and has turned a number of other faculty on to the book.
For those interested in this genre, there is also Computational Fairy Tales (http://computationaltales.blogspot.com/p/book.html)
How to Read a Book - Mortimer Adler. Really helped me feel more comfortable reading technical books and large books. I've probably worked through more tech/textbooks this year than all other years combined. (It's not a particularly high number this year, it was just low all the other years, haha).
Meditations - Marcus Aurelius, Gregory Hays translation. I highly recommend this translation if Meditations is a book that's interested you. It's written very informally and casually. Like Aurelius writing in a notebook before bed. While other translations are very length and flowery with descriptions and overly formal.
Superintelligence - Nick Bostrom. This one gets talked about a lot on here. I bought it because it's a topic I'm very interested in, but I was expecting more hype than real content. I must say, I was very pleasantly wrong about that. Bostrom makes some really solid arguments about what superintelligence might mean and many ways it could potentially arise.
The Life-Changing Magic of Tidying Up - Marie Kondo. I didn't like most of this book. But the tips for tidying up, as well as the surge of motivation you magically get just after reading it made the book worth it.
Test-Driven Development with Python - Harry Percival. Obey the testing goat! Thanks to this book, all my current professional projects are using TDD. I had been making an effort to test code before, but generally after writing the code. The biggest benefits, for me, of writing tests before the rest of the code is that 1) My projects are organized so much better than before. 2) My tests feel much more comprehensive than they ever did previously.
Surprise books. These I wouldn't recommend for everyone here, but they're the most interesting ones I personally found this year:
Obfuscated C and Other Mysteries - Don Libes. Someone on HN recommended it, and I managed to find a used copy for $6. Just incredible if you love C, low level code, and hardcore tricks and optimizations. Some of the chapters explain winning entries to the IOCCC, and some explain strange tricks with C that probably aren't too useful in current day applications and may not even work on modern hardware. Not just insightful, but also very funny.
Computational Fairy Tales - Jeremy Kubica. Recommended to me by someone in IRC. Aimed mostly at kids, it's a fairy tale that involves computing. Princess Ann has to save the kingdom from a prophecy of doom. Along her journey every encounter indirectly describes a comp sci concept, such as showing an ogre how to repeatedly hit metal to make a sword mimics a FOR loop. A magical town where all the people only speak in completely boolean terms ("Is the castle that way?" Ann points. "No, it's that way" the villager points the same direction as Ann, but a fraction of a degree to the side). I think I picked up some good examples for explaining computers to kids without getting into jargon. Very cute, though I didn't finish it because I got tired of the simplicity, would recommend for a child.