The Sage Project (Nathann Cohen)

718 views
Skip to first unread message

William Stein

unread,
Feb 25, 2016, 9:04:26 PM2/25/16
to sage-devel
Dear Sage Developers,

I spent 2004 starting the SageMath project, and in 2005, choose the
name "SAGE" (=Software for Arithmetic Geometry Experimentation)
inspired by my wife's Navajo traditions that involve burning sage. I
bought the sagemath.org and sagemath.com domain names shortly
thereafter, and have paid with them out of my pocket for a decade.
As Sage went from something that I did fulltime (with no help) to
something with other people's help, and many decisions regarding
direction had to be made, I came up with a mission statement for the
project:

Create a viable free open source alternative to Magma, Maple,
Mathematica, and Matlab.

This is as much my goal *right now* in 2016, as it was in 2006, and
everything I'm doing right now is part of a longterm strategic
approach to accomplishing this goal, informed by my reducing naivety
and idealism. The point of the Sage project is to build the car,
instead of reinventing the wheel. It is to use everything good from
open source, and to get open source developers and projects to work
together toward a common goal, rather than petty competition with each
other. It is to stop ignoring the fact that in many ways Magma,
Mathematica, etc. are *decades* ahead of everything in open source and
that academia produces.

How has the Sage project done after 10 years? Traffic to the
SageMath.org website has NOT increased at all (actually gone down a
little) more or less since 2011. It's *very* generous to estimate
that the number of users of Sage is maybe 5% of that of Mathematica.
So despite us thinking that Sage's core functionality is in many cases
a viable alternative to that of the Ma's, there is clearly something
very, very seriously lacking. If Sage were really a viable
alternative, people would use it instead of giving the Ma's over
$100million/year. There are dozens of serious issues that hold back
adoption, e.g., documentation, marketing, functionality, etc.; if you
put in the work and listen to criticism from users, you will know.

I have talked to a *LOT* of users and potential users of Sage. Due to
founding the project, I'm the recipient of many random complaints
from people, and I have spent a week on my feet fielding complaints
and questions about Sage all day long at the Joint mathematics
meetings for 9 years in a row (which means lots of questions from
non-Sage users). It's very clear to me that two huge parts of being
"a viable alternative to the Ma's" are (1) very easy
access/installation, and (2) commercial support. Regarding (1), we
all know how bad the situation is with Sage -- I recently checked our
mailing lists over a month and nearly half the threads were about
install/build issues; also, we don't even have a native windows
version. Regarding (2), there are many teachers out there who get
paid by student tuition to teach courses and want to provide a
professional quality experience to their students (not something
"grungy"). If they choose an Ma*, they get dedicated high-quality
commercial support for themselves and their students (commercial
support means a lot of things beyond "somebody to talk to").
Commercial support is something that Sage must also provide to be a
viable alternative. This was clear from the beginning. Back in 2007
we tried to get started (see
https://groups.google.com/forum/#!forum/sage-dotcom), but I was too
afraid and naive to start a company at that time.

The existence of a company, SageMath, Inc., fits well with the mission
statement of the project I founded. Nathann Cohen clearly prefers a
software project with a very different mission statement. Ethically
preferring "academic use only" (but still technically using GPL),
where every decision is made democratically, with idealistic goals of
purity. Where there are no new releases with bugs ("it's ethically
wrong to make a release of Sage with known bugs!"). That is NOT the
project I started, that I host, and that I have given a huge amount of
my life to. And I'm old enough to know that it is not the sort of
project that could ever compete with the Ma's in any meaningful way.

Nathann -- why don't you come up with your own mission statement,
rules, project name, and go for it!? You can even start with the
complete Sage codebase.

For everbody else who wants to create a viable free open source
alternative to Magma, Maple, Mathematica, and Matlab, let's step up
our f'n game and actually do it. Those people in statistics did (with
R) and we can too!

-- William

--
William (http://wstein.org)

William Stein

unread,
Feb 25, 2016, 10:34:12 PM2/25/16
to sage-devel
My kitchen right now is full of Sage...

--
Sent from my massive iPhone 6 plus.
IMG_2797.JPG

Nathann Cohen

unread,
Feb 26, 2016, 2:51:20 AM2/26/16
to sage-devel
Hello William,

I don't think that I disagree with any of the goals you aim at for Sage. I
certainly don't see anything wrong with your involvement in seeing it come
true. I don't see anything wrong in the way you embrace the problems you meet on
the way and try to address them.

My main complaint about it all, is that you seem to think about it as if you
were still alone in the task. So alone that those who have been developing it
since you stopped are hardly part of the picture you drew (and that's many
persons, and that's many years). Two problems that I see:

1) You expect people to participate to a task, but make by yourself decisions
   which involve all of them. Sometimes without informing them, least of all
   discussing the plan with them.

2) So doing, and because they are not part of the story, you overlook that they
   could also help better toward what seem urgent to you: they could, if you
   involved them more.

It's like you delegated development to the people here, and now have your hands
free to do whatever you think needs be done. And so doing, people here who
contribute to sage (and who grew an interest for turning Sage into the perfect
math software -- all sides of the question considered) are not invited to step
on this second terrain, where you still seem to think as if you were alone
against the world.

About your short description of me: be fair. I do not even understand what you
mean by 'academic use only' (and I'm fine with the GPL) but yes, I would prefer
all decisions to be taken democratically. Even the non-technical
decisions. Having sagemath.com redirect elsewhere than sagemath.org was one of
them. Creating a for-profit company with the same name as the software was
another.

"With idealistic goals of purity": be fair. I request more democratic decisions,
and if there is *anything* you can grant me it is the very clear knowledge that
my opininions are not always shared by everybody. When I ask for more democratic
decisions, I am sharply aware of the differences. But more democracy, indeed,
would be an improvement.

"it's ethically wrong to make a release of Sage with known bugs!": be fair. I
fixed too many of them to believe that I never add any, or that none
remains. What was ethically wrong in the instance you are apparently refeering
to was the *removal of a warning* from a code that we knew returned wrong
results.

Finally: I don't see this project achieving the aim you defined without somebody
like you. You have the devotion, the energy, the talent. As a human
being, however, I find it hard to contribute to Sage if you see it as a
relatively unimportant subtask of a bigger plan over which the
community has no claim.

Have fun,

Nathann

Andrew

unread,
Feb 26, 2016, 7:17:39 AM2/26/16
to sage-devel
I sat by and watched the previous thread develop with disbelief but without saying anything, so let me say it now. In the last thread there were a lot of negative comments from Nathan and many others trying to reason with him: Nathan against the world. I hope that this is not going to be repeated here as I thought the whole thread was very destructive. I like Nathan: he's a nice guy and he contributes a lot of sage code but I also know that these threads have turned quite a few people away from sage. I suggest that we agree to disagree and spend our energy on something more important.

Regarding the SMC project, as far as I can see it uses SAGE, legally under the GPL, and it fully acknowledges all of the contributions from the sage community. Moreover, William has aid that any income generated by the company will be used to fund further development. I'm happy with that.

The reality is that sage is currently struggling. I have spent quite a lot of time writing sage code. If sage suddenly disappears all of the time that I have spent on sage will be lost. So it is very much in my own interests for SMC to take off because if it works then my code will be viable for longer.

I am fully supportive of the SMC and William's efforts to get it up and running.
Andrew

parisse

unread,
Feb 26, 2016, 7:44:49 AM2/26/16
to sage-devel
Regarding the mission statement, I'm a little bit skeptic one can build a viable alternative to Magma on one side and Maple, Mathematica, Matlab on the other side. Magma is a very specialized software that is probably unknown to most mathematicians, and almost certainly unknown in other scientific fields, while most mathematicians and many scientists in other fields have heard about Maple, Mathematica and Matlab. From my very little experience trying sagemath, the system seems to me to be more designed to be an alternative to Magma than to Maple, Mathematica or Matlab.
Perhaps because it's fun to code something exciting related to your math research while it's not fun to write interfaces, fix bugs, support windows, write documentation targetting large number of students, code heuristics for nice solvers and antiderivatives... That's probably the reason why Maple, Mathematica and Matlab are commercial softwares: people doing the boring work want to be rewarded for that. And you can not expect to be rewarded by the math community, most mathematicians don't care about software production, about opensourceness, just look how the scientific editors make money with the work of mathematicians and scientists in general.
I don't know if the opendreamkit will succeed doing the boring work, but I believe there are several obstacles: the proposed salaries, the career perspectives, the code long term support... It's safer to bet on one person who is dedicated to the software, but the size of sagemath is probably too huge to be supported by one person alone.

Francesco Biscani

unread,
Feb 26, 2016, 9:28:31 AM2/26/16
to sage-...@googlegroups.com
I think your points are very important. Competing with a commercial CAS (or with any commercial software really) is much more about boring aspects of software development rather than exciting ones. In my experience the FLOSS community can excel at solving technically challenging problem, but it often struggles when it comes to subjects like QA, documentation, user interfaces, etc. Those are chronically weak points in projects such as LibreOffice, Firefox, the linux desktop environments in general, office programs, etc. It should not matter as much in math/science oriented software, but for whatever reason it seems like the CAS crowd needs to be pampered much more than (say) the numerical computing crowd.

The other point you make is really about academia being (for the most part) ethically bankrupt. I doubt this will change substantially in the short-medium term.

--
You received this message because you are subscribed to the Google Groups "sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.
To post to this group, send email to sage-...@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

William Stein

unread,
Feb 26, 2016, 10:33:52 AM2/26/16
to sage-devel
On Fri, Feb 26, 2016 at 4:17 AM, Andrew <andrew...@gmail.com> wrote:
> [...] Moreover, William has added that any income generated by the
> company will be used to fund further development. I'm happy with that.

Technically, I cannot guarantee that all income generated by the
company will be used to fund further development of Sage. Since I
personally have little money, in order to get the company going, I had
to involve outside investors, and I may have to do so again in the
future. They put their personal money on the line, and will have a
say about how profits might get used, if there are ever any profits
(even though our MRR exceeds hosting costs, SMC still isn't cash flow
positive, as there are many other costs; we've only proved that we
aren't selling ‎€2 for ‎€1/each). In the short term, it makes sense
that the priorities for use of revenue generated by SMC will be
activities that make Sage more valuable to a larger audience that is
willing to pay: improve documentation, books, education-related
functionality, and other resources.

-- William

William Stein

unread,
Feb 26, 2016, 10:54:54 AM2/26/16
to sage-devel
On Fri, Feb 26, 2016 at 4:44 AM, parisse
<bernard...@ujf-grenoble.fr> wrote:
> Regarding the mission statement, I'm a little bit skeptic one can build a
> viable alternative to Magma on one side and Maple, Mathematica, Matlab on
> the other side. Magma is a very specialized software that is probably
> unknown to most mathematicians, and almost certainly unknown in other
> scientific fields, while most mathematicians and many scientists in other
> fields have heard about Maple, Mathematica and Matlab. From my very little
> experience trying sagemath, the system seems to me to be more designed to be
> an alternative to Magma than to Maple, Mathematica or Matlab.

I also find the lofty goal of the "mission statement" to be
terrifyingly daunting.

Just to clarify (and make things easier), the mission statement, and
indeed Sage itself, is about the *entire ecosystem* of open source
math software, including your software (Giac, which is of course
installed on SageMathCloud). This is why Sage has always had
interfaces to most other computer algebra systems, why a large amount
of effort has been put into making Python interact well with Maxima,
Singular, etc., and why one of our slogans is "Building the car
instead of reinventing the wheel".

With SageMathCloud, we seem to be putting all open source math
software in one place so that it is very easy for the casual user to
at least get access to (say for a quick lab assignment). I would
have tried to do that with Sage itself, but the difficulty is just way
too daunting. For example, in SMC we have Jupyter notebooks with the
Octave kernel -- I tried going through the basic matlab tutorial on
the matlab website and everything worked perfectly. For the goal of
creating a viable free open source alternative to the Ma's, let's just
fully work with the Jupyter and Octave devs and feature their work
(e.g., https://github.com/sagemathinc/smc/issues/65).

Much of the Python library we have developed called "sage" is (or at
least was initially) mainly focused on functionality that was only
available in Magma, since that was a huge gap in the available open
source code at the time. However, if you look at open source more
generally, and even what comes with the Sage distribution, you'll find
that there are many extremely nice Python libraries that significantly
overlap with Matlab (etc.): numpy, scipy, matplotlib, pandas, etc.
For example, matplotlib provides 2d plotting that is very similar to
what is in Matlab, and numpy provides very similar matrix
functionality. I talk to a lot of users, and realize that the fact
that MATLAB-like functionality is in Sage is very non obvious (we
barely mention it in our reference manual); in fact, that Sage even
has anything to do with Python is not at all clear to many Sage users.
One of the undergrads working for me this quarter on Sage said that he
had to use Sage in a math class last year and at first thought it was
some crazy math language... then eventually realized -- "heh, this is
Python! I know Python. Or at least, I know how to search
stackoverflow for how to do things in Python..." -- and his experience
using Sage got much better.

> Perhaps because it's fun to code something exciting related to your math
> research while it's not fun to write interfaces, fix bugs, support windows,
> write documentation targetting large number of students, code heuristics for
> nice solvers and antiderivatives...

Indeed -- I haven't had a lot of fun for the last few years doing the
things needed to make SMC work. It's really painful.

> That's probably the reason why Maple,
> Mathematica and Matlab are commercial softwares: people doing the boring
> work want to be rewarded for that. And you can not expect to be rewarded by
> the math community, most mathematicians don't care about software
> production, about opensourceness, just look how the scientific editors make
> money with the work of mathematicians and scientists in general.
> I don't know if the opendreamkit will succeed doing the boring work, but I
> believe there are several obstacles: the proposed salaries, the career
> perspectives, the code long term support...

I agree. You can tell what ODK is supposed to do by looking at the
grant materials, which has precise deliverables and timelines. It's
lots of exciting non-boring work that got them the grant. ODK impact
will be very positive for open source math software, but won't solve
the hugely important "boring work" problem you mention above.

--
William (http://wstein.org)

William Stein

unread,
Feb 26, 2016, 11:03:30 AM2/26/16
to sage-devel
On Fri, Feb 26, 2016 at 6:28 AM, Francesco Biscani <blues...@gmail.com> wrote:
> I think your points are very important. Competing with a commercial CAS (or
> with any commercial software really) is much more about boring aspects of
> software development rather than exciting ones. In my experience the FLOSS
> community can excel at solving technically challenging problem, but it often
> struggles when it comes to subjects like QA, documentation, user interfaces,
> etc. Those are chronically weak points in projects such as LibreOffice,
> Firefox, the linux desktop environments in general, office programs, etc. It
> should not matter as much in math/science oriented software, but for
> whatever reason it seems like the CAS crowd needs to be pampered much more
> than (say) the numerical computing crowd.

I think the numerical computing crowd is also slightly better off,
since they have better industry support due to their software being
incredibly useful to industry. I hope to create a new little part of
industry to which Sage is very useful. Incidentally, *all* software
that the company I started creates is open source. So the company is
fully a part of the "FLOSS community", despite being commercial.
This is different than Enthought and Continuum Analytics (two
numerical Python companies) or even Google (say), which produce both
some open and some closed source software. Those first two companies
have enterprise customers as their main clients, so selling closed
source software is critical to their business models, and they can't
be 100% open source. In contrast, the main clients for SMC are
educators, who see great value in paying for nicely hosted and
supported open source software, since they often have very limited IT
resources and time.

>
> The other point you make is really about academia being (for the most part)
> ethically bankrupt. I doubt this will change substantially in the
> short-medium term.

For a long time I was completely certain that academia would change
rather quickly in this regard, and thought I saw that change
happening. However, the people who would have brought about this
change mostly leave academia, so the change doesn't happen...

William
--
William (http://wstein.org)

Martin Vahi

unread,
Feb 26, 2016, 12:07:55 PM2/26/16
to sage-devel

reede, 26. veebruar 2016 7:51.20 UTC kirjutas Nathann Cohen:
Hello William,
...

With the full understanding that I'm pouring some gasoline into the flames right now, I still say that everybody, including me and Nathann, have the "right" to be mistaken. The way I try to approach my stupid mistakes is that I try to know, how to loose and I try to be careful enough to admit that I do make culturally stupid mistakes and do loose debates to the point that at the end of the debate I'm convinced at my private, most intimate, thoughts that my starting position at the debate was utterly stupid. One of the things that I certainly try to avoid is to change my criticism towards the other party during the debate. If I have claim X, then I stick to X or admit that I was mistaken with X, but I am not claiming that my complaint to the other party was Y at the time, when it becomes visible to me that I'm loosing the debate with X.

The summary: mistakes are OK, provided that they do not originate from sloppy conduct, we all do mistakes and it saves one's nerves to try to play so that it's possible to admit one's own mistakes.

Hope it saves some gray brain cells from adrenaline related chemicals. :-)

parisse

unread,
Feb 26, 2016, 12:11:19 PM2/26/16
to sage-devel


Le vendredi 26 février 2016 16:54:54 UTC+1, William a écrit :

Just to clarify (and make things easier), the mission statement, and
indeed Sage itself, is about the *entire ecosystem* of open source
math software, including your software (Giac, which is of course
installed on SageMathCloud).  This is why Sage has always had
interfaces to most other computer algebra systems, why a large amount
of effort has been put into making Python interact well with Maxima,
Singular, etc., and why one of our slogans is "Building the car
instead of reinventing the wheel".

I understand that, and I fully agree with the goal of making open source softwares interact well, while I disagree with making C/C++ open-source libraries (and CAS) interact at the Python language level instead of at the C/C++ level, because it means that it's difficult to use something else than Python if you want to benefit from the "network-effect" of interacting libraries. For example, singular and giac have both interfaces to sage, but that does not help singular and giac interacting directly, same for pari/singular, pari/giac, etc.
 

Much of the Python library we have developed called "sage" is (or at
least was initially) mainly focused on functionality that was only
available in Magma, since that was a huge gap in the available open
source code at the time.  

It's not only functionality, it's also the way the user enters math objects that make me say sage is more an alternative to Magma than to the other M, it is indeed well adapted to mathematicians working in domains near algebra who like rings, fields and so on but probably not as well elsewhere. And of course sage includes Python libraries that offer matlab-like functionnalities, but in these areas, the users who don't want (or can't afford) matlab will probably prefer running these libraries directly from a native Python interpreter, because this does not require as much ressources, it also works under windows, and they don't care much of additionnal CAS functionnalities.

But as I understand your messages about SMC, SMC is much more agnostic than sage, it's more about providing users easy access to opensource math software/languages, and also a hosting service and collaboration platform. I think there is/will be a lot of competition in this area, that's why I have choosen a complementary approach with my CAS : in the browser but offline once downloaded (http://www-fourier.ujf-grenoble.fr/~parisse/xcasen.html). Perhaps both approachs will help gain more opensource math software users, therefore I wish you good luck!

William Stein

unread,
Feb 26, 2016, 12:22:01 PM2/26/16
to sage-devel, Martin Albrecht
On Fri, Feb 26, 2016 at 9:11 AM, parisse
<bernard...@ujf-grenoble.fr> wrote:
>
>
> Le vendredi 26 février 2016 16:54:54 UTC+1, William a écrit :
>>
>>
>> Just to clarify (and make things easier), the mission statement, and
>> indeed Sage itself, is about the *entire ecosystem* of open source
>> math software, including your software (Giac, which is of course
>> installed on SageMathCloud). This is why Sage has always had
>> interfaces to most other computer algebra systems, why a large amount
>> of effort has been put into making Python interact well with Maxima,
>> Singular, etc., and why one of our slogans is "Building the car
>> instead of reinventing the wheel".
>
>
> I understand that, and I fully agree with the goal of making open source
> softwares interact well, while I disagree with making C/C++ open-source
> libraries (and CAS) interact at the Python language level instead of at the
> C/C++ level, because it means that it's difficult to use something else than
> Python if you want to benefit from the "network-effect" of interacting
> libraries. For example, singular and giac have both interfaces to sage, but
> that does not help singular and giac interacting directly, same for
> pari/singular, pari/giac, etc.

I think we have done a bit at the C/C++ level too. For example, when
we started making Singular work with Sage, it was via a horrible
pexpect pseudo tty interface. So we (=mainly Martin Albrecht) wrote
from scratch a C++ library interface to Singular. And then used
Cython to provide a Python interface to that C++ library. When I was
at MEGA in Barcelona in 2008, I remember the talk on Singular in which
the biggest exciting announcement for the last year was... Martin's
C++ interface. I think what Martin Albrecht wrote will help
enormously if you want to create a giac <--> singular interface, since
you don't have to start from scratch...

Of course, much more in this direction can and should be done, as you
suggest above. And it genuinely would provide more value to the
community. There are many little things in Sage that would be better
spun off, to provide greater overall value in the longrun. I hope
that happens.

>> Much of the Python library we have developed called "sage" is (or at
>> least was initially) mainly focused on functionality that was only
>> available in Magma, since that was a huge gap in the available open
>> source code at the time.
>
>
> It's not only functionality, it's also the way the user enters math objects
> that make me say sage is more an alternative to Magma than to the other M,
> it is indeed well adapted to mathematicians working in domains near algebra
> who like rings, fields and so on but probably not as well elsewhere. And of
> course sage includes Python libraries that offer matlab-like
> functionnalities, but in these areas, the users who don't want (or can't
> afford) matlab will probably prefer running these libraries directly from a
> native Python interpreter, because this does not require as much ressources,
> it also works under windows, and they don't care much of additionnal CAS
> functionnalities.

My hope is only that they don't have to use Matlab if they don't want
to. If the open source community is solving their problems, I'm very
happy.

> But as I understand your messages about SMC, SMC is much more agnostic than
> sage, it's more about providing users easy access to opensource math
> software/languages, and also a hosting service and collaboration platform. I
> think there is/will be a lot of competition in this area, that's why I have
> choosen a complementary approach with my CAS : in the browser but offline
> once downloaded (http://www-fourier.ujf-grenoble.fr/~parisse/xcasen.html).
> Perhaps both approachs will help gain more opensource math software users,
> therefore I wish you good luck!

I agree -- there is/will be a lot of competition in this area. SMC
is open source and possible to download and run locally, but for now
that is not our focus (as you know, it takes a lot of time to maintain
and one has to choose how to spend time).

Thanks for sharing your thoughts,

-- William

>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-devel" group.

Martin Vahi

unread,
Feb 26, 2016, 12:39:52 PM2/26/16
to sage-devel


reede, 26. veebruar 2016 15:54.54 UTC kirjutas William:
...

  ODK impact
will be very positive for open source math software, but won't solve
the hugely important "boring work" problem you mention above.
...

 I see a general pattern here and the pattern is the one that I have seen for years. I do not know, how to put this into some interesting wording, but in my mind it boils down to the statement that if work X is "boring", "laborious", "dull", then

WHY THE HELL IS SO MUCH MONEY AND TIME SPENT ON DOING IT IN STEAD OF AUTOMATING IT AWAY!!!!!

What regards to the "dullness" of the task, then

AUTOMATING A DULL TASK IS MENTALLY VERY CHALLENGING TASK

and I end up back to the observation that if the dumb thing costs a fortune, then why isn't it automated away to cut costs. I made that observation mainly about corporate software development and the building of GUI-s, testing, etc. and I believe that I understand, why corporations burn money on dumb tasks in stead of automating it away (it's because the corporate culture is fundamentally INCAPABLE OF CARRYING OUT ANY TASK THAT IS UNDETERMINISTIC, RISKY, WALK IN THE UNKNOWN --- EQUIVALENT TO AN ACTUAL DEVELOPMENT WORK), but I do not see any reasons, why open source movement could not handle it. After all, the creation of the Linux kernel was also "yet another dull work". I thing that it boils down to the fact that there are not that many people on planet Earth, who care to achieve anything in life apart from being popular among others. Caring about technical achievements is pretty unsocial by its nature. The kings/merchants do not care, if their transport vehicle is a car or a horse wagon, as long as it is the most prestigious way to travel.

What regards to the mathematicians not caring about GUI-s and automated testing, then I do not see any deeply fundamental problem there, because we just can not care about everything on planet Earth. As a matter of fact I as an IT-guy see it as a positive thing, because then I have at least something to sell to the mathematicians. I've noticed that the mathematicians have figured out that they need the hardware guys, because otherwise many of their branches would not exist. It is relieving to know that mathematicians might find software guys also useful. I already know that biologists would buy software development services for their experiments like crazy, if they just had the money for it. It's nice to now that mathematicians might also be one potential client group. :-D

Nathann Cohen

unread,
Feb 26, 2016, 12:43:16 PM2/26/16
to Sage devel
> With the full understanding that I'm pouring some gasoline into the flames
> right now, I still say that everybody, including me and Nathann, have the
> "right" to be mistaken.

It seems that I was mistaken indeed. As Miguel Marco noticed [1], my
opinion on many things changed since an email conversation I had with
Bill Hart, on which I reported [2].

As I said in [2], not knowing William at all (never met, barely
exchanged emails) and seeing several things happen (SageMath
trademark, SageMath Inc. for-profit company, CEO position,
sagemath.com absorbing sagemath.org, confusions between Sage and SMC,
money earned by SMC by making Sage available), I slowly got convinced
that William may very well have his very own interests at heart. Of
the kind that could lead me [3] to believe that I was working for
free, for a for-profit company.

Discussing with Bill Hart convinced me that *he* was convinced of
William's goodwill. That's important for me, and made me doubt
reasonably of this position. Even though I would prefer to hear
William's opinion directly rather than having to reverse-engineer it
from other people's opinion of him.

Assuming William's goodwill I posted [3,4], which tried to explain his
actions as a feeling of *major* distinction between Sage's development
and Sage's 'mission statement': it convinced me that he could see
Sage's development as an 'unimportant subtask' of the goal he aims at,
which would in turn lead him to act as if we had no role to play in
this story.

I believe that Sage's developers have a *right* to be involved in
whatever is being made in Sage's name: this includes the trademarks,
the for-profit company, SageMathCloud, etc. The free volunteers who
develop it cannot be just there to write code, and have no other say
(no information, no consultation) when such things happen.

Thus, I sent [4] as a request for a necessary democracy in all these
points.

Note that so far, I'm trying to figure this all out by talking with
almost everybody and I am quite eager to read his answer to [4]. I am
willing to go to great length to clear a misunderstanding about the
intention behind the actions he took unilaterally (e.g. the *long*
discussions reported in [2]), but so far that's only a reasonable
doubt.

His recent message [5] in which he says that he cannot make any claim
that all the money earned by SMC will be spent on Sage, and the fact
that he has partners (unknown to me) who will have a say on it, told
me already that I was a bit too generous at times when giving the full
benefit of the doubt.

Nathann

[1] https://groups.google.com/d/msg/sage-devel/P62HfBr4UnI/6RrltX64BQAJ
[2] https://groups.google.com/d/msg/sage-devel/P62HfBr4UnI/irMQIxVTBQAJ
[3] https://groups.google.com/d/msg/sage-devel/P62HfBr4UnI/0rfF5DcHBQAJ
[4] https://groups.google.com/d/msg/sage-devel/D8tF8Hqpr4o/7n5IKHSkBQAJ
[5] https://groups.google.com/d/msg/sage-devel/D8tF8Hqpr4o/DZvXzbG9BQAJ

Nathann Cohen

unread,
Feb 26, 2016, 12:45:06 PM2/26/16
to Sage devel
> sagemath.com absorbing sagemath.org, confusions between Sage and SMC,

I meant "absorbing sagemath.org's traffic". Sorry for that.

Nathann

William Stein

unread,
Feb 26, 2016, 1:36:55 PM2/26/16
to sage-devel
On Fri, Feb 26, 2016 at 9:43 AM, Nathann Cohen <nathan...@gmail.com> wrote:
> Note that so far, I'm trying to figure this all out by talking with
> almost everybody and I am quite eager to read his answer to [4].

I've said everything I have to say for now.

Jeroen Demeyer

unread,
Feb 26, 2016, 1:44:56 PM2/26/16
to sage-...@googlegroups.com
On 2016-02-26 18:39, Martin Vahi wrote:
> WHY THE HELL IS SO MUCH MONEY AND TIME SPENT ON DOING IT IN STEAD OF
> AUTOMATING IT AWAY!!!!!

I think you are misunderstanding what kind of boring work we are talking
about. For example, porting Sage to Python 3 is certainly boring but
cannot be fully automated. There are tools which can partially automate
the Python 3 conversion, but those cannot cope with some fundamental
things like the disappearance of __cmp__.

parisse

unread,
Feb 26, 2016, 2:24:12 PM2/26/16
to sage-devel, martinr...@googlemail.com

> But as I understand your messages about SMC, SMC is much more agnostic than
> sage, it's more about providing users easy access to opensource math
> software/languages, and also a hosting service and collaboration platform. I
> think there is/will be a lot of competition in this area, that's why I have
> choosen a complementary approach with my CAS : in the browser but offline
> once downloaded (http://www-fourier.ujf-grenoble.fr/~parisse/xcasen.html).
> Perhaps both approachs will help gain more opensource math software users,
> therefore I wish you good luck!

I agree -- there is/will be a lot of competition in this area.   SMC
is open source and possible to download and run locally, but for now
that is not our focus (as you know, it takes a lot of time to maintain
and one has to choose how to spend time).


I believe that running SMC locally is not the same as what I provide with my link: Xcas offline is a complete compilation of Giac to javascript, it does not require a server, computations are done by the browser client itself. I guess that SMC run locally is very similar to running sage, it's an altenative interface but you must start a (local) server to perform the computations. If this is correct, then we really have two different paradigms. They could perhaps interoperate, for example some CAS computations on the SMC could be done on the client browser by the giac javascript code, leaving more ressources on the server side for collaboration and hosting tasks instead of computing.

William Stein

unread,
Feb 26, 2016, 2:43:29 PM2/26/16
to sage-devel, Martin Albrecht
On Fri, Feb 26, 2016 at 11:24 AM, parisse
<bernard...@ujf-grenoble.fr> wrote:
>
>> > But as I understand your messages about SMC, SMC is much more agnostic
>> > than
>> > sage, it's more about providing users easy access to opensource math
>> > software/languages, and also a hosting service and collaboration
>> > platform. I
>> > think there is/will be a lot of competition in this area, that's why I
>> > have
>> > choosen a complementary approach with my CAS : in the browser but
>> > offline
>> > once downloaded
>> > (http://www-fourier.ujf-grenoble.fr/~parisse/xcasen.html).
>> > Perhaps both approachs will help gain more opensource math software
>> > users,
>> > therefore I wish you good luck!
>>
>> I agree -- there is/will be a lot of competition in this area. SMC
>> is open source and possible to download and run locally, but for now
>> that is not our focus (as you know, it takes a lot of time to maintain
>> and one has to choose how to spend time).
>>
>
> I believe that running SMC locally is not the same as what I provide with my
> link: Xcas offline is a complete compilation of Giac to javascript, it does
> not require a server, computations are done by the browser client itself.

I'm sorry, I completely misunderstood. Thanks for the clarification.

> I guess that SMC run locally is very similar to running sage, it's an
> altenative interface but you must start a (local) server to perform the
> computations. If this is correct, then we really have two different
> paradigms. They could perhaps interoperate, for example some CAS
> computations on the SMC could be done on the client browser by the giac
> javascript code, leaving more ressources on the server side for
> collaboration and hosting tasks instead of computing.

Indeed -- maybe giac via Javascript will be a key part of offline (but
still browser-based) functionality of SMC someday...

kcrisman

unread,
Feb 26, 2016, 10:54:24 PM2/26/16
to sage-devel

Creating high-quality documentation (beyond our hit-or-miss reference manual) and textbooks and so forth is not automatable.  Sorry.  My life as an educator would be SO much easier if it were :(

On a different note, I think that the existence of RStudio has definitely contributed to R's popularity in certain circles, though I find much of its documentation, woefully, worse than that of Sage, or even of some man pages... Microsoft now owns one of the main R front ends/enhancements, I believe.  But RStudio is Affero GPL (not sure about all their products). So there is some precedent for completely open-source interfaces enhancing the core project (though RStudio doesn't have exactly the same purpose as SMC, either as a company or software).

Christian Stump

unread,
Feb 27, 2016, 5:17:20 AM2/27/16
to sage-devel
I had to involve outside investors, and I may have to do so again in the
future.  They put their personal money on the line, and will have a
say about how profits might get used, if there are ever any profits

I was always a supporter of SMC since I think you are building a great tool and that this is the right way of going to get SageMath (not the company but the open source math software, if there is any need to make this explicit) forward, and not going forward means dying in the long term. This support included giving some of my grant money without any need.

I did not know either (*) that there were any outsider investors (**) involved, so I want to state clearly that this does worry me! Not that I am generally against it, but it worries me that this might result in a money drain away from the math research community.

(*) I do not follow sage-devel every day, so please point me do discussions about that if there were any.
(**) since this is not specified above: by outside investors I assume you mean private investors that are not Sage contributors.

Christian

Erik Bray

unread,
Feb 29, 2016, 5:35:41 AM2/29/16
to sage-...@googlegroups.com
On Fri, Feb 26, 2016 at 4:54 PM, William Stein <wst...@gmail.com> wrote:
> On Fri, Feb 26, 2016 at 4:44 AM, parisse
>> That's probably the reason why Maple,
>> Mathematica and Matlab are commercial softwares: people doing the boring
>> work want to be rewarded for that. And you can not expect to be rewarded by
>> the math community, most mathematicians don't care about software
>> production, about opensourceness, just look how the scientific editors make
>> money with the work of mathematicians and scientists in general.
>> I don't know if the opendreamkit will succeed doing the boring work, but I
>> believe there are several obstacles: the proposed salaries, the career
>> perspectives, the code long term support...
>
> I agree. You can tell what ODK is supposed to do by looking at the
> grant materials, which has precise deliverables and timelines. It's
> lots of exciting non-boring work that got them the grant. ODK impact
> will be very positive for open source math software, but won't solve
> the hugely important "boring work" problem you mention above.

It won't outright solve the "boring work" problem, but it will help
with it. For example, one of my main goals (I think) is to improve
the Windows experience. I've already made some headway on that--I'm
close to having a one or two click installer for Sage on Windows.
Granted it involves a lot of overhead (Docker). But in the
longer-term I intend to put a lot of work into fully native Windows
support--the "boring" work that mathematicians don't want to do (but
that's exciting to me as a software engineer in search of a challenge
:)

That said, ODK is only funded for so much time, so while it will
enable progress it's not a fully long-term solution. If SMC can turn
a profit (where I use "profit" in the loose sense of generating more
cash than is spent on it) I hope its backers will see a case for
putting more money back into Sage and related projects in the long
term so that we can continue to improve the user experience.

William Stein

unread,
Feb 29, 2016, 1:56:02 PM2/29/16
to sage-devel
I hope that you take the approach of refactoring and extracting value
from Sage, in way that makes everything much more usable to the
Python/open source community. A perfect example of this is Martin
Albrecht's recently launched

https://github.com/sagemath/cysignals

If you could do something like that -- with native Windows support --
for many parts of Sage (e.g., the preparser would be easy), then you
would lay a strong foundation for native Windows support, while at the
same time making the useful/tested/debugged things we've done with
Sage more widely useful. It's boring work, doesn't make Sage any
more functional, and definitely doesn't result in research papers.
But I think it would be very valuable.

> That said, ODK is only funded for so much time, so while it will
> enable progress it's not a fully long-term solution. If SMC can turn
> a profit (where I use "profit" in the loose sense of generating more
> cash than is spent on it) I hope its backers will see a case for
> putting more money back into Sage and related projects in the long
> term so that we can continue to improve the user experience.

Thank you for your support. This is *exactly* the plan, and evidence
suggests that there is a nonzero probability of success.

-- William
Reply all
Reply to author
Forward
0 new messages