Developer's Reading List
, May 22, 2012 The most interesting books of the last month, selected and reviewed by Dr. Dobb's editors.
Also Received
Node, Up and Running
Tom Hughes-Croucher and Mike Wilson
Node.js is what all the cool kids are doing these days. It's a layer over Google's V8 JavaScript engine that supports, among other things, doing file I/O on the local system. This enables developers to use JavaScript for writing apps that are not browser-bound, including server apps. Node (which is emerging as the preferred spelling to the original node.js) includes libraries that perform fast, non-blocking I/O, which is used in lieu of parallel execution to gain good performance, while preserving design and code simplicity.
One of the biggest obstacles to using Node is getting it set up and tasting the magic. This slim volume takes you quickly through download and setup; and then it walks through basic coding examples that exercise the various libraries (including using NoSQL databases, Web services, and the like). The book is clear and approachable and is probably the best place to start if you want to kick the tires on Node. Recommended.
— ALB
TDD for Embedded C
James W. Grenning
A short, clear introduction to TDD and how to apply it to C code (using CppUnit and Unity as test frameworks) in embedded contexts. Testing hardware with unit tests depends in no small part on the use of mocks to simulate hardware components that must respond to software actions. For this, the author uses CMock and explains it well.
The book is a particularly good option for embedded developers new to TDD because it covers the basic philosophy of TDD, the desirable traits of unit tests, and it does a good job of explaining why unit testing is so beneficial. It does not really make a convincing case for test-first development, however, nor does it explain to any depth the necessary refactoring required by the TDD approach. To be fair, most books on TDD are weak in these two areas. The difficulty of refactoring C makes the issue even more complex in this case. However, for a good book on unit testing embedded C, this is an excellent place to start. Recommended.
— ALB

