On Tue, Jul 7, 2009 at 12:14 PM, Martin
Rubey<martin.ru...@math.uni-hannover.de> wrote:
>
> Dear all,
>
> I would like to try to build constructively on the following statement
> and reply:
>
> William Stein <wst...@gmail.com> writes:
>
>> On Tue, Jul 7, 2009 at 9:16 AM, rjf<fate...@gmail.com> wrote:
>>>
>>> In terms of support, one major disadvantage of Sage, I think, is that
>>> significant pieces of the implementation apparently consists of
>>> pieces of code that are used as black boxes, and that the
>>> Sagemeisters proudly disavow knowledge of. Thus a bug traced to
>>> Maxima is unfixable "until we rewrite Maxima in python".
>
>>> [...]
>>
>> There is precisely one component of Sage that has the above property,
>> and that is Maxima.  There are absolutely no other such components.
>> Fortunately this won't be the case forever.
>
> It seems to me that this conversation is not about a technical problem,
> but rather a human one, and I think (since affected myself) that it's
> even more important.

I think this is both a technical and social problem. Thanks for
highlighting the social problem clearly below.

> It seems to me that sage is a huge success.  Part of it's success story
> is very likely the (in my opinion: wise) decision to use other software
> as is, at least as a start.
>
> However, as sage matures, more and more porting work starts to be done,
> at least this is what appears to be the case to me.

It depends on the component of Sage.  For example, Sage no longer uses
Maxima for any basic symbolic manipulation -- it uses a substantially
modified version of Ginac:   http://pynac.sagemath.org/
I don't view this as porting, since we didn't look at any of the
source code of Maxima when
doing this.   Likewise, there is native python-based development of
symbolic integration as part of the sympy project and this is not at
all a port of anything in Maxima, since they don't look at the Maxima
code either (in their case, they can't because Maxima is GPL'd and
Sympy is BSD licensed).   This sympy code is an important component of
Sage.   I really like that the following works:

sage: integrate(sin(x)^2*cos(x)^3+log(1/x), algorithm='sympy')
-1/5*sin(x)^5 + 1/3*sin(x)^3 - x*log(x) + x
sage: integrate(sin(x)^2*cos(x)^3+log(1/x), algorithm='maxima')
-1/5*sin(x)^5 + 1/3*sin(x)^3 - x*log(x) + x


> Now, how does it *feel* if you wrote or contributed to a package, which
> is in the end ported (by somebody else) to sage?  (Especially, if the
> original package is not that much of a "community" success.)  How does
> it *feel* if sage uses a package for years, but with the declared goal
> to replace it as soon as possible?
>
> At least for me, it feels *really bad*.  (...and I guess, in fact, I
> know, that I'm not the only person having these feelings...)

I'm really sorry that your feelings are hurt.   That's not my
intention.   It definitely sounds like you're speaking from personal
experience.  What package did you write "that Sage used for years, but
with the declared goal to replace it as soon as possible?"

Personally, I've found it valuable to try not to identify myself too
much with the code I write, since so much of the code I write turns
out to be rewritten in a much better way by other people.   I try to
view that as part of the natural evolution of software.    But
obviously not everybody can do this.

Anyway, it is helpful to realize that rewriting/porting/reimplementing
algorithms is a standard part of the natural evolution of software,
and it probably always will be.

>  I do not
> know how to remedy this, but I believe that it would be a great service
> to the "computer algebra developer" community, if this problem were
> recognised and adressed.  I can imagine, however, that it's really
> difficult to adress it.  And, of course, I may be wrong and it's not
> important at all, since sage is something technical.
>
> While I'm at it, I also perceive another obstacle to "complete
> happiness", which I'd like to mention, although it's entirely completely
> unrelated to the above: humour seems to vary wildly across the earth,
> and even between neighbours.  I found William's april fool joke *not
> funny at all* and it took a lot of help from a colleague/friend (and
> sage developer, guess who :-) to understand that it was (probably) not
> meant to offend.  A similar example, demonstrating how such differences
> can even endanger a community, can be found on comp.lang.lisp in the
> r.i.p. erik naggum thread.

Wow, I'm really sorry that you found that April fools joke so
offensive.   Did you find it offensive because you are a huge lisp
fan, or because  of the suggestion that we rewrite code that people
had put a lot of time into?  Also, did you find it offensive even once
you realized that it was 100% meant as an April Fools joke?

Again, I apologize for offending you with that joke.  It was really
meant to be entertainment and nothing else.

William

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

Reply via email to