Dr. David Kirkby wrote:

> 
> I know we have had this discussion before, but I do not seem to be alone 
> on my views on this one.
> 
> It is not clear to me there needs to be very frequent releases. I know 
> you say Apple itunes brings out a new release every couple of weeks, but 
> this is quite a different sort of market. Wolfram Research bring out a 
> major Mathematica release every couple of years, and minor releases 
> every 6 months or so. That seems about the norm for professional software.


I see this as an advantage of Sage.  For example, there were bugs in 
Mathematica that I ran into that had to wait a long while before they 
were fixed (one I'm thinking of still is not fixed, and bothered me the 
other day when I drew a graph!).  I just have to live with it for 
another 6 months.


> 
> IMHO, making a new release every 6 months, whilst making all alphas, and 
> release candidates available to anyone who want them would be better. 
> The releases could be more thoroughly tested, but people could still 
> play with the latest unstable stuff if they want to.


Here are some random responses to this comment:

You make this comment as if the code base is unstable after only 2-3 
months.  If a patch makes the code unstable (e.g., doctests fail or 
compilation fail), then it is good grounds for rejecting the patch.  I 
think it's much easier to maintain stability (e.g., make sure doctests 
pass, it compiles, etc.) all along, rather than let the codebase be 
unstable for several months and then tighten it up for a release.

As a developer who often develops things that I know my class will be 
using sometime this semester, it would be a disincentive if official 
releases were on the order of 6 months.

If we have the manpower, 4-5 weeks seemed about right.  That was short 
enough time that it wasn't a big deal to miss a release in finishing up 
a feature (the next release was always not too far distant).  However, 
there was always the incentive of "if I work just a bit more on 
polishing this up, I can see it in an official release in a week or 
two", so it at least helped me to be more active in development.  With a 
longer release cycle, there's a greater temptation to either put off 
development (at the beginning of a cycle) or argue for delaying the 
release for this one last really important patch, so that people can use 
it for the next 6 months.

For this release especially, it seems like there have been lots of 
problems reported that were answered "just wait until the next release". 
  Which, as we know, has been a very long wait compared to what we expected.

Also, I would imagine that the vast majority of users are using 
sagenb.org, which is automatically updated.  This takes out the hassle 
of always having to update your release to the latest.

If we are really are trying to help users become developers, then 
putting the freshest codebase in their hands is very important.  I think 
Linus has the right attitude here of release early, release often.  If I 
was thinking of fixing something small (how contributors usually start), 
but then I found out that in order to fix the small thing, I had to 
download the latest alpha because a huge amount of the code had changed 
in the 4 months since the past release, I would probably just forget it.

As it is, there is a semi-major research code contribution I plan to 
make before Christmas that will be needed at a workshop in January, so I 
certainly hope that we don't have 6 months before the next release!

Jason

-- 
Jason Grout


--~--~---------~--~----~------------~-------~--~----~
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to