Joe Nagata's Lego Mindstorms Idea Book
Lots of engineers--and more than a few others--cherish their memories of childhood Lego kits. Indeed, one-time finger-on-the-pulse author Douglas Coupland used Lego blocks as a metaphor for the community of under-30 software workers in his book,Microserfs. With the release of LEGO MindStorms, the nubbly toys come of age with motors, sensors, and--most importantly--the ability to follow procedural rules described in software programs.Joe Nagata's LEGO MindStorms Idea Bookis a fantastic companion to the mechanized pieces: well worth the cover price for anyone who's played around with MindStorms and is looking for project ideas.Nagata covers both sides of the MindStorms equation--mechanical construction and logical control--very well. Every step in the physical assembly procedure for each robot is clearly illustrated with orthographic drawings similar to those in Lego kit documentation. Color would make these drawings even better (they're printed in contrasting gray tones, with color pictures of each finished project in a center section) but would probably add a lot to the price. The coverage of software is good too, consisting variously (depending on the complexity of the program) of a screen shot of the MindStorms visual programming environment or a listing of Not Quite C (NQC) code. This book achieves what should be the main goal of any book about Lego blocks: it gets the reader thinking about ways to modify and expand on the ideas in it.--David WallTopics covered:How to construct and program a variety of creatures, vehicles, and machines with LEGO MindStorms pieces. Projects include (this list is comprehensive) a car, a centipede, a vehicle that skates, a dinosaur, a train that runs on tracks, a walker with articulated legs, a segmented vehicle that will climb over obstacles, an analog clock, a six-legged bug that can be made to turn right and left, and a very (very) cool car, in which the motor is used not for direct propulsion, but to compress air that propels the vehicle forward.