Application for NumFOCUS affiliation of SageMath

395 views
Skip to first unread message

Matthias Koeppe

unread,
Jan 13, 2024, 8:55:29 PM1/13/24
to sage-devel
Over the years, it has been suggested that our project seek affiliation with the NumFocus organization (https://numfocus.org/)

2016: E.M. Bray asks in https://groups.google.com/g/sage-devel/c/8-BfX8KxFuI/m/CQRmz_3vDQAJ:  Is there any particular objection about approaching NumFOCUS [...]? (there is no objection or any response for that matter)

2018: E.M. Bray's 2018 sage-devel post (https://groups.google.com/g/sage-devel/c/aY0GVqBwFkI/m/cTqfaBN5AQAJ) gives a great overview on benefits for us and the difference between "Affiliated projects" and "Sponsored projects"; in the same thread, D.V. Pasechnik reports having been put in charge of co-leading it by William, but notes his reservations about CoC; Jason Grout reports having given NumFOCUS people a heads-up.

2019: V. Delecroix brings up NumFOCUS (https://groups.google.com/g/sage-devel/c/sGFOYBeEq-Q/m/NUCfS2zhAQAJ), S. Lelievre points to the 2018 post, E.M. Bray follows up with a discussion of questions of governance.

2022: D.V. Pasechnik notes that the NumFOCUS effort "appears to be stalled". https://groups.google.com/g/sage-devel/c/G7qZkzjWDZU/m/MgrEqTqJAQAJ

As of today, 2024, in my opinion, SageMath is clearly not able to meet the additional requirements of a NumFOCUS Sponsored Project (https://numfocus.org/projects-overview): "A transparent, publicly visible governance model" (????), "A roadmap outlining high priority work areas" (although my modularization project provides https://github.com/sagemath/sage/issues/29705 provides a viable candidate for > 50% of it).

But we can easily apply to become a NumFOCUS Affiliated Project; it's 21 easy questions in a slightly awkward web form (https://numfocus.typeform.com/to/VUPE35?typeform-source=numfocus.org). The next deadline is Monday January 15, and I will turn in an application on behalf of the project unless I hear serious, qualified objections.

Below are my draft responses to the 21 questions; any suggestions and corrections are very welcome.

============
Question 1
Does your project have a contributor Code of Conduct?
Yes

Question 2
What is the name of your project?
SageMath

Question 3
Please provide the url of your project's (primary) repo:
https://github.com/sagemath/sage

Question 4
Your project's website:
https://www.sagemath.org/

Question 5
Please provide a summary description of your project in a few sentences:
Comprehensive mathematical software system

Question 6
Does your project have a logo?
Yes

Question 7
Please upload a .svg file of your project's logo. A "square" format is best.
982721.png

Question 8
Your project's Twitter handle or other social media handles/urls:
https://twitter.com/sagemath, https://mathstodon.xyz/@sagemathhttps://www.facebook.com/pages/Sage-Math/26593144945

Question 9
Why do you want your project to join NumFOCUS?
TBD

Question 10
Are you applying for Fiscal Sponsorship or Affiliation? For more information, see https://numfocus.org/projects-overview
B. affiliation

Question 11
How does your project relate to or integrate with the existing ecosystem of NumFOCUS tools?
Cython, CVXpy, igraph, IPython, Jupyter, Matplotlib, NetworkX, NumPy, SciPy, SymPy are dependencies of SageMath. Additionally, volunteers maintain conda-forge packaging of SageMath.

Question 12
Describe how your project furthers the NumFOCUS mission: https://numfocus.org/community/mission
SageMath is mathematical software with an integration mission.

Question 13
How many active contributors does your project currently have?
70

Question 14
Any comments you’d like to make on the number of your active contributors:
as per https://github.com/sagemath/sage/graphs/contributors?from=2023-02-09&to=2024-01-13&type=c

Question 15
What is your project doing to attract and/or mentor new contributors and maintainers?
Organize virtual and in-person workshops, participate in Google Summer of Code

Question 16
Where do you host conversations about project development and governance (e.g. mailing lists, forums, etc.), and how many participants do you have?
https://groups.google.com/g/sage-devel, TBD participants

Question 17
What license(s) does your project currently use?
GPL v2+, GPL v3+

Question 18
Projects must adopt the NumFOCUS Code of Conduct or one similar in spirit. Please tell us how you plan to meet this requirement: https://numfocus.org/code-of-conduct
https://github.com/sagemath/sage/blob/develop/CODE_OF_CONDUCT.md was adopted in 2014

Question 19
Your Name (First & Last):
Matthias Koeppe

Question 20
Your Email:
mko...@math.ucdavis.edu

Question 21
Questions or Comments:
Draft application, not submitted yet
==========

Dima Pasechnik

unread,
Jan 14, 2024, 4:25:33 AM1/14/24
to sage-...@googlegroups.com
The time scale is too tight for people who don't work on weekends (or don't work on Sage 5 days a week) to react, this is the main objection.

I think this needs more discussion, more detailed than just TBD, TBD proposal,
and can wait for the next round, on April 15.

There are a number of things to check and improve, in order not to get hit by something like absence of licencing info on every repo in our GitHub org, contact persons data not easy to find, etc.

There would still be time to get the governance in better shape, write a roadmap, and go for the sponsored status, if possible.

Dima

Dima Pasechnik

unread,
Jan 14, 2024, 4:37:34 AM1/14/24
to sage-devel
To add more details on the history of the (non) application,
during OpenDreamKit years, and after,
the intention was to use a to be 
established European branch of NumFocus, hence the endless delays
The branch didn't get established, as far as I know.

Dima

David Roe

unread,
Jan 14, 2024, 12:07:07 PM1/14/24
to sage-...@googlegroups.com
I agree with Dima that 2 days is not enough time to gather feedback.  Is there any reason for the quick turnaround time?
David
P.S. I'm sorry about disappearing from the other thread about disputed PRs.  I will try to summarize the discussion on that thread and call for a vote shortly.

--
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 view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/2355bcd9-1e87-4d72-8632-134e0d074b22n%40googlegroups.com.

Matthias Koeppe

unread,
Jan 14, 2024, 12:44:06 PM1/14/24
to sage-devel
On Sunday, January 14, 2024 at 9:07:07 AM UTC-8 David Roe wrote:
Is there any reason for the quick turnaround time?

Yes, it is motivated by the current crisis of abuse and misconduct in the community.
Our project will benefit from engaging closely with projects and organizations that have working CoC with clear enforcement protocols. https://numfocus.org/code-of-conducthttps://numfocus.org/code-of-conduct/response-and-enforcement-events-meetupshttps://numpy.org/code-of-conduct/https://docs.scipy.org/doc/scipy/dev/conduct/code_of_conduct.html

Message has been deleted
Message has been deleted
Message has been deleted

Matthias Koeppe

unread,
Jan 16, 2024, 2:42:10 AM1/16/24
to sage-devel
As I have not received sufficient feedback by today, I'll retarget to the next deadline, Apr 15.
Comments and discussion please by January 31.

Trevor Karn

unread,
Jan 17, 2024, 10:31:28 AM1/17/24
to sage-devel
Will this thread be used for discussion prior to the April 15 deadline?

Matthias Koeppe

unread,
Jan 17, 2024, 3:49:26 PM1/17/24
to sage-devel
Yes, please, post your comments here.

Matthias Koeppe

unread,
Jan 21, 2024, 3:59:15 PM1/21/24
to sage-devel
In case people are interested in a synchronous discussion of this topic, here's a poll to find suitable meeting times Feb 1–4. https://whenisgood.net/sage-numfocus

William Stein

unread,
Mar 5, 2024, 2:08:07 PM3/5/24
to sage-...@googlegroups.com
Hi,

Related to NumFOCUS, this new proposal for Jupyter to restructure their relationship with NumFocus is possibly relevant:


William

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


--

kcrisman

unread,
Mar 5, 2024, 2:28:38 PM3/5/24
to sage-devel
On Tuesday, March 5, 2024 at 2:08:07 PM UTC-5 William Stein wrote:
Hi,

Related to NumFOCUS, this new proposal for Jupyter to restructure their relationship with NumFocus is possibly relevant:



Interesting, and certainly relevant.  It's a little unclear to me why NumFOCUS is not appropriate for them, other than a vague reference to operations - can anyone read between the lines for those of us not as plugged into that world?

Matthias Koeppe

unread,
Mar 5, 2024, 3:37:03 PM3/5/24
to sage-devel
I don't think one needs to read between the lines. Per https://jupyter.org/governance/linux-proposal.html#project-jupyter-s-needs it's about funding goals in the $1-$2 million range + permanent staffing + support for "operating" (which is described there as "legal/trademark, marketing, fundraising, accounting, contracts, internships, events, dev ops, etc.")
None of these seem relevant for our current effort to become a NumFOCUS affiliated project.

But as there is a sudden sign of life in this thread, let me point out that I have an expanded version of the initial proposal draft:
https://github.com/sagemath/sage/wiki/NumFOCUS and I welcome discussion here and collaborative editing in the wiki page. 
I'll submit by the next target date (Apr 15).

Matthias

David Roe

unread,
Mar 10, 2024, 11:50:23 AM3/10/24
to sage-...@googlegroups.com
I support Matthias' initiative to join NumFocus.  Looking at the application, there are only a few todo items:
* Describe the shared history with Cython and IPython.  This doesn't need to be extensive, but would be useful.
* If we update the code of conduct in #37501, we should update the dates when the code of conduct was last modified.

There is also discussion at the bottom about Sage's governance structure, but I don't think that's required for an affiliated project.
David

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

William Stein

unread,
Mar 10, 2024, 12:05:36 PM3/10/24
to sage-...@googlegroups.com, Robert Bradshaw, Craig Citro
Hi,

I also strongly support this initiative for Sage to join NumFocus at this point in time.  

Regarding Cython, I made up the name in maybe 2008, and started it as a project by combining "Pyrex" that Greg Ewing worked on periodically, 
my own fork of Pyrex that had features I added that were needed for Sage, and  Stefan Behnel's fork that was needed for lxml.
Robert Bradshaw (my phd student at the time) and Craig Citro (my postdoc) then started working on it, and they added a huge amount
of functionality, e.g., they fully implemented closures, which was nontrivial; also, I remember they added some type 
inference optimizations, and generally greatly improved the unit testing.  I've cc'd Robert and Craig in case they want to add anything.
Sage has always been I think by far the biggest Cython user, and testing of Cython by Sage helps ensure better stability and quality.

 -- William



--

Matthias Koeppe

unread,
Apr 14, 2024, 9:38:39 AM4/14/24
to sage-devel
Thanks a lot, William. 
I've submitted our application to NumFOCUS today to meet the Apr 15 deadline. 
I'll keep everyone posted as soon as I hear anything back.

Reply all
Reply to author
Forward
0 new messages