Subject: a lemonade stand
From: Tom Lord <>
Date: Tue, 23 Oct 2001 01:32:56 -0700 (PDT)

Engineering processes, quality, and Free Software business models are

Here is a "lemonade scale" example that illustrates that.

Consider GCC.

GCC has a pretty large test suite and a moderately formal process for
making changes to the "main branch" of the gcc source.

When people submit patches, those patches have to pass the test suite
before being made to the main branch.  In effect, there is a
"gatekeeper" for GCC who decides which patches get to go in, and which
don't.  (The gatekeeper isn't a specific person, in the case of GCC --
although Mark Mitchell is close -- instead, the gatekeeper is a
logical role within a formal process.)

On which platforms does the gatekeeper test?  Which tests go into the
test suite?

The engineering bandwidth to add and run specific tests, test on
particular platforms, and port patches is scarce.  We can charge a
little bit of money to host a particular platform as part of the
testing process.  We can charge a little bit of money to add a
particular test to the test suite.

So the process of GCC testing, which requires tools for its
implementation, creates a (trivial) revenue opportunity.

(I'm well aware that in reality, testing of GCC is distributed -- Mark
announces a candidate release and volunteers test on platforms they
care about.  That reality doesn't much matter for this mind-experiment
lemonade-stand business.  I just hope to get people thinking about how
process, tools, and revenue opportunities are intertwingled.)