Joel Spolsky: Joel on Software and on Diverse and Occasionally Related Matters that Will Prove of Interest to Software Developers, Designers, and Managers, and to Those Who, Whether by Good Forune or Ill Luck, Work with Them in Some Capacity, 2004, Apress, 350 pages, ISBN 1-59059-389-8
Reviewed by Conrad Weisert, June, 2007
Mr. Spolsky, a former Israeli paratrooper and Microsoft project manager, has repackaged articles from his popular but unstructured web site in this handy and readable book. For the most part the material reflects the author's maturity and deep experience in developing software, mostly commercial products.
A regrettable exception is his view of "functional specifications"1 in chapters 5 through 8. Mr. Spolsky doesn't understand functional specifications. He echoes the popular naïve misconception that specifications are mainly about user interfaces:
"a functional specification describes how a product will work entirely from the user's perspective. . . It specifies screens, menus, dialogs, and so on." —p. 53Wrong, wrong, wrong! A functional specification describes what a proposed system will do. Forms and other screen objects are about system design, which is normally done in a later phase of a project. The book ignores the central role of the systems analyst who write the functional specifications:
"Another solution is to hire smart program managers who produce the written spec."—p. 24.
A minor irritation is the author's advice to "use Excel". We know he used to work for Microsoft on an Excel® project, but this is not a Microsoft publication. He had no need to use a proprietary product name when the generic term spreadsheet conveys his exact intent.
Apart from that, you'll find Joel on Software a rich source of mentoring for both programmers and their managers. You won't agree with all of his views, but you'll be entertained and you'll learn a few new things, as I did.
Recommended (but ignore chapters 5-8)
Return to book reviews.
Return to table of contents.
Last modified May 30, 2007