[Squeakfoundation]Brainstormin'

Mark Guzdial squeakfoundation@lists.squeakfoundation.org
Tue, 29 Jan 2002 14:50:12 -0500


At 2:25 PM -0800 1/28/02, Dan Ingalls wrote:
>1.  Decisions about code quality for lots of the stuff that goes 
>into the system.  This has actually been relaxed a lot in the last 
>year, as we have let more in through the more SqF-style harvesting 
>process.
>
>2.  Decisions about what should and should not go into the image.
>
>3.  Decisions about what Squeak "is" -- what are its strengths, how 
>it should be "positioned" and presented, who are its likely 
>customers, and what will make it most immediately appealing and 
>useful to them.

I think that these are really hard decisions, and they need to be 
made in concert with a commitment to maintain changes.

Jim Herbsleb of (formerly, before his dept was dissolved) AT&T Bell 
Labs did a study of Apache a couple years ago.  By interviews with 
the key Apache team and with analysis of the CVS logs for Apache, he 
discovered that something like 90% of the code was written by a very 
small number of guys.  Does this mean that Apache is not really 
open-source?  No -- lots of that code was inspired by or based upon 
work from others.  But the really critical piece here is that 
relatively few of the enhancements or new functions that people had 
invented for Apache really made it into the system.  From the 
interviews, he found that the biggest decision for a piece of new 
code was, "Am I going to be willing to maintain this forever after?" 
Based on that decision, only absolutely core functions got added, and 
even good code got refined until it was great before it was 
integrated in.  I don't think this reticence is a BAD thing at all -- 
it results in a small but powerful and robust product.

Bug fixes are easy -- just harvest them and patch them in. 
Enhancements, especially big ones, need to be made carefully.  I hope 
that as decisions get made to put new things in, the decisions are 
made while considering whether we can afford to KEEP the new things 
in, i.e., is the developer promising to stick around and keep it 
going.  I don't mean to slight the developers of Linda, Connectors, 
etc.  I just think that maintaining the enhancement belongs on the 
decision criteria list.

Mark

-- 
--------------------------
Mark Guzdial : Georgia Tech : College of Computing : Atlanta, GA 30332-0280
Associate Professor - Learning Sciences & Technologies.
Collaborative Software Lab - http://coweb.cc.gatech.edu/csl/
(404) 894-5618 : Fax (404) 894-0673 : guzdial@cc.gatech.edu
http://www.cc.gatech.edu/gvu/people/Faculty/Mark.Guzdial.html