1 of 26

Case study: OpenJS Foundation

Open Source Foundations

đź”—

2 of 26

Meet the Speaker

Claudio Wunder

@wunderacle / @ovflowd

Cross Project Council, OpenJS Foundation

3 of 26

Table of Contents

The role of Foundations in Open Source

Quick intro: OpenJS Foundation

Deep dive: OpenJS Foundation

Quick intro: The Node.js project

Deep dive: Node.js project governance

Q&A, Open Round Table about Open Source

10 MIN

05 MIN

10 MIN

05 MIN

10 MIN

10 MIN

4 of 26

The role of Foundations in Open Source

The FOSS

Ecosystem

Foundations exist to enable, advance and grow open source as an ecosystem.

5 of 26

The role of Foundations in Open Source

Infrastructure

  • Marketing, Design, Staffing, Content Writing
  • Digital Resources & Services

Institutionalization

“The Linux Foundation protects Open Source projects from Patent Trolls”

  • Trademark, Copyrighting, Patents
  • Legal & Corporate Counseling and Institutionalization

Fundraising

“Foundation membership exchanges voice in the Foundation governance for resources to the projects”

  • Monetary Fundraising
  • Foundation memberships, In-person conferences & activities

“RedHat provides servers to the GNOME Foundation for hosting their GitLab instance”

6 of 26

Fundraising in

Open Source

  • Allocate dedicated resources in essential work
  • Support Open Source maintainers financially
  • Individual Sponsorship (OpenCollective, GitHub Sponsors)

đź”—

7 of 26

The essential work of Open Source Foundations

đź”—

8 of 26

Relevant Links

  • Read this Linux Foundation report on the role of communities within Open Source

PLEASE READ

9 of 26

Quick intro: OpenJS Foundation

OpenJS

Foundation

đź”—

10 of 26

OpenJS Foundation?

🏠

A home for Open Source

OpenJS hosts dozens of JavaScript projects.

🤗

Incubating Open Source

Providing governance advisory and growth

🤝

Collaboration Spaces

Further the Open Web ecosystem

📊

Strategic Partnerships

Providing key-resources to Open Source projects

11 of 26

Deep dive: OpenJS Foundation

Collaboration Spaces

đź”—

12 of 26

Deep dive: OpenJS Foundation – Collaboration Spaces

Standards

Package Interop

Open Visualization

Coordinate & Advance Web Standards across the Industry (W3C, IEEE, TC39…)

→ Link

Improve JavaScript package interoperability across JavaScript runtimes.

→ Link

Forum for Open Visualization technologies (WebGL, etc)

→ Link

13 of 26

Deep dive: OpenJS Foundation

Open Governance

How the OpenJS Foundation tackles the next challenges.

14 of 26

Deep dive: OpenJS Foundation –

Open Governance

  • Cross Project Council – Top-level Technical Body
  • Projects have representatives (Voting Members)
  • Anyone can be a member (Regular Members)
  • Open, Transparent and Consensus Seeking-based decision making process.
  • Works on processes for top-level governance and facilitate per-project governance (administrative, funding, resources, etc)

15 of 26

CPC’s Governance Process

01

Topics are raised

In the format of discussions or issues, members bring items to the CPC’s agenda.

02

Async & Sync Collaboration

Iterative process of working, discussing and collaborating on the advancement of said topic.

03

Documentation

Depending on what the raised topic is, documentation of intents, goals and outcomes is necessary

04

Consensus Seeking

Members vote and ensure that topics reach the finish line.

16 of 26

Quick intro: The Node.js project

The Node

Project

đź”—

17 of 26

Deep dive: Node.js project governance

Collaborators

  • Work on individual WGs, Strategic Initiatives and Teams
  • Contribute with numerous aspects of the Node.js

Core Collaborator

“The Node.js Core is divided in numerous teams that handle different technical domains”

  • Work on the Node.js Core (Runtime itself)
  • Dedicate in one or more specialities (HTTP, DNS, Crypto, …)

TSC

“The TSC is responsible for keeping Node.js relevant and its technical excellence.”

  • Technical Steering Committee
  • Lead the Strategic Initiatives of the Project
  • Ensure the continuity of the project

“From Infrastructure, Security, Releases, I18n, and more. Collaborators make Node.js happen”

18 of 26

Deep dive: Node.js project governance

TSC (Technical Steering Committee)

Owns Resources and Infrastructure

Defines Technical Priorities

Defines Strategic Initiatives

Manages the GitHub Org

OpenJS Foundation

Legal and Compliance

Fundraising, Provides Resources

Marketing & Outreach

Supports projects on individual needs

19 of 26

Collaborator opens an issue on /admin

01

02

→

03

04

→

05

06

07

→

08

09

Initial sentiment decides if it goes further

Author provides a draft proposal of what they’re requesting

TSC debates about the feasibility of the Proposal

Proposal gets updated until the TSC reaches an agreement

Depending on the Request it requires input from SI/WGs

The proposal gets presented to the TSC

TSC might request changes to the Proposal

Changes get Published/Approved

Governance Model

20 of 26

Deep dive: Node.js project governance

Keeping Node relevant.

21 of 26

Deep dive: Node.js project governance

  • Surveys to verify current JavaScript and Web development-related trends.
  • Discusses and prioritises features and community requests.
  • Forum for collaboration on a better contribution and newcomer experience
  • Program created to allow community members to be the voice of the project.
  • Share & promote content, learning resources and guides to empower Developers.
  • Promote the work from Content Creators / Keeps a lane of feedback.

The Next-10 Working Group

Node.js Ambassadors

22 of 26

Deep dive: Node.js project governance

Stability at the center

Extensive Iteration

Current Trends

  • Node.js focuses on long-term stability and security over raw performance and new features
  • Extensive testing (CITGM) before making releases.
  • New features get debated over long periods of time, prioritising stable APIs and good DevEx practices
  • An occasional sense of slowness.
  • Next-10 and other teams keep an eye at the state of JavaScript
  • Actively looking into current and trending standards

23 of 26

“In open source, we feel strongly that to really do something well, you have to get a lot of people involved.”

LINUS TORVALDS

Creator of Git, Linux

24 of 26

Engage with us

  • Reach out and chat with us on the OpenJS Slack space!

BONUS

25 of 26

Q&A, Open Round Table about Open Source

Q&A

26 of 26

Thank you