[Python-Dev] Stability and Change

Andy Robinson andy@reportlab.com
Wed, 10 Apr 2002 03:03:25 +0100

I missed this thread due to a heavy schedule
and hope people won't mind one more comment.
Let's be really blunt:

     Frequent releases cost me money.  

I am sure I am not alone.  Like many small firms 
we have to trade off uses of our time 3 ways between:
(a) billing customers for revenue to live off,
(b) constantly re-testing, building binaries
    and installers etc etc. just to keep it
    all working and everyone supported
(c) doing what we really want to - working on
    product features.

When I started ReportLab I never realized (b) could 
be so much work and how little time would be left
for (c) as a result. I desperately want to see a 
"recommended stable version" declared with intervals 
of 18 months or greater. 

A very important point for me is how often the C API 
changes - that's when you have to build new binaries for 
everything, retest all existing apps, and then spend 
a lot of time which is hard to charge walking your customers
through a big upgrade cycle. I could write an essay about
how much crap can be involved in this.  Do you know how much 
advance planning it takes to get a large customer to upgrade
a package on their development, user test and live boxes,
when they have no perceived business need for it?
Ironically it seems to be about six months :-)

24 months would be even better. In the meantime there 
is lots of time to try out new language features, even 
get them wrong and retract them, and I'll be playing
with them in the evenings too - just not on customer sites.  
Meanwhile, those of us who regularly build shared libraries and 
installers for various platforms would just stick on the "recommended 
stable version" and not feel pressurised into doing binary installers
of the ones in between.  By definition this version will have to 
have existed for a little while before it is so designated,
and there should be some commitment to fixing bugs in it.

For me this is not about code stability, which is generally
excellent.  It's about giving the commercial world a schedule
they can make plans around. I believe this designation will 
save time for everyone, including Pythonlabs.

Best Regards,

Andy Robinson
ReportLab Inc.