Boost logo

Boost :

From: Mateusz Loskot (mateusz_at_[hidden])
Date: 2021-05-17 22:59:49


On Thu, 6 May 2021 at 19:26, Glen Fernandes via Boost
<boost_at_[hidden]> wrote:
> The Software Freedom Conservancy never governed the Boost
> C++ Libraries, nor did the Boost Steering committee,
> nor does the Boost Foundation.
> Only the Boost community does that.
>
> [...] any decision making and governance of the Boost
> libraries is still the domain of the Boost community
> (i.e. you, me, and the other Boost library authors
> and maintainers).

I learned about this from the political discourse here
around the advent of the CMake for Boost and I've never
since clarified it (to myself) how it's supposed to work.

If I want to contribute to a FOSS project, then I head
to its repository and learn the way from the README.md,
CONTRIBUTING.md and documentation (in that order usually).
If I want to submit a Boost-wide proposal, e.g.. pay for CI,
I have no idea what is the path I am supposed to walk.

Let's suppose, hypothetically, there was a mechanism that:

1. captures the current state of the project and the community
   affairs without excessive intrusion or any stir-up,
   hopefully.

2. is simple to implement and document

3. is effective for collective decision making

Let's suppose, hypothetically, the capturing part means
labelling to distinguish already existing roles:

- Boost Community Participant - an every named or anonymous
  individual who participates in activities of
  the Boost project.

- Boost Community Member - every fully named non-anonymous
  individual who participates in activities of
  the Boost project.

- Boost Charter Member - every fully named individual who is
  either an original author or currently active maintainer of
  a Boost library. Such person is automatically considered
  a core contributor to the Boost project and is entitled
  to vote for motions put forward to the Boost project.

Then, the implementation could be described quite clearly:

- We do not have a hierarchical structure.

- Every strategic decisions regarding the Boost project,
  decisions that cannot be decided by consensus, decisions
  that might be controversial are brought to a vote.

- Only named Members or Charter Members can put motions
  forward to the Boost organization for voting.

- Only Charter Members can vote for proposals acting
  as individuals according to their individual point-of-view,
  wearing their personal hat for the best interest of the Boost.

- The Voting Wizard is an admin role to coordinate the voting,
  namely, 1) validates the proposal; 2) puts it for two weeks
  review period; 3) announces start/end of voting; 4) counts
  total of votes and validates votes against the latest list
  of names in `authors` and `maintainers` fields
  of `meta/libraries.json`.
  Statistically, 100% participation rate means
  total of votes == total of names in meta/libraries.json.

Then, I think, the collective decision making in Boost might
become clear for everyone, regardless of their seniority and
experience within the community, almost a no-brainer ;)

Best regards,

-- 
Mateusz Loskot, http://mateusz.loskot.net

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk