Proposed Community Discussion Governance
T. Kim Nguyen, Dec. 8, 2022. This is a proposed governance structure for Plone community discussion services, including the Plone Discord server and the Plone Discourse forum.
Some history and context around the use of discussion services in the Plone community.
Real-Time / Instant Messaging versus Discussion Forums
Ever since the creation of the Discourse Plone community forum at https://community.plone.org, we have emphasized the importance of separating chat messaging and support/discussion.
Real-time chat messaging has been eminently useful to our community for social interaction, Q&A, and sprinting.
However, the Plone community recognized the issues with chat, specifically searchability, notifications, mentions of users, and the general difficulty of locating information relevant to a particular topic of discussion. Thus the community’s official position, as described in https://plone.org/support, has been to direct support, as well as any longer form discussion, to the Discourse forum.
A Discord server was created as a replacement for the following chat services:
Slack (scattered used by individuals and some teams)
Gitter (the official chat service at the time but not much used, with questions about the long term support of the service)
Discord is owned by a privately held company. It may be bought and sold. According to Discord's terms, "Your content is yours, but you give us a license to it when you use Discord." Additionally Discord "reserve[s] the right to block, remove, and/or permanently delete your content for any reason". As such Discord could vanish or be acquired, and all of our content would go along that path.
In addition to chat services, we use Discord for voice and video calls.
A Discourse server was created to address issues encountered and observed in the Plone IRC channels, notably:
- inability to consistently respond to users who were disconnected from IRC (specifically notifications, identity)
- a purely sequential messaging stream was difficulty to follow, especially for longer support discussions
- a lack of a built-in search mechanism
- ownership of our content by self-hosting our own instance of Discourse
Discord Governance Issues
Here are some of the questions we propose to address with a Discord governance structure:
Enabling and disabling of features: the Discord service continues to evolve, with each new version including new functionality and capabilities, some of which may be useful and some of which may not be
Ownership: there can be only one Discord server Owner. The current Owner of the Plone Discord server instance is its creator, Steve Piercy. An Owner has sole superuser power over the server and assigning roles and permissions. Such power should be shared amongst a team account to allow continuity. Steve is eager to transfer Ownership to the Plone Foundation or its delegate
- Management of channels and users: users with Administrator role have all permissions that may be assigned to a role, except that they cannot manage other Administrators or the Owner.The Channel Manager role has similar permissions as the Administrator role, with a few exceptions. It is desired to establish various roles with distinct and appropriate permissions.
- Moderation: maintaining a healthy, welcoming community in concordance with the Plone Code of Conduct
- Server administration: the creation and responsibility for server settings and add-ons.
Discord and Discourse Governance
We propose the following governance structure for the Plone community’s combined Discord and Discourse services:
- A Plone Community Discussion Team should be created and recognized, with its members being responsible for the stewardship of all Plone community discussion services, including Discord chat server and the Discourse forum and any future services, software, and/or systems used to provide and support intra-community discussion.
- Members of the Community Discussion Team will be periodically appointed from trusted Plone community members who maintain a long term view of the community’s needs.
- The Community Discussion Team will develop and publish guidelines on the use of the supported discussion services.
- The Community Discussion Team will develop and publish its internal decision making process.
- The Community Discussion Team will have an identified team lead who will have certain responsibilities, including the following:
- calling team meetings
- recording discussion and decisions
- reporting to and communicating decisions (if any) to the wider Plone community
- periodically updating the team membership so it is comprised of actively engaged members