PJ Cabrera - 2004-04-06

It seems there is a great need for organizations, particularly those devoted to publicly-funded research, to acquire and define processes. I think part of the SNAP solution could be to document a proven software development process for open source development.

Here is the URL to a recent blog entry somewhat related to this:

http://weblogs.java.net/pub/wlg/1167

"When research meets software development
Stephen Montgomery (March 31, 2004 5:03PM PT)

The goal of research is to evaluate a new idea and create a body of work that can improve the methods of scientific inquiry, either by simplifying the process or by uncovering new knowledge. When research-driven software exists in the public domain it is serving this very purpose. However, it is too common to download a new algorithm or API and find it sparsely documented in terms of overall readability.

Standards like the JCP have it right for community development: a strict sense of the requirements and direction are captured early in the process. It is unfortunately very difficult to get small software development groups who are targeting niche domains to remember that when they develop code for the community, they should be writing software for people first and computers second (as Steve McConnell might put it).

Implementing a community process amongst these groups is likely to be as easy as getting IBM and Sun to agree on a direction for Eclipse (was that one too easy?). Competing funding, (do I dare say) personalities, and the impending deadlines created by various goal-oriented parts of our psyche all counterbalance the investment in processes and standards."

The article goes on to propose some ideas and solutions. The SNAP approach is similar in many ways to what Stephen Montgomery suggests. But my point specifically is,  he clearly sees a need, especifically in publicly-funded open source projects.

Could the SNAP brand and vision help define a solution to this need, by being an shining beacon to other publicly-funded open source projects? Could the SNAP team be a "mentor by example" to other open source projects and lead the way to better defined and documented, proven processes in open source development?

I find that question very interesting.