Finished reading Dreaming in Code this week. It is a book about developing software, happily not a flavor of the month methodology exercise. Author Scott Rosenberg observes at the outset of the book, “if my research had uncovered some previously unkown innovation or fail-safe insight into building better software, I’d be smarter to seek investors, not readers.” Dreaming in Code tells the story of the first three years of the Chandler project, which generously permitted him sit among the team’s ranks and write openly about the ups and downs of the project. It’s a great story, well-told, full of inspiration and pain, and ongoing (in May 2007 the project is in release .7a4, or pre 1.0). If you have ever developed software with more than one person you will probably recognize, uncomfortably, the difficulties, differing views, technical tradeoffs, slipped schedules and cut features that appear to have been a part of software development since its beginnings. In addition to telling the Chandler story Rosenberg traces the history of software methodology, from the Mythical Man Month to Agile. I found this section especially interesting. It is written not from the perspective of an enthusiastic practitioner, but instead from a skeptical outsider taking a broad view of the methodology enterprise. Bottom line it’s a fantastic read, accessible to techies and non-techies alike. I highly recommend it to anyone interested in understanding how software gets made.