[ANN] the OCaml Software Foundation

Dear OCaml community,

It is my pleasure to publicize the OCaml Software Foundation, a non-profit foundation dedicated to grow and strengthen the OCaml community. It is funded by industrial and academic sponsors who wish to contribute back to the community, and its main responsibilty is to spend those funds on actions that benefit the community as a whole.

The Foundation was created by the efforts of Michel Mauny⁰, launched in June 2018; I became its director in January 2019, working with an Executive Board containing Xavier Leroy, Damien Doligez, Yann Regis-Gianas and myself, taking ideas, advice and feedback from the excellent people representing our sponsors (Currently: ahrefs, Jane Street, OCamlPro, Tezos, Bloomberg, Lexifi and SimCorp).

Our website¹ lists a few of our recent actions, such as developing the Learn-OCaml teaching platform, funding Outreachy internships on OCaml, and funding video capture for OCaml Meetups. We have been asking around, whenever we meet people from the community, on how they would recommend using money to improve the community. We have been proposing ideas, working on suggestions from our sponsors and the general community; we are not very good at communication, we do more than we talk about. Of course, as a small organization led by volunteers working part-time, things can take a long time to get going – please be patient when you interact with us.

Our current objective is to reach a funding level of $200K per year, to be split between actions directed at "teaching OCaml"² and general OCaml actions. Once split among several important action areas, this is unfortunately not enough to employ someone full-time in a stable manner, but it can fund smaller actions that are more limited in time and scope. For example, I have been getting in touch with the maintainers of important bricks of the OCaml ecosystem, wondering about whether it’s possible to solidify the ecosystem by supporting their maintenance work where needed.

That’s it! I would be happy to answer questions and receive suggestions about the Foundation, in this thread or privately (by email at gabriel.scherer@gmail.com). If your company or institution is interested in a new way to give back to the OCaml community, please consider becoming a sponsor; we will do our best to spend this money in the general interest of the community.


⁰: Michel Mauny was one of the earliest adopters of Caml as a programming language; he did his PhD thesis on the Categorical Abstract Machine, which was the basis for the very first Caml implementation – before Caml Light and then OCaml.

¹: at the time I’m posting this, it is not a nice website; I built it in the last few weeks, and web design is not my forte.

²: Yann Regis-Gianas has been spear-heading efforts to turn the Learn-OCaml platform, originally developed by OCamlPro for the OCaml MOOC, into a versatile teaching platform with an open corpus of automatically-graded OCaml exercises. (We received specific additional support of the Tezos Foundation for this.) We are interested in supporting and promoting all forms of OCaml teaching, whether they use this technical platform or not (for example, Jupyter notebooks are also used for OCaml teaching).

45 Likes

Amazing news! Have you considered to add also the way for us, petty humans, to make a small donation for OCaml development? For example making the presence at OpenCollective which uses Stripe to handle the payments, so it allows almost everyone to donate, and some might want to consider to put a “bounty” to a specific issue/task.

P.S. It’s surprising to see Bloomberg as not a Platinum sponsor though…
P.P.S. You might want to add the progress bar showing the amount of money raised relative to your goal.

3 Likes

My understanding is that, for now, it would be too difficult/time-consuming for our administrative people to accept small donations. This is a question that gets asked from time to time, and I hope that someday we will be able to. In the meantime, I would encourage individuals to think about a few people who maintain software they rely on (in OCaml or otherwise), that are not currently employed by a company for this work (or in a stable contracting agreement), and inquire about funding them directly.

Re. bug bounties: I learned somewhat recently that some people and companies in the OCaml ecosystem (for example ahrefs, cc @Khady with which I discussed this) have used bug bounties to fund development in third-party tools they rely on. See for example:

Ahrefs (one of our sponsors) suggested to the foundation that we promote these “small tasks for pay” opportunities, but we have not had the time to do anything in that direction yet.

4 Likes

Thank you for the answer. One more question then - is it related to http://ocaml-sf.org/? Note, this one has an individual donations form. Was pointed at by @Armael in Why Facebook does not sponsor Multicore project?

Yes, this is the exact same Foundation – I haven’t updated the ocaml-sf.org URL yet but the intention is to have it point to the newer website.

I humbly suggest looking into setting up a Patreon account. A non-profit Maker Space in my town with an annual budget of $20k a year funds itself this way.

1 Like

I would like to see that. Our IT budget is tiny but we are going to become dependent on the OCaml ecosystem soon and I love the idea of having a centralized, up to date list of OCaml-related bounties that we could contribute to, across platforms (Bountysource being one).

1 Like

Speaking about bounties, I have a high hopes in the already mentioned OpenCollective. BountySource is effectively dead, while OpenCollective’s commit rate is quite high, and I suggested them to implement this feature too. Lets see how it unfolds.

2 Likes

I think creating the foundation is a nice step forward. Good luck with it!

A small question, if I may:
is the logo https://ocaml-sf.github.io/img/logo-ocsf.svg (the camel part) destined to replace the other logo at ocaml.org?
which one should we use to advertise ocaml?

remark:

  • the link to “The Learn-OCaml online excercise platform” is broken

The first logo you point to is the logo of the “OCaml Software Foundation” (OCSF; as specific non-profit with a mission, etc.); the second logo was designed to be the logo of the OCaml language (and, by extension, the OCaml community); so no, they do not represent the same thing, and one is not going to replace the other. People should use the OCSF logo when they want to support or acknowledge the Foundation specifically, but in most situations they probably mean to use the OCaml logo to publicize the language and community at large.

(Thanks for the broken links notice! I just fixed it.)

Have you seen the new github sponsor feature https://help.github.com/en/github/supporting-the-open-source-community-with-github-sponsors/about-github-sponsors I think it helps out with administrative donations. I have seen a limited set of projects using this already as a preview. Doesn’t that solve zero-cost accounting for the masses (small donators on per project basis )?

The legal setup of the foundation (which I was not involved with) is such that we have lawyer-type people make decisions about how we are allowed to spend and receive money. (I think the general reasoning is that we want to do things in ways that let companies to request tax breaks when they give us money, and that unless lawyers are involved this is easy to mess up and come back to bite you later.) As a consequence, we cannot “just” use various funding schemes that are easy for private developers to setup (“use Patreon”, “sign up for Github Sponsors”, etc.); we have to ask lawyers and be patient. (And of course most lawyers are inexperienced with these brand new crowdfunding schemes, so this takes more time than you would think.)

2 Likes

Hi everyone,

A small report on the actions that we launched since my initial posting.

(There was also some progress on the “enabling individual donations” front, maybe something will be possible in the next few months. Don’t start holding your breath yet.)

  • We are funding the “Leafs” research project in Lisbon to develop teaching material for theoretical-computer-science courses (automata and stuff) in OCaml, with interactive visualization components, some of which will hopefully be integrated in the Learn-OCaml platform over the course of 2020/2021.
  • We provide funding for the Gallium/Cambium research team at INRIA Paris (France), an active place for OCaml-related fundamental research (some of the team members are also very active on the implementation front, for example Xavier Leroy, Damien Doligez, Florian @octachron Angeletti, and Sébastien Hinderer).
  • We sponsor the SWERC programming contest for 2019-2020, and in return the contest added OCaml to the list of available languages. Most participants to these competitive-programming events use C++, but we talked to past and active participants who said they would be interested in using OCaml on some problems with more symbolic computation.
  • Over the course of the OCaml 4.10 release process, we are funding work by @kit-ty-kate to have a wide look at the ecosystem and improve compatibility with the upcoming release. (I believe that the upstream PR #9176 is a first result of this effort.)
  • In reaction to the Discourse thread Suggestions for OCaml documentation, we are planning to fund further work by @sanette to experiment with the HTML rendering of the OCaml manual, in coordination with @octachron to try to upstream improvements when reasonably possible.
  • We got in touch with the Owl project to sponsor a development sprint in 2020.
30 Likes

Could you please enable HTTPS on this site?

If I click https://ocaml-sf.github.io/ it redirects to the plain http://ocaml-sf.org

If I change it to https://ocaml-sf.org manually it complains about the wrong certificate (it belongs to the ocaml-sf.github.io domain instead).

1 Like

The foundation website seems dead now. Fastly says:

Fastly error: unknown domain: ocaml-sf.org. Please check that this domain has been added to a service.

Details: cache-hel6832-HEL

I can access the website, and so does the first “is my website down?” service I could find on the web, but my browser does report an HTTPS issue. I need to fix this (or convince one of my colleagues to fix it for me), but I have other fires to deal with before that.

Certificate seems OK now on https://ocaml-sf.org/

Redirect from https://ocaml-sf.github.io/ still points to HTTP-only http://ocaml-sf.org/ though.

We were all very busy during the last semester, and have been mostly quiet on the foundation activities, but of course our actions were running in the background. Some highlights:

  • Kate @kit-ty-kate Deplaix has worked on opam-repository QA for the OCaml 4.11 release, and the work and results are just as superb as for 4.10. We will fund Kate to work again on the upcoming 4.12 release.

  • We are funding ongoing maintenance work on ocaml-rs (a port of the OCaml FFI library from C to Rust) by its author and maintainer, Zach @zshipko Shipko. Zach did a big round of cleanup changes this summer, improving the overall design of the library and completing its feature set.

  • We are funding @JohnWhitington (the author of OCaml from the Very Beginning) to do some technical writing work for OCaml documentation. His contributions so far have been very diverse, from a script to harmonize the documentation of List and ListLabels (and Array and ArrayLabels, etc.) in the standard library, to small cleanups and improvement to ocaml.org web pages. One focus of his work is the upcoming documentation page “Up and running with OCaml”, taking complete newcomers through the basic setup, using the toplevel and building and running a Hello World. (ocaml.org#1165, rendered current state)

  • Two Outreachy internships were supervised this summer, focusing on the compiler codebase. Florian @Octachron Angeletti (INRIA) supervised an intern on adding a JSON format for some compiler messages (we expect PRs to be submitted soon). Vincent @vlaviron Laviron and Guillaume @zozozo Bury (OCamlPro) supervised an intern on reducing mutable state in the internal implementation.

  • Inspired by this Discuss thread, we are funding experimental work by @sanette on the HTML rendering of the OCaml manual. This work is in the process of being reviewed for upstreaming in the OCaml compiler distribution. (#9755.) This is a better end-result than I had initially expected.

(We also had a couple non-highlights. For example, we funded a sprint (physical development meeting) for the Owl contributors, with Marcello @mseri Seri doing all the organization work; it was planned for the end of March, and had to be postponed due to the pandemic.)

25 Likes

By the way, since GitHub added Sponsors feature, they also added support for a custom foundations as well. You can read more about that here:

A good example of such setup is Zig language - they have their own Zig Software Foundation and setup a dedicated GitHub Sponsors page.

Also currently the page “Becoming a sponsor” (linked from the title post) doesn’t work: http://ocaml-sf.org/becoming-a-sponsor.html

2 Likes