Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Coders at work
Seibel P., Apress, Berkeley, CA, 2009. 632 pp. Type: Book (978-1-430219-48-4)
Date Reviewed: Aug 18 2010

This companion volume to Livingston’s intriguing Founders at work [1] provides fascinating insight into the relatively isolated world of coders. Ordinarily, the product of coders is perceived through indirect means--for example, by a machine conjuring up executable programs. In addition, coders often complicate matters, as they are usually autodidacts and unconventional learners; as a result, their work is neither examined nor well understood. This book corrects that oversight.

In a little over 60 years, since the time of the first general-purpose computer, we have become “awash in programmers” who are either officially employed or self-engaged in their personal passion. A central question of book is: What is programming? An art or craft? Mathematics? Engineering? Or is programming best viewed as a combination or hybrid of these varying elements? The interviewees address this question and categorize their work well.

Seibel, who is both a writer and a hacker, is particularly well qualified to interview the 15 programming luminaries included here. The programmers interviewed include straightforward hackers, such as Ken Thompson, inventor of Unix, and Bernie Cosell, one of the implementers of ARPANET; programmers who combine academic credentials with hacker facility, such as Donald Knuth, Guy Steele, and Simon Peyton Jones; enterprise researchers, including Fran Allen (the only woman included in the volume), Joe Armstrong of Ericsson, and Peter Norvig of Google; early Netscape initiators Jamie Zawinski and Brendan Eich; language programmers of the Web, such as Douglas Crockford and Joshua Bloch; and finally, Brad Fitzpatrick, inventor of LiveJournal, who represents Web programming.

Seibel is particularly effective at drawing out his interviewees to consider critical and basic questions that largely define programming. Oddly enough, the skill set most highly prized is communication--specifically, strong writing. Crockford provides the most interesting interview along these lines. He thinks of himself as a writer, and he describes himself as an “archaeologist of software technology.” Bloch, Armstrong, Steele, and Knuth all specifically state that good writing is critical. Bloch points out that code should not only function, but also be “readable, maintainable, and efficient.” In addition, Knuth emphasizes the importance of literate programming, “a way of writing code so it can be more easily read.” Basically, how good can a coder be if the text to guide others is obscure?

In the eyes of these interviewees, coding is best viewed as a craft. A number of them note that techniques have changed over time and they would not necessarily recommend their own road as a guide to others. The coders work in various modes. Zawinski and Dan Ingalls stress the importance of getting working code quickly, Bloch designs application programming interfaces (APIs) and tests before implementation, and Knuth even wrote TeX in pencil before coding. Several of the coders, Allen among them, point out that C was a limitation; in fact, Cosell describes it as the biggest software security issue and Steele objects that formal proofs could be employed to improve software.

There are a few minor mistakes and typographical errors: on page 21, “stared” should be “started,” and on page 539 an entire paragraph is in bold for no good reason and the editor-interviewee format is not followed.

Nonetheless, the book will be of interest to anyone who programs or is interested in the programming craft. Seibel elicits information about how these leading programmers perform their work and how they discovered and grew into their craft. He provides insight into how coders program software and what role programming languages have in assisting productivity. Finally, he asks how each coder debugs programs, which offers valuable insights on how to improve software.

Reviewer:  G. Mick Smith Review #: CR138280 (1107-0724)
1) Livingston, J. Founders at work: stories of startups' early days. Apress, Berkeley, CA, 2007.
Bookmark and Share
  Reviewer Selected
Featured Reviewer
 
 
Miscellaneous (K.m )
 
 
General (D.2.0 )
 
Would you recommend this review?
yes
no
Other reviews under "Miscellaneous": Date
Digital decision making: back to the future
Corrigan R., Springer-Verlag New York, Inc., Secaucus, NJ, 2007.  312, Type: Book (9781846286728)
Sep 28 2007
Third person: authoring and exploring vast narratives
Harrigan P. (ed), Wardrip-Fruin N. (ed), The MIT Press, Cambridge, MA, 2009.  636, Type: Book (9780262232630)
Jul 23 2009
Disaster recovery planning for communications and critical infrastructure
Wrobel L., Wrobel S., Artech House, Inc., Norwood, MA, 2009.  400, Type: Book (9781596934689)
Jul 10 2009
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy