---

Advogato: ‘Best Practices’ for Open Source?

“I’ve been thinking about project management methods &
coding standards for use with Open Source Projects. Most
programmers would agree that some form of management, and some
standards are necessary. Its the which ones part we have problems
with. Traditional ‘best practices’ need a little tweaking to fit
with OSS development. So here’s my attempt – I would love feedback
& suggestions….”

“The main problems with traditional methods/methodologies stem
from the fact that they were developed to support scarce resources.
A result of this scarcity was that these resources were also
expensive. Not only were programmer time, & machine time
expensive, distribution was as well. The cost of distribution was
not just limited to physically moving the code from one place to
another, but often incurred additional expenses such as technicians
to install the code. This made frequent releases of development
code impractical. A side effect of this was that ‘end user’ input
was often unavailable until the project was nearly completed. As
software was so expensive to develop, it was paramount that it be
maintainable otherwise there was no hope of recouping the cost of
development. These conditions resulted in strict methods that
required in-depth requirements docs up front. Users were forced to
determine all their needs in advance, with little feedback as
development progressed. Detailed specs & designs were produced
from the requirements, along with detailed schedules. The entire
process was documented heavily, with numerous ‘sign-offs’ meant to
ensure everyone agreed on what needed to be done and how it was to
be accomplished. Once implementation was begun, formal coding
standards were used to increase code readability, maintainability
and shorten the learning curve for new developers. While the
methods could be ‘heavy’ in terms of startup cost, the anticipation
was they would reduce the overall project cost & improve the
quality of the resultant product.”

Complete
Story

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends, & analysis