|
Boost : |
From: Vladimir Prus (vladimir.prus_at_[hidden])
Date: 2024-09-12 12:50:34
Hi,
I vote for the C++ Alliance proposal.
Right now, my contribution to Boost is limited to accepting small PRs for
the program_options library, I don't expect to be very active in the
future, so my vote should be suitably discounted. On the other hand, I
wrote one library, contributed changes for some others, and worked on
building/testing infrastructure, so probably know something. I have no
affiliation with either party, though I criticized Boost Foundation before.
Many open-source projects have solved the matter of asset management and
financial support without much drama.
For example, there is the LLVM foundation ( (https://foundation.llvm.org/),
which pays for infra, and sponsors developer meetings. There are 9 people
on the board, and their bios all mention LLVM contributions. There is a
public process to nominate new board members candidates (the current board
votes on them, though). The activity of the foundation is fairly visible.
There's also the Apache Foundation (https://www.apache.org/). It hosts a
lot of projects, and committers run each one. Matters are resolved by
committer vote, new committers are added by vote, and inactive members lose
their commit/vote privileges. The foundation itself provides resources,
like magic garden gnomes.
Probably, with a bit more goodwill and introspection, we could have worked
out the details and reached the level of those examples. But, we saw
divorce paperwork sent in public, and both parties have a long list of
grievances, so here we are, deciding who gets the custody.
Boost Foundation, in my opinion, has a real identity and credibility
crisis. Originally, in the steering committee times, it consisted of
project founders, who were active in the project, and contributed lots of
hours and probably personal money, while preferring consensus for all
decisions. It gradually changed, and these days, Boost Foundation has
largely checked out and consists mostly of people privileged enough to
travel to Aspen and other conferences. Still, it occasionally issues
decrees for the project to follow.
Consider the recent events. There was a decree to stop working with a large
sponsor. Per meeting notes, 7 people met to make the decision. I see only 2
with obvious connections to the project. Kristen's post with the
announcement was her first-ever post to the list. The board members were
not nominated, voted, or announced on the list. Despite many raised
questions, foundation members had no timely answers. Even during this
crisis, most members did not say anything. And then, just today, one member
has it was not a degree, but a recommendation and the alliance can still
sponsor everything. That's a clear failure.
Maybe it would be OK if the foundation provided vast resources, and
let developers decide, Apache-style. But right now it's only paying for
the webserver. (I am unsure whether that's the foundation, as opposed to a
generous foundation member using personal funds). There are no IT resources
to keep the server up-to-date, no money to pay for CI/CD and downloads, and
official filings merely say "less than $50K of income per year"). Finally,
the fact that boost.org domain ownership remains unresolved even after it
already expired couple years ago illustrates the lack of time/interest.
The foundation's proposal is weak, brief, and seems hastily written. It
does not acknowledge or address the issues above. There's no
significant revamp of the board, there's no plan to to procure funding, and
there's no plan to obtain IT resources. Instead, it proposes a few other
things that might be good. However, those things can be decided on the
list. It does not require that the foundation holds the assets. Finally,
the proposal does not mention the "Beman Project" at all. It's not clear
how the foundation plans to support the Boost project, while simultaneously
working on an almost identical one.
(I wonder if this proposal was intentionally written to lose, and move on)
The C++ Alliance, organizationally, is not much better. Its board is Vinnie
and his friends. As an extra plot twist, one member of the alliance board
was previously on the foundation's board, and at least partially
responsible for the current situation. But, things take a dramatic turn
after that. The alliance is way more active in the project. Two board
members are active contributors. It employs other contributors. There are
quarterly blog posts from employers explaining what they have done. There
are "transparency reports" about overall activity. That's easily 10x more
transparency.
They also have considerable financial resources. The last IRS filing claims
over $2M per year. There are full-time employees and there is no doubt that
they can handle Boost's relatively simple infrastructure.
The alliance proposal is fairly smart. It proposed essentially the Apache
model. In turn, that means we no longer have to be concerned about the
alliance's board - the arrangement lets committers decide everything, while
infrastructure just magically works.
I do, of course, have some concerns about the alliance. It is sponsored by
Vinnie himself, while the foundations I mentioned above have more diverse
income sources. Also, some people might consider voting for the alliance as
supporting Vinnie personally, or even taking his side in some
outside-of-Boost conflicts. (Obviously, it's not).
Alliance, at times, has too much money. I doubt that a "modern logo" is at
all necessary, seems like a distraction. The estimated costs for the new,
still essentially static, website would seem sufficient to run a few AI
startups. I am worried that any change in the financial situation will
leave us with way too expensive infrastructure. Like, the current server
can be sponsored by literally a single developer. The "new website", at
$10K per year, is not so much.
At the end of the day, I don't see any choice. The Boost Foundation, as an
organization, and as individual board members, made a lot of contributions,
but as of 2024, there appears to be little financial and human resources,
and no willingness to work with the developers. The C++ Alliance, on the
other hand, already pays most of the bills and has proposed a schema that
will empower the developers.
I think others already commented on the details of the agreement. My only
proposal/condition is that the members of the new Boost Steering Committee
be provided with access to all relevant IT resources (DNS registrar, DNS
hosting, any cloud providers) and that they meet with the alliance
periodically, like twice per year, and verify that all the access still
works. We want to make sure that in the case of any emergency, we're
prepared.
Thanks,
-- Vladimir Prus http://vladimirprus.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk