Skip to content

Proposal: Social Communication Plan #977

@jasnell

Description

@jasnell

There's been some discussion lately here and there around different ideas for management of the projects social media and blog footprint. This discussion has focused on misunderstandings over who is largely responsible for the management of these spaces and whether they are the responsibility of the Foundation or the project.

To be certain, the Foundation owns the Node.js brand as well as the responsibility for all marketing efforts around that brand. The TSC (and by extension, the project) owns responsibility for setting the technical direction of the project including technical documentation. Even with this division of responsibilities in place, it is critical to keep in mind that everyone is working in good faith to advance the project and the brand in the ecosystem. There are no bad actors but there have been some disagreements on the process forward.

I'd like to see if we can get beyond those disagreements with a concrete proposed path forward.

Ultimately, it is the Foundation and not the project that ultimately owns all official marketing responsibility in the project. There have been questions raised about whether social media accounts like the Node.js bluesky account qualify as a marketing channel or a technical documentation channel -- and frankly, the answer is: it's both.

Per the TSC charter, the TSC (and by extension the project) has NO responsibility assigned for marketing activities.

Subject to such policies as may be set by the CPC, the TSC is responsible
for all technical development within the Node.js project, including:

* Setting release dates.
* Release quality standards.
* Technical direction.
* Project governance and process.
* GitHub repository hosting.
* Conduct guidelines.
* Maintaining the list of additional Collaborators.
* Development process and any coding standards.
* Mediating technical conflicts between Collaborators or Foundation projects.

The TSC will define Node.js project’s release vehicles.

The charter goes on to say:

The TSC and entire technical community will follow any processes as may be
specified by the OpenJS Foundation Board relating to the intake and license
compliance review of contributions, including the OpenJS Foundation IP Policy.

The TSC itself adopted this charter, with the approval from the CPC and the Foundation -- giving itself NO responsibility for marketing communication.

Unfortunately, however, this has led to a gap in expectations. Does the Foundation or the project determine what content is published on the nodejs.org blog? Does the Foundation or the project determine what content is published in the social media channels. Folks on the Foundation side -- the ones actually responsible for marketing and brand management -- rightfully claim that blog content and social media content are largely brand marketing. Folks on the project side -- the ones responsible for technical communication and documentation about the project -- rightfully claim that blog content and social media content are also technical documentation. Both views are correct and we should act accordingly.

To that end, I propose the following:

Split Social Media Channels

We split the social media presence on each platform into two distinct account handles, e.g. something like @nodejs for the marketing content and @nodejs-dev for the technical content.

While some have argued that splitting the channels like this is not ideal (I agree somewhat) there is significant precedence throughout the ecosystem for such splits)... and the possible downsides of such a split are far outweighed by internal fighting over who gets to control the content. Splitting the accounts is a compromise position.

To facilitate splitting, responsibility for management of the technical channel would be documented within the TSC charter as one of the responsibilities of the TSC, following ratification from the CPC/Foundation. The Foundation would continue with their responsibility for management of the marketing channel.

What exactly we call these channels is not really all that important. We could, for instance, decide (jointly, with the Foundation) that the existing @nodejs channels are the technical channel and that a new @nodejs-brand or @nodejs-marketing channel is necessary. I personally would leave such decisions up to the marketing experts (the folks who have actually been trained and have experience with these matters) at the Foundation to decide.

Clearer Blog Content Categories

Interestingly, the TSC charter does not mention at all who is actually responsible for the nodejs.org website design or content. However, it is the Foundation that owns the domain name, the Foundation that owns the trademark, and the Foundation that has licensed to the project the right to use the trademark. Given that the management responsibility of the website is undocumented, and unestablished, this would clearly suggest that the website is the Foundations responsibility.

That said, it is the Website team (@nodejs/nodejs-website) and Web infra team (@nodejs/web-infra) that have largely taken ownership over the design and general content of the Website.

My proposal is that we make this official. Specifically:

  1. We would add to the TSC charter that the TSC will take responsibility for the technical implementation and overall UX of the website subject to all design/visual changes being approved by the Foundation (under the idea that visual design elements are a component of brand management). The TSC would further officially delegate that responsibility to a fully chartered Website Working Group that would be tasked with working with the Foundation marketing team. This would be subject to the same general consensus rules that mean the TSC would serve as the fallback should natural consensus be unreachable, but it also means that the Website Working Group would have a certain amount of autonomy over the actual implementation of the website -- they would still be expected to work with the Foundation marketing and infrastructure teams, however, since the nodejs.org domain is owned by the Foundation and only used by the project under license.

  2. In this, the Foundation retains the right to request, or even insist, on the inclusion of certain pieces of Foundation-related content in the blog. This may include links and other content elements that the Foundation deems necessary.

  3. Content in the nodejs.org blog would fall under five distinct categories, each of which falling under a different groups responsibility:

  • Foundation Announcements -- Messages/posts from the Foundation itself. These fall entirely under the responsibiity of the Foundation marketing team.
  • Project Announcements -- Messages/posts from the TSC/projects. These are expected to essentially be technical communication.
  • Release Announcements -- Messages/posts about Node.js releases, falling entirely under the responsibility of the Release team. These are a subset of the Project Announcements.
  • Vulnerability/Security Annoucenements -- Messages/posts about Node.js security updates, reported vulnerabilities etc. These are a subset of the Project Announcements.
  • Event Announcements -- Messages/posts about Events/Conferences. These are a subset of the Foundation Announcements.

Project Announcements are expected to be limited to technical documentation, technical communication about the project. It would not be appropriately, for instance, for something to be published under the "Project Announcement" categories that announces some new community ambassador program (which is really a form of marketing program) or fund raising effort, etc. Examples of "Project Announcements" that aren't Release or Vulnerabilities would be technical descriptions of improvements recently landed in the codebase, descriptions of ongoing technical efforts such as where things are at with the implementation of QUIC, the implementation of pointer compression, or reports about ongoing discussions and collaborator summits, etc. Specifically, these deal with technical communication and not brand communication.

Foundation Announcements are expected to be limited to marketing/brand/event management. These may include posts discussing third party strategic partnerships, fund raising efforts launched by the Foundation, etc. Specifically, these deal with marketing/brand communication and not technical subjects.

Content that straddles the line between these would fall jointly in both categories.

The idea here is that, ultimately, it is the Foundation that is responsible for Foundation Announcement content and the project for Project Announcements.

Content Review Team

While all responsibility for reviewing all posts made to the node.js blog and social media channels are technically the responsibility of the Foundation marketing team, I am proposing that a joint Project + Foundation Content Review team, composed of Foundation Marketing team members and Project collaborators approved by the TSC, be established. The responsibility of this team is to review and approve content posts to all media (blogs, social channels, etc). The idea is that it really shouldn't be one or the other making decisions, given that we're all working towards a common goal, it should be a combined, cooperative effort to decide what content ends up where, with everyone assuming good faith on the part of everyone else.

Note that this plan would need the explicit approval of both the TSC and the Foundation in order to move forward.

@nodejs/tsc @nodejs/marketing

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions