-
-
Notifications
You must be signed in to change notification settings - Fork 139
Update charter with communication responsibilities #1754
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Update charter with communication responsibilities #1754
Conversation
It has been brought up in nodejs/admin#977 (comment). Signed-off-by: Darshan Sen <raisinten@gmail.com> Co-authored-by: Joyee Cheung <joyeec9h3@gmail.com>
TSC-Charter.md
Outdated
@@ -74,6 +74,7 @@ including: | |||
* Development process and any coding standards. | |||
* Mediating technical conflicts between Collaborators or Foundation | |||
projects. | |||
* Technical communication. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe this needs more definition.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* Technical communication. | |
* Overseeing official communications related to technical content from project contributors. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I prefer the wording I have proposed.
I will resolve this comment myself when I am satisfied with the changes. Thank you.
cc @nodejs/tsc |
Co-authored-by: Joyee Cheung <joyeec9h3@gmail.com>
TSC-Charter.md
Outdated
@@ -74,6 +74,7 @@ including: | |||
* Development process and any coding standards. | |||
* Mediating technical conflicts between Collaborators or Foundation | |||
projects. | |||
* Technical communication. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* Technical communication. | |
* Communication about the technical development processes of the project, releases, contributor onboarding and conduct, project governance, and technical direction. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is the latest text that says "above" instead of manually listing out the categories ok?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's better to be explicit given that there's been disagreement about what is or is not covered. Therefore I prefer the text the way I suggested.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have listed the categories explicitly. Is that fine?
Co-authored-by: Joyee Cheung <joyeec9h3@gmail.com>
Once we are settled with some text, we should bring this to the CPC - I expect it might require a change to the CPC Charter itself, which would need to be board-ratified. |
Co-authored-by: James M Snell <jasnell@gmail.com>
Signed-off-by: Darshan Sen <raisinten@gmail.com>
TSC-Charter.md
Outdated
* Legal matters | ||
* Marketing/ community events | ||
|
||
except when specifically approved by the OpenJS Foundation. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since the text was reformatted into bullet points.. this should be a proper complete sentence.
except when specifically approved by the OpenJS Foundation. | |
Exceptions to the above exclusions may be approved by the OpenJS Foundation. |
TSC-Charter.md
Outdated
@@ -74,9 +74,25 @@ including: | |||
* Development process and any coding standards. | |||
* Mediating technical conflicts between Collaborators or Foundation | |||
projects. | |||
* Official communication about the above and what they govern, and the development process of said communication. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"Official communication" is too vague here. I've no idea what would make it "official"
I think that we can use some rethinking of the roles of TSC/foundation in terms of communication. I re-read https://nodejs.org/en/blog/uncategorized/trademark and IMO, there are two roles in the communications:
The communication of the project is not just marketing, it's also a device we use to manifest the representation of the project, and to the eye of an external reader, the use of the trademark verifies the representation. However those two are not to be mixed:
Both the TSC and the foundation have the role to make sure the two are properly aligned in the communications that can be interpreted as official. While it might be possible for the foundation to take over 2, the reality is that the foundation doesn't necessarily have the staff to take on this much work from just one of the many projects is supports, while TSC has been effectively doing 2 for a very long time and generally are more careful/experienced in making sure that nobody should act on the behalf of the project without seeking consensus from other project members (the most recent being establishing the process and collecting consensus about pride campaign, and deliberately making the vote org-wide, not TSC-wide) , most of the time on GitHub, where the community lives, with the use of GitHub pull requests, the tool that the community is the most familiar with, to ensure accuracy when accuracy is needed. I think the goal of the charter change should be to codify our role in 2 - it's not necessarily a proposal to increase our scope, but just documenting in the charter what we have already been doing for years, even though the charter doesn't explicitly say so (but somewhat implies this). |
I've opened a separate PR (#1756) that contains the version of the changes I would like to see. |
Co-authored-by: Joyee Cheung <joyeec9h3@gmail.com>
Co-authored-by: Joyee Cheung <joyeec9h3@gmail.com>
Co-authored-by: Joyee Cheung <joyeec9h3@gmail.com>
Co-authored-by: Joyee Cheung <joyeec9h3@gmail.com>
Co-authored-by: Joyee Cheung <joyeec9h3@gmail.com>
Signed-off-by: Darshan Sen <raisinten@gmail.com>
Signed-off-by: Darshan Sen <raisinten@gmail.com>
All comments have been addressed. Can you review @nodejs/tsc ? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this can land as-is (or it would pass further scrutiny by the rest of the CPC).
@@ -74,9 +74,24 @@ including: | |||
* Development process and any coding standards. | |||
* Mediating technical conflicts between Collaborators or Foundation | |||
projects. | |||
* Establishing and stewarding a consensus-seeking process to represent the technical community and its work in external communications. The scope includes: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What does this sentence mean? Why should we mention consensus seeking here? It's already mentioned already in this doc.
* Project governance | ||
* Technical direction | ||
* The project website and download server | ||
* Petition from the technical community that can be surfaced to the CPC level |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See #1754 (comment) - a specific example would be the org-wide vote of the pride campaign that the TSC just stewarded.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don’t quite understand in which case this would be escalated to the CPC, or why the CPC should be involved.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* Petition from the technical community that can be surfaced to the CPC level | |
* Petition from the technical community to form a representation |
I would be fine with this too. Though it seems in another PR there's inclination to make these kind of things part of the CPC scope (to me if the CPC is willing to take over the workload of stewarding a representation, it seems fine to shed off the workload from the TSC. But then it also seems fair for projects to have their own autonomy on this - having an project-wide referendum sounds a lot more manageable than a foundation-wide referendum).
* Technical documentation | ||
* Contributor onboarding and conduct | ||
* Project governance | ||
* Technical direction |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
most of those points are duplicate of the above. I don't understand why we are duplicating them.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See #1754 (comment) (I agree it’s better not to duplicate and just say something like "the above")
|
||
If a Node.js-specific communication channel, such as a social media account or a discussion forum, is established by another party and used to represent the technical work or the technical community of the project, the TSC may request administrator or moderator access to ensure representation is aligned with the consensus within the project. Day-to-day operation in such channels can be delegated to another party as long as they follow the Code of Conduct, and respect the consensus seeking process before representation of the project is manifested. | ||
|
||
If the TSC becomes aware of external communications that appear inconsistent with the project’s consensus, it may engage with the communicating party, directly or through appropriate channels, to help align the message with the project’s consensus-seeking processes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This mixes responsibilities and a consensus-seeking approach. If this needs to be written somewhere, it's not in this section of this document.
You can't do marketing and brand management by committee; it's too slow and it doesn't work (we tried this in the past).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This documents that when someone speaks on behalf of the project on social media that is inconsistent with the project’s consensus, or without confirming consensus, the TSC would communicate and align the two. For example if someone that’s seen as a representative of the project - or the official account itself - declares “we’ll deprecate this feature in the next release” but there is no consensus within the project whether it should be deprecated, the TSC would communicate to them to get it corrected. This is what we’ve already been doing (not necessarily deprecation but I think you'd probably remember similar things that happened in the past).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Honestly, this is tending towards way too much bureaucracy and process than what is going to be helpful/useful. Yes, we should all be careful about what we say before we're certain there's consensus but it's not something we need formal processes around.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's case by case on whether there needs formal process:
- In the case of technical work, the process already happens on GitHub and likely is very obvious to TSC members who know what seals the consensus and when there's no clear consensus (e.g. removing/keeping corepack, standards body representation).
- In the case of community representation, IMO a org-wide vote was already a good enough precedence.
The idea isn't that the TSC must be very hands-on on how the representation is manifested, just that those who declares representation should ensure, at least by themselves, that the representation aligns with the consensus that's already been built, that part doesn't need involvement from the TSC, but obviously they can always ask for help from the TSC. And when the two aren't aligned, the TSC is in a position to remind them. Without granting TSC this in the charter, for example I could just go to TC39 and frame my own opinion as the Node.js's project opinion (I would not need to be explicit, just some misleading use of "we" would be more than enough, and one does not need to bring up the trademark because .js is silent), and no one has the right to correct me as long as I didn't go there as a OpenJS delegate - not that I would do it at TC39, or I generally try to open my words with "I don't speak for the project and this is just my personal impression" whenever people ask me "what's Node.js's opinion", but I don't see anything this charter or that of the CPC that grants anybody a position to correct me, so I would only be bound by my own conscience.
|
||
The TSC will define Node.js project’s release vehicles. | ||
|
||
Communication on topics where the scope of the TSC intersects with that of the [OpenJS CPC][] or the [OpenJS board][] will be handled in collaboration with the other two bodies, facilitated by the TSC representative on the CPC. | ||
|
||
If a Node.js-specific communication channel, such as a social media account or a discussion forum, is established by another party and used to represent the technical work or the technical community of the project, the TSC may request administrator or moderator access to ensure representation is aligned with the consensus within the project. Day-to-day operation in such channels can be delegated to another party as long as they follow the Code of Conduct, and respect the consensus seeking process before representation of the project is manifested. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is no "other party" that can establish an official channel. The only party is the holder of the trademarks - the OpenJS Foundation. We are part of the OpenJS Foundation, and we can use those trademarks.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is a fine line between being official or not - for example, the Discord wasn’t official until there was effort to make it official. Someone can also just set up a social media bot to post all the releases without declaring the bot official. Or initiatives like https://www.nodetodo.org/ https://nodeschool.io/ (no longer active, but I think you know what I mean). The passage just documents that when that happens, and the administrator wants to turn it official, the TSC may request administrator or moderator access to ensure alignment, but may not actually moderate it themselves as long as the delegate respect the general rule the community on GitHub has been following. It’s what we’ve already been doing. Whether the trademark should be granted to them is out of the scope of the TSC charter since the TSC is not in charge of the trademark (at most, we can forward communication with them to the foundation staff, which is also what we've been doing).
It has been brought up in
nodejs/admin#977 (comment).