A really good introduction to the concepts of Arduino, from the founding master. Includes some philosophical 'fluff' as the author calls it, which is nonetheless useful, relevant and appropriate. No one else would have been able to convey that stuff, as to why the platform is like it is. The generalist diagram of sense/operate/output is fantastically useful as a concept for the platform modus operandi. Overall technically, the book is a well written overview of functions(), setup, pins, and the difference between analog and digital pin I/O. One could do a lot worse. The examples given start out very useful, but the only failing of the book is that it then goes down a tortuous path of education, making a single button press into something complex-- debouncing it, writing code all around it for exceptions and clock delays, the reasons for which are complicated and could leave beginners baffled. Then at the last, it launches an example a mile forward with an undocumented multipage sketch that only an expert would want to dive into. Still, the path to examine a particular thing like a button in depth has its merits, and maybe one could have written the book with an eye on just the most prominent and used code that are called. There are many ways to educate. Recommended as a great read, introduction to the platform, and for the first examples. After this book, a best path would be to join the online community, start reading other sites, copying and manipulating others examples, tweaking, tinkering, testing and iterating prototypes, and using a web enabled Arduino IDE and UNO. Thanks