{{ !articles[0].partner.isSponsoringArticle ? "Platinum" : "Portal" }} Partner
agile,books,soa,enterprise-integration,continuous integration,patterns,lean,xp,personalities,software design

Top 50 New Software Development Books

It's been nine months since I created the Top 100 Best Software Engineering Books, Ever, with the best books ever released. I still refer to it when I want to pick up a timeless classic.

But last week I suddenly had the desire to know what the new best software development books are. And I couldn't find any such list. So, of course, I made it myself.

In this post I proudly present the Top 50 New Software Development Books, where new means "less than two years old". This list was created using a weighed mix of the following criteria:

  • Number of ratings on Amazon.com
  • Average rating on Amazon.com
  • Number of ratings on GoodReads.com
  • Averate rating on GoodReads.com

Note: The time that has passed since a book's release date was part of the calculation. For example: A book that got three 5-star ratings in just four months is listed higher than a book that got the same ratings in a much longer period of time.

Some other things worth pointing out:

  • Like in the previous edition, I ignored all technology-specific titles. Only books about generic software engineering topics were allowed on the list.
  • I discarded all re-releases of books that had earlier editions before 2007. The only exception is Making Things Happen, because Scott Berkun changed the title of his book. And because he's a nice bloke who granted an interview with me.
  • Thomas Erl is on this list three times (#6, #17, #24). He didn't pay me for that, unfortunately. He just did it all by himself.
  • Three books released in 2009 were already able to get listed here, which is quite an achievement: Agile Testing (#28), 97 Things Every Software Architect Should Know (#33), and Scrumban (#49).
  • There are 22 books from 2007 on this list, 25 books from 2008, and 3 from 2009.
  • While making this list I drank 8 cups of coffee, and consumed a full bag of Belgian chocolates.
  • This must be the first list of mine where Steve McConnell is not listed.

I hope you will enjoy the results...

  Title / Author(s) Release
1 Dreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software
Scott Rosenberg
2 Clean Code: A Handbook of Agile Software Craftsmanship
Robert C. Martin
3 Pragmatic Thinking and Learning: Refactor Your Wetware
Andy Hunt
4 Managing Humans: Biting and Humorous Tales of a Software Engineering Manager
Michael Lopp
5 Beautiful Code: Leading Programmers Explain How They Think
Andy Oram, Greg Wilson
6 SOA Principles of Service Design
Thomas Erl
7 The Productive Programmer
Neal Ford
8 Smart and Gets Things Done: Joel Spolsky's Concise Guide to Finding the Best Technical Talent
Joel Spolsky
9 Making Things Happen: Mastering Project Management
Scott Berkun
10 Release It!: Design and Deploy Production-Ready Software
Michael Nygard
11 The Art of Agile Development
James Shore, Shane Warden
12 Service-Oriented Modeling: Service Analysis, Design, and Architecture
Michael Bell
13 Scaling Software Agility: Best Practices for Large Enterprises
Dean Leffingwell
14 The Annotated Turing: A Guided Tour Through Alan Turing's Historic Paper on Computability and the Turing Machine
Charles Petzold
15 Sketching User Experiences: Getting the Design Right and the Right Design
Bill Buxton
16 Continuous Integration: Improving Software Quality and Reducing Risk
Paul Duvall, Steve Matyas, Andrew Glover
17 SOA Design Patterns
Thomas Erl
18 The Developer's Guide to Debugging
Thorsten Grötker, Ulrich Holtmann, Holger Keding, Markus Wloka
19 Agile Adoption Patterns: A Roadmap to Organizational Success
Amr Elssamadisy
20 Manage It!: Your Guide to Modern, Pragmatic Project Management
Johanna Rothman
21 The Principles of Project Management
Meri Williams
22 Introduction to Information Retrieval
Christopher D. Manning, Prabhakar Raghavan, Hinrich Schütze
23 Head First Software Development
Dan Pilone, Russ Miles
24 Web Service Contract Design and Versioning for SOA
Thomas Erl, Anish Karmarkar, Priscilla Walmsley
25 The Art of Multiprocessor Programming
Maurice Herlihy, Nir Shavit
26 Scaling Lean & Agile Development: Thinking and Organizational Tools for Large-Scale Scrum
Craig Larman, Bas Vodde
27 SOA in Practice: The Art of Distributed System Design
Nicolai M. Josuttis
28 Agile Testing: A Practical Guide for Testers and Agile Teams
Lisa Crispin, Janet Gregory
29 The Business Analyst's Handbook
Howard Podeswa
30 Scrum and XP from the Trenches
Henrik Kniberg
31 xUnit Test Patterns: Refactoring Test Code
Gerard Meszaros
32 Applied SOA: Service-Oriented Architecture and Design Strategies
Michael Rosen, Boris Lublinsky, Kevin T. Smith, Marc J. Balcer
33 97 Things Every Software Architect Should Know
Richard Monson-Haefel
34 Perfect Software: And Other Illusions about Testing
Gerald M. Weinberg
35 Expert Product Management: Advanced Techniques, Tips and Strategies for Product Management & Product Marketing
Brian Lawley
36 The Enterprise and Scrum
Ken Schwaber
37 Algorithms in a Nutshell
George Heineman, Gary Pollice, Stanley Selkow
38 The Software Project Manager's Bridge to Agility
Michele Sliger, Stacia Broderick
39 Designing Web Interfaces: Principles and Patterns for Rich Interactions
Bill Scott, Theresa Neil
40 If I Only Changed the Software, Why is the Phone on Fire?
Lisa K. Simone
41 Puzzles for Programmers and Pros
Dennis Shasha
42 Managing the Test People
Judy McKay
43 Practical Project Initiation: A Handbook with Tools
Karl E. Wiegers
44 Simple Architectures for Complex Enterprises
Roger Sessions
45 How We Test Software at Microsoft
Alan Page, Ken Johnston, Bj Rollison
46 The One Page Project Manager for IT Projects
Clark A. Campbell
47 The Art of Lean Software Development: A Practical and Incremental Approach
Curt Hibbs, Steve Jewett, Mike Sullivan
48 Code Leader: Using People, Tools, and Processes to Build Successful Software
Patrick Cauldwell
49 Scrumban - Essays on Kanban Systems for Lean Software Development
Corey Ladas
50 Software Requirement Patterns
Stephen Withall

The book Getting Results from Software Development Teams from Lawrence J. Peters (8-6-2008) would have been #51. But alas, I have to stop somewhere...

Published at DZone with permission of {{ articles[0].authors[0].realName }}, DZone MVB. (source)

Opinions expressed by DZone contributors are their own.

{{ tag }}, {{tag}},

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}
{{ parent.authors[0].realName || parent.author}}

{{ parent.authors[0].tagline || parent.tagline }}

{{ parent.views }} ViewsClicks