Developer's Reading List, October 23, 2012 New books on C++11, parallel programming, CoffeeScript, requirements, and more.
Murach's SQL Server 2012 for Developers
Bryan Syverson and Joel Murach
This 800-page book is a guide to relational databases, with Microsoft SQL Server 2012 used as the foundation. It provides the information in short "how-to" lessons that span three to four pages. In their hundreds, these nugget-sized discussions cover a multitude of topics, including mastering SQL, designing databases, using triggers, stored procedures, aggregate functions, and interfacing to C# and VB.NET. The book requires access only to free tools namely, the Express editions of Microsoft SQL Server 2012, and SQL Server Management Studio so it will appeal to students as well as practitioners. Because every subsection of literally every chapter begins with a title of "How to..." the book is also a handy reference guide for beginners, who might simply need to do one or two quick things without needing a deeper understanding of how SQL Server works. Recommended.
The Artist's Guide to GIMP, 2nd Ed.
by Michael J. Hammel
The worlds of design and software development are increasingly overlapping. Designers are learning how to do basic hacking, and developers are increasingly called on to be participate in aesthetic and presentation design issues. For developers who embrace, rather than avoid, the latter, the cost of image processing tools can be a serious limitation. GIMP, the free alternative to Adobe Photoshop and Illustrator, offers an excellent solution. And this book is a how-to guide for all GIMP users. As the author is a developer, the text takes a direct approach that will appeal to technically savvy readers. Despite its frequent use of color and large-format pages, it never dips into an artificial, self-indulgent "artsyness" designed to wow the reader. This is a "here's how it's done" kind manual that favors practical information. (In addition, it's unusual that a book so heavily illustrated and printed on thick, high-quality, over-sized pages could have a street prices of only $26.) Definitely recommended.
A Fly by Wire Architecture for Multi-Threaded Apps
by Will Warner
This slim, self-published volume discusses the architecture of complex multithreaded apps in Windows. It's essentially the program docs (with copious illustrations) of a message-based multithreaded program that controls an infrared-seeking robot. The book dives into the topics of data retrieval from sensors, signals, object and task queues, and optimizing multithreaded operation under Windows. It focuses primarily on architecture and design, both in the large sense, and in the specific demo. The code, which needs to be downloaded from the website, is in C#. The last chapter of the book contains the author's personal observations about parallel programming and programming in general. The book uses a small page size, large print, and is only 138 pages, so it contains — to my eye — only the minimum amount of information. In this context, the use of a final chapter consisting of 23 pages in which the author grinds axes on various programming topics, such as coding standards, is an indulgence that will more annoy than enlighten readers. However, the book has the feel of a Heathkit kit-building experience and will appeal to hobbyists building those kinds of apps.