Dr. Dobb's is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Channels ▼

Jolt Awards

Fresh Faces

June, 2005: The 15th Annual Software Development Jolt & Productivity Awards

Software Development

June 2005


Glenn Bisignani, Product Marketing Manager

Head First Design Patterns
Elisabeth Freeman, Eric Freeman, Bert Bates and Kathy Sierra
(O'Reilly, 2004)

You know that old, cynical saying, "Those who can, do; those who can't, teach"? Rubbish. Teaching is a gift, as anyone who has ever been inspired by a brilliant mentor knows, and the Head First series created by Kathy Sierra and Bert Bates is an iridescent example of how to turn complex theory into life-changing action. A tremendous homage and adjunct to the Gang of Four's classic Design Patterns, Head First Design Patterns is written, appropriately enough, by a team of two elite subject matter experts (Elisabeth Freeman and Eric Freeman) and two masters of metacognition (Sierra and Bates). This work easily enters that small canon of visually and intellectually stimulating books that include Edward Tufte's The Visual Display of Quantitative Information and Steve Krug's Don't Make Me Think.

Chapter 1 leads you oh-so-craftily into a perfect understanding of the Strategy pattern—as with all good teaching, you don't realize you've learned it until the very end, along with new insights into the limitations of inheritance. Before you know it, two chapters later, you've mastered the Observer and Decorator patterns, too. But the book doesn't just iterate through the patterns until you've gotten them; it's packed with exercises, visual humor, clever games and sidebars that keep the conversation between this book and your brain going. Finally, the pragmatism behind Head First Design Patterns is ever-present, culminating in tips on how to communicate patterns to others and define your own. For once, your brain is begging you: Read this book!

—Alexandra Weber Morales

Productivity Award Winners

Joel on Software
Joel Spolsky
(Apress, 2004)

A coherent collection of essays (initially published on his eponymous blog) about managing software development and making money from the results, Joel on Software is one man's idiosyncratic, occasionally cantankerous take on our business. From the famous 12-step "Joel Test" for evaluating development teams ("Do you use version control? Do you run daily builds?") to his indictment of the process mavens in our industry, Spolsky delivers his opinions in an erudite, closely reasoned and wickedly funny style that will surely stimulate your thoughts and cause you to question your assumptions, even when you disagree.

What's most unusual about Joel is how he manages to promote his own company and products to such a loyal and accepting audience. Executives at Sun and other big ISVs, take note: If you want blog readers, you've got to dish the way Joel does! To everyone else: Get the book, curl up in a chair, and enjoy yourself.

—Rick Wayne

Refactoring to Patterns
Joshua Kerievsky
(Addison-Wesley Professional, 2004)

The Gang of Four gave us Design PatternsRefactoring, and Joshua Kerievsky unites the two in Refactoring to Patterns, with a clear explanation of their relationship and combined potential.

Extreme Programming teams incorporate refactoring, the practice of refining code to make it clearer and more maintainable, as part of their daily routine. To remove "code smells," you must refactor with a purpose, and Kerievsky takes a purposeful look at the types of refactoring you might make, showing you how to implement design patterns in your approach. Expert programmers do this instinctively, but Refactoring to Patterns is for the rest of us.

This thought-provoking book will change the way you approach both your initial design and refactoring: Every software developer should have Refactoring to Patterns on their bookshelves.

—Gary Pollice

Software Factories
Jack Greenfield, Keith Short, Steve Cook, Stuart Kent and John Crupi
(Wiley, 2004)

"This book may be the one we look back on to say 'Wow, they had it right, way back in 2004.'" This comment from our judging discussion precisely captures the ambivalence that kept Software Factories: Assembling Applications with Patterns, Models, Frameworks and Tools from taking the top award. On one hand, we agreed that Greenfield et al. were on to something important. What split the field was the feeling of how important software factories—sets of integrated tools, process and content assets used to accelerate lifecycle tasks for a specific type of software component—will be. Some felt that factories will become a major concept in corporate development; others felt that the book didn't make the case. Certainly, architects and technical leads with an interest in Microsoft's strategy will find this book compelling. Those hoping for a platform-neutral advocacy remain unconvinced.

—Larry O'Brien

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.