Hi folks,

The topic of Sage joining the NumFOCUS [1] organization was raised in
the recent thread [2] about the SageMath Foundation.  When I first
started working on Sage I was frankly surprised that it wasn't already
affiliated with NumFOCUS, along with many other projects on which Sage
is built including IPython/Jupyter, Matplotlib, NumPy, SciPy, SymPy,
Cython, etc.  Sage would fit right in, but I guess just nobody ever
took the initiative.

I believe that Sage should be represented as part of the NumFOCUS
family of projects, and that it *may* be beneficial to the project,
especially in terms of long-term sustainability.

I have set up a mailing list at sagemath-numfo...@googlegroups.com [3]
for the purpose of discussing a possible membership application to
NumFOCUS for Sage, just in order to keep noise off of sage-devel for
anyone not interested in the subject.  It's a closed group for now but
anyone may join.  Please send follow-ups there if you are interested
in helping with this or adding your perspective (if you are against it
somehow please raise your concerns there too).


# What is NumFOCUS?

In short, it's a US-based 501(c)3 charitable organization that exists
to provide legal and financial support for open source projects
focused on or around open science and scientific data analysis,
numerical projects, and things like that.  I think there's no
hard-and-fast rule for determining what projects fall under the
NumFOCUS umbrella--the organization's leadership makes those calls,
and it's kind of a "you know if you see it".  I believe Sage
undoubtedly falls under that umbrella.

To quote the official mission statement:

> The mission of NumFOCUS is to promote sustainable high-level programming 
> languages, open code development, and reproducible scientific research. We 
> accomplish this mission through our educational programs and events as well 
> as through fiscal sponsorship of open source scientific computing projects. 
> We aim to increase collaboration and communication within the data science 
> and scientific computing community.


# What could NumFOCUS do for Sage?

As discussed in the SageMath Foundation thread, through that
foundation the SageMath project already has at least one legal entity
through which we can receive donations and disperse payments from
those donations.  So that, as a bare minimum, already exists for Sage.
However, I see some other possibility benefits:

1) Free exposure--NumFOCUS's community has a number of members both in
terms of projects and individuals.  News about Sage would reach a
wider audience, for example, through NumFOCUS's newsletter and their
presence at events, etc.

2) Fosters cross-pollination between affiliated projects--Sage already
benefits enormously from many of the other projects that are already
affiliated with NumFOCUS. I listed a few examples above.  But through
this affiliation we might get exposed to other projects, or other
projects may be exposed to Sage, in ways that will allow us to
discover new opportunities for collaboration and integration.*

3) Financial support--this is the big one. NumFOCUS might be able to
provide us anywhere from large grants (such as supporting part- or
full-time developers) to small one-off grants such as limited
development efforts, events (e.g. sponsoring a SageDays), or
purchasing hardware and other computing resources (a major need for
Sage).


# How do we become affiliated?

There are two broad types of project membership in NumFOCUS:
"sponsored projects" [4] and "affiliated projects" [5].  The
difference, as I understand it, comes mostly down to level of
financial support.

To become an affiliated project we would have to meet only a subset of
the requirements for sponsored projects, which I believe Sage could
meet pretty easily.  However, it comes with no guaranteed financial
support.  But it *does* allow us to apply for small, one-off grants
for Sage (e.g. Astropy won a small grant once to purchase some
Mac-mini build machines).

For sponsored projects there is more obligation, and they fall under
two sub-categories: "Comprehensive Model" and "Grantor-Grantee Model".

Under the "Comprehensive Model", NumFOCUS would basically become the
sole entity handling legal and fiduciary responsibilities for the
project.  Basically it becomes like our legal guardian.  I don't
believe that would be appropriate at this time for Sage, especially
given that we already have the SageMath Foundation in such a role.
Though it's a possibility if we ever lose that (e.g. we lose William
Stein, or William loses UW).

Under the "Grantor-Grantee Model" we would be straight up applying for
a grant with some specific purpose and funding target.  This comes
with the usual responsibilities of being a grantee, such as using the
funds for the purposes they were requested, and making regular reports
to the grantor, etc.  In Sage's case, if we did something like this,
NumFOCUS would likely pay money to the SageMath Foundation, which
would then be responsible for its dispersal and tax liabilities, etc.

This might be useful, especially if we can come up with some concrete
goals for a grant application.  It could be something as simple as
funding development time.  Sage right now only has one former "role"
as far as I know, which is release manager.  And it's a lot of work
and responsibility, which we might be able to get some part-time
funding for to keep it worthwhile for the release manager (i.e.
Volker).  Another possibility might be concrete plans for development
of new features in Sage, such as much-needed improvements for
undergraduate math.  I'm just throwing some ideas out here to get the
mental gears turning--we can discuss that more on the mailing list.

For starters, I think as a bare minimum, we should apply to make Sage
an affiliated project.  It's not clear to me if we can "upgrade" from
an affiliated project to a sponsored project at a later time.  I can't
imagine why not, but it might also be something worth getting
clarification on.

Regards,
E



* For example, I only really found out about the nteract project
through the NumFOCUS mailing list.  I knew it *existed* but not much
beyond that.  I'm now thinking it might make a great starting point
for development of a "native" desktop application for Sage, a project
I hope to pursue at some point...

[1] https://numfocus.org
[2] https://groups.google.com/d/msg/sage-devel/sGFOYBeEq-Q/mBMCMtJ_CgAJ
[3] https://groups.google.com/forum/#!forum/sagemath-numfocus
[4] https://numfocus.org/sponsored-projects
[5] https://numfocus.org/sponsored-projects/affiliated-projects

-- 
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+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to