Software Productivity: The Only Two Things That Matter

Joel Spolsky’s review of Dreaming in Code makes the point that Chandler is yet another high-quality data point that, contrary to the initial exhortations, Open Source is not a significantly-more-productive development methodology. It turns out that Open Source is an interesting business model (somewhat to my surprise) and that free-as-in-beer is a killer competitive strategy (Eclipse or, for that matter, IE and not surprising to anyone).

This is not to bash Chandler’s ultimate deliverable: the Mozilla project would be a similar datapoint and Firefox is a great piece of software (and my choice of browser). OSS can certainly be high-quality (Apache being another exemplar). But at this point it’s clear that open-source development is not inherently fast. Joel fingers lack of analysis and design as Chandler’s shortcoming, but veterans (should) know that promoting A&D as inherently speedy is laughable.

I’m all for spending vast amounts of energy debating the incremental issues of languages, tools, development methodologies, design paradigms, and so forth, but let’s be clear that of all the things we know about software development, there are only two things that we know to be inherently highly productive:

  • Well-treated talented programmers; and
  • Iterative development incorporating client feedback

IDEs are Noise Compared to Version Control, Build System, and Bugtracking

I was struck by the statement “the version control system is a first order effect on software, along with two others – the build system and the bugtracker. Those choices impact absolutely everything else. Things like IDEs, by comparison, don’t matter at all,” in a post by Bill de h?ra. It’s not 100% true — innovations like integrated debugging (Turbo Pascal?), refactoring (IDEA), and the Smalltalk browser — can be enormous, but there is certainly more than a grain of truth to it.

IT Windfall from Vista == Consumer Costs

Alan Zeichick points out the absurdity of the position, touted by Microsoft, that Windows Vista will “generate” $10 billion in new revenue for the California IT industry this year. Alan observes that IT revenue means that “someone else’s costs have to go up” and that it’s perverse to “celebrate a software update when its creator boasts that it will increase the cost of IT.” Good for those who charge for technology per se, but bad for dentists, manufacturers, schools, restaurants, and others in the large majority of business who do not directly profit from work in IT.