Thanks David for your review. I hope your son found the section where a windowed app is produced fun, when he got around to it.
I would just like to address the two niggles you mentioned as several people are finding your review helpful. On page 20 there is an explanation of the modulus operator which says that it can be used to find the remainder. The term is also in bold and so appears in the glossary. (You probably missed this because of your confusion with integer and normal division while your son was using Python 2.7.) One reason the book uses Python 3 and not Python 2.7 is because division works in the form that children are used to on their calculators. I have no control as to how the Raspberry Pi is set up but, helpfully, from the day Python Basics was published, the desktop on the recommended operating system has had shortcuts to both versions of Python: The 'IDLE' icon starts up 2.7 and the 'IDLE 3' icon starts up Python 3. This is the one readers should use and the niggles should disappear. There is now a video showing this on the website (codingclub.co.uk/videos.php)
Best wishes, Chris Roffey (author)