Author: James Floyd Kelly and Harold Timmis
Audience: Young beginners at electronics
Reviewer: Harry Fairhead
Can you combine a sci fi adventure story with learning to use the Arduino? That's what this book sets out to do.
It sounds like a good idea and I can see why the publisher accepted it - after all publishers of technical books are often more interested in literature than technology. I can also appreciate that the book must have been fun to write - who wouldn't want to combine the creativity of writing a sci fi adventure while explaining bits of hardware and software. The problem is that for me it doesn't work and I will try to explain why.
The first reason is that the story just isn't well written - although it is probably not too bad judged in the context of of children's fiction. The story takes the form of a conversation between our heroes, Cade and Elle. There is also Andrew 5.0 the first AI and he also contributes comments to the technical chapters. The story puts together a fairly weak reason for needing an Arduino to escape from Gemini station.
For me the fiction wasn't really up to the job and as for inspiring the younger reader the big problem is the gear change when you hit Chapter 2, the first part of the book that deals with electronics proper. The story line is just dropped and we are listening to the voices of the technical authors - the fiction might as well have been skipped.
As you work your way into the technology chapters you find a very standard and very simple introduction to the Arduino - what it is, a sample program and how to install the IDE. Chapter 3 then introduces the potentiometer, a breadboard, the Uno, and hookup wire. Next we build Gizmo #1 a potentiometer connected across the Arduino's ADC. Chapter 4 then explains how to write a program to read in the value and display it. This is not the simplest project to get started with an Arduino and it should raise a lot of questions in complete beginner who tries it out.
Then at Chapter 5 we are back to the story and the variable resistor lash up is being used to provide an entry code. And after five pages of dialog we back to the technical details with just as much a crash as before.
In Chapter 6 we learn about batteries and current flow. push buttons, LEDs, resistors and we build an LED circuit complete with switch. Of course there is no attempt to explain how to calculate the value of the shunt resistor used. This is reasonable because without Ohms law the calculation would be meaningless but not to mention that such a calculation is necessary just leaves the reader thinking that 330 ohms is magic. Finally we write code to read the switch and power the LED.
And back to the story again. The switching from the story to the technical stuff continues to the end of the book with about one story chapter to three technical chapters. As the book moves on you might hope that the technical details would become fascinating enough to make the story seem increasingly irrelevant but who knows...
Chapters 10, 11 and 12 use a temperature sensor to build a conditional on circuit and introduce the IF statement. Chapters 14, 15 and 16 introduce discrete logic (a hex inverter) and the use of motors. It is at this point in the book that I really missed having a circuit diagram. The circuit was just getting to the level of complexity that a diagram would have helped but there are no circuit diagrams used anywhere in the book. Each circuit layout is specified by careful drawings of wires and components. These do make the assembly easier for the beginner, but how is the beginner ever going to learn to read and create a circuit diagram?
Chapters 18, 19 and 20 introduce a PIR sensor and a buzzer. The gizmos being built are getting increasingly complicated - oh how I miss a circuit diagram. Chapters 22, 23 and 24 introduce a servo motor and now the software is getting complicated with the need to use a library. No attempt is made to explain how a servo works or how it is controlled by the Arduino apart from a few lines. Chapter 27, 28 and 29 introduce a photo sensor and servo. The final chapters introduce an off-the -shelf robot chassis and a motor controller. By the end you have something you can program to roam about the place.
Overall I wasn't impressed. I tried the book's story out on a twelve year old with no interest in electronics and programming but they weren't interested - not "cool" enough. A similar test subject, who was interested in technical things, found the story to be a distraction from getting on with the building. This is a small sample and you might well be luckier with using the book to motivate small engineers.
The book has the plus point that the explanations are simple and easy to follow but it doesn't really take a logical path through the material because of the need to do things that are interesting enough to be part of the story. It also doesn't use circuit diagrams to explain what is being built and this is something I'd say is its biggest flaw. You can argue that a circuit diagram is going to scare the reader - but in which case they aren't going to stick around for long anyway.
My final verdict is that this book doesn't achieve what it set out to. The fiction isn't well written enough and it doesn't have the glamor of being based on well-known characters that the reader could empathize with. The technical parts of the book are good enough, but my guess is that they would be better without the need to fit into the story.
However, this is just my verdict. You might discover that the formula works and your small, or even big, reader just loves the story.