I recently finished reading Dreaming in Code by Scott Rosenburg; I requested it for Christmas last year because I thought it would be an inspiring story of a successful software project. Heck, I want to learn about the nirvana of what it would be like to live the dream. Who wouldn’t?
At the very real risk of getting myself blacklisted by the very famous rock star geeks named in this book, Dreaming in Code is anything but a success story. Indeed, the story of this software development effort provides great insight into why so many people hate computers, software, and programmers.
This is a real life story of the ineffectiveness of self driven work teams who can’t make a decision in the absence of an empowered leader. The team spends months deciding "architectural direction" before delivering anything, millions of dollars to deliver little to no value.
Dreaming in Code chronicles the team dynamics surrounding the group of people who built Chandler, Yet Another Outlook Killer application that, of course, did no such thing. The company established to create Chandler was founded by Mitchell Kapor, of the Open Source Application Foundation (OSAF) and original founder of Lotus Development Corp. Apparently this is what bored millionaires do with their fortunes in Silicon Valley rather than taking a vacation or feeding a village.
This team actually didn’t ship v1.0 for 3 years. They slid every schedule, they argued about the fundamental features of the system for months, they hard coded dependencies everywhere, and in short: They squandered money like only a group of self important, over-privileged , 21st century knowledge workers could.
Guess what? Life as a software developer (or as a user or customer) doesn’t have to be this way. Find a company lead by a visionary with the sense to hire a group of operators to execute on the vision. If everyone’s head is in the same cloud, none of them will keep their feet on the ground. Thankfully the team was beginning to use time boxed iterations with a set delivery timeline toward the end of the book. Who knows, maybe someday they’ll release v1.1.
I highly recommend this book. Dreaming in Code is the best anti-pattern for running a software team/project/company I have ever read.