Skip to main content

Total Cost of Development and Developer Communities

Posted by pelegri on April 17, 2004 at 9:48 AM PDT

The term total cost of ownership is frequently used to capture costs,
sometimes forgotten, involved in owning a system. I've found useful
to use the term total cost of development in a similar manner,
capturing some of the less common contributors. Some of these costs are:

  • Training
  • Examples
  • Support
  • Risk of choosing the right solution

Training, examples and support should, ideally, be targetted to
a the specific needs and background of the developer. Many
people remember these contributors, but the last contributor is easy to overlook: when a
developer chooses an approach to solve a problem (architecture, tools,
platform, whatever) she is taking the risk that the approach may not
be a good match to the problem. The mismatched approach may increase
the cost of implementing the solution, or may even require a restart of the

There are other contributors to the TCD (tell me in the talk back), but
what I find interesting is that all these costs are very well addressed
by developer communities. The example that I often use is Struts
. I don't want to minimize the
technical benefits of Struts, but I believe that the main reason why
Struts is so succesful is the very strong developer community built
around the code which help reduce the tocal cost of development
by addressing the contributors I mention above.

There are a number of developer communities,
from our own Java.Net communities (I belong to the
and the jwsdp communities) to those
provided by many vendors, includinng

Buiding a community is hard and takes time to build, but when they do a good job,
they are extremely valuable. I think we are still, collectively, learning how to
make these communities best serve their members.

Related Topics >>