Thursday, January 21, 2010

Software Development by the Numbers

A couple of years ago, I was working with a software start-up that had designed an integration framework that could be used for transporting and transforming data for Rich Internet Applications (RIAs). As we prepared for our product launch, we talked to analysts about RIAs, and we evaluated partnerships with software vendors who were building toolkits for RIAs. We listened to podcasts about RIAs. We watched developer presentations. We had RIAs on the brain.

Around this same time, I attended an event hosted by the American Marketing Association in Boston. During the festivities, I struck up a conversation with someone who turned out to be a principal at a local Web application design firm. They had been in business for nearly a decade and had some big name clients.

"Getting much interest in RIAs?" I asked.

"What's an RIA?" he answered.

Wow, I thought. Is my client way too much out in front, or is this nice gentleman's Web firm a tad bit behind? Was I paying too much attention to analyst blogs and Adobe's development plans? Had I entered the "reality-distortion field" of analyst pronouncements and vendor slide shows? These new Web technologies were undoubtedly cool, but how many people were really using them?

Who's Building What

A new survey conducted by Forrester Research for Dr. Dobb's answers these questions, and more. The survey of over 1,000 Dr. Dobb's readers reveals:

  • Over a quarter of the programmers surveyed said they were developing RIAs. The survey authors note that "RIAs are slowly replacing HTML when it comes to Web site development."
The survey also found that:
  • Nearly 80% of programmers are using open source software for development or application deployment.
  • Over 33% of developers use Subversion for source code control. The next most popular source code control tool, Microsoft SourceSafe, has a market share about one third that size.
  • The most popular databases for application deployment are (in order) SQL Server, Oracle, MySQL, and PostgresSQL.
  • Most developers still write code on Windows PCs (only 5% use Apple), and Linux and Windows are the primary operating environments for deploying applications.
  • Only about 4% of developers are deploying applications in the cloud (a surprisingly low number, I think, given all the talk about cloud computing).
  • Less than 15% of programmers spend all their time writing in a single programming language.
  • Agile processes are increasingly popular: 45% of developers are using Agile processes, and of those, 20% say agile is a key part of their project's success. How about project overhead? Dr. Dobb's found that "only 2% of Agile developers feel that their methodology creates significant busywork, compared with 27% of developers doing waterfall development."
  • An impressive 60% of developers don't consider their work just a 9-to-5 job. They apply their skills in side projects and for other organizations.


Forrester sees the world of software development as being in transition. (In a sense, it's always been in transition.) Their advice?

Spend more time understanding what your developers are doing both and work and outside of it, and solicit their ideas about how these technology could speed up development and cut costs for the organization.

Good advice.

If you're a developer or working on a project that involves software development, I strongly recommend that you read the full article, which was written by Jeffrey Hammond of Forrester Research, and which you can find online here.

Photo of numbers Creative Commons License, some rights reserved, by hegemonx.