SSB Maintenance
A process proposal.
Related:
Goals
- Help maintainers
- Attach no strings
- Clarify roles
- Get it done
- Make it work
Theory
Creating and releasing a software project or other resource creates a burden of maintenance that accrues to the authors of the project or anyone who takes on a role as maintainer of it. The burden of maintenance is the expectation of continued service to the users of the system, e.g. to fix bugs, answer requests for help using it, document and test it better or make other incremental improvements, and update it in response to external changes. A non-software project may also need maintenance, such as a written reference or website which needs links and content to be updated to maintain and improve the usefulness of the resource.
Assumptions
There is a source of funds for the purpose of SSB Maintenance. There is a person ("The Principal") on SSB who has authority to send these funds to people. The Principal wishes to send funds to people who are executing the responsibility of maintenance ("Maintainers"), to support them materially, out of joy and gratitude for their contributions and service to the users and the network.
Process
The Principal chooses two or three people (including themself: "The Allocators") to help them decide who to give funds to for maintainence and how much to give to each person ("The Allocation") [1]. The Allocators decide The Allocation in private [2] and then announce it publically [3]. They solicit payment details from maintainers newly added to the Allocation, and requests for changes [4]. Anyone may publish a Request for Change if they wish to be added to or removed from The Allocation, or have their allocated amount changed [5]. The Allocators publish acceptance or rejection in whole or in part of each request [6]. The Allocators may change the Allocation on their own or in response to a request [7]. The Principal directs regular transfers of the funds to the maintainers according to the Allocation. The Allocators publish changes to their group [8].
[1] The Principal may pick whomever they want. If they wish they may invite the public to apply or nominate people to be Allocators. I suggest they consider maximizing the social reach of the process by choosing people who are somewhat spread out in the ecosystem, e.g. not all working on the same project. But more important I think is that the Allocators should have good rapport with the with The Principal. And they should be active/responsive on SSB. The Principal may choose to remove themself from the responsibility of being a Allocator by choosing someone to take their place who consents to it and arranging for them to be able to direct the Funds.
[2] They may use any methods that they choose. They may consider personal and family need of the individuals to receive funds, regional variations of cost of living, perceived impact of the maintenance and projects, difficulty of the work, measurements or statistics about the projects' usage or size. They may issue and distribute a currency for others on SSB to use to assign votes or value to projects or maintainers. I suggest they do this in private so they may speak freely with eachother, but they may do it in public instead if they are all comfortable with that.
[3] They may also publish an explanation of how they decided the names and amounts, if they want to.
[4] They may do this privately or publically, individually or collectively. Maintainers may accept or reject allocation offered to them.
[5] To submit a Request for Change, a person publishes a message mentioning the Allocators in public or encrypted to them privately. They may provide justification for their request, appealing to what criteria if any the Allocators have said they are using as basis for deciding. For example, depending on the Allocators' criteria, a maintainer may request increased amount for themselves and cite significant growth of userbase of the software project they are maintaining, or cite increased personal expenses because of family obligations or changes in cost of living. They may request to be added to the list for maintaining a project that is new to SSB or one that they think the Allocators overlooked. They may request to give their funding to another person whom they have agreed with to transfer responsibility for a project. A requester is responsible for making sure their message will be seen by a Allocator according to SSB gossip. If they are not within close enough social radius to any Allocator, they may ask peers to rebroadcast their message so that it reaches the Allocators.
[6] The Allocators and the Requester may correspond in private or in public about a Request. If the request was made in public, the Allocators should make a response in public if they feel the request was made in good faith. The Allocators may ask the Requester for more justification of the Request or may give justification for rejecting the request in whole or in part. The Allocators should respond to a request in a timely manner.
[7] When the Allocators make change to the Allocation, in acceptance of a Request or otherwise, they publish the change(s), optionally their justifications for it, and link back to their previous change(s). They may sometimes publish the current Allocation, for the convenience of viewers, but it should always be possible to calculate the current Allocation from the history of changes. The Allocators may publish the changes and the Allocation in a structured way according to a SSB messages schema, or they may state it in markdown posts.
[8] If an Allocator wishes to no longer be an Allocator, they may announce that publically, or privately to the other Allocators. The Principal then chooses a new Allocator and announces it publically when they have accepted that role. It should always be public who is currently a Allocator, so that people know who to mention to make a Request for Change.