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 -~----------~----~----~----~------~----~------~--~---