Skip to content
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

Umbrella Program #2

Merged
merged 15 commits into from
Oct 19, 2015
Merged
70 changes: 70 additions & 0 deletions Applications/Core-TLP.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
## Introduction

The Node.js Foundation directly oversees the development of the core
platform and associated working groups. The addition of top-level Projects
will predictably increase the workload on the TSC and so it makes sense to
transfer these responsibilities to a top-level Project concerned solely
with the development of the platform.

## History & Metrics

Created by Ryan Dahl, now the largest programming ecosystem in the world.

## Scope

The Core TLP will have sole responsibility and discretion over the Node.js
project in the following areas:

* Setting release dates.
* Release quality standards.
* Technical direction.
* Governance process and practices.
* Contribution process and practices.
* Maintaining the list of additional Collaborators.
* Development process and any coding standards.
* Mediating technical conflicts between Collaborators and Working Groups.
* Node.js build and CI infrastructure.

## Governance

https://github.com/nodejs/node/blob/master/GOVERNANCE.md

## Contributions

https://github.com/nodejs/node/blob/master/CONTRIBUTING.md

## Tools

* GitHub `nodejs` org.
* Uberconference & Soundcloud.
* Google Hangouts & Youtube.

## IP

All relevant IP is managed by the Node.js Foundation.

## TC Members

* **Ben Noordhuis** <[email protected]> ([@bnoordhuis](https://github.com/bnoordhuis))
* **Bert Belder** <[email protected]> ([@piscisaureus](https://github.com/piscisaureus))
* **Fedor Indutny** <[email protected]> ([@indutny](https://github.com/indutny))
* **Trevor Norris** <[email protected]> ([@trevnorris](https://github.com/trevnorris))
* **Chris Dickinson** <[email protected]> ([@chrisdickinson](https://github.com/chrisdickinson))
* **Rod Vagg** <[email protected]> ([@rvagg](https://github.com/rvagg))
* **Jeremiah Senkpiel** <[email protected]> ([@fishrock123](https://github.com/fishrock123))
* **Colin Ihrig** <[email protected]> ([@cjihrig](https://github.com/cjihrig))
* **Alexis Campailla** <[email protected]> ([@orangemocha](https://github.com/orangemocha))
* **Julien Gilli** <[email protected]> ([@misterdjules](https://github.com/misterdjules))
* **James M Snell** <[email protected]> ([@jasnell](https://github.com/jasnell))
* **Shigeki Ohtsu** <[email protected]> ([@shigeki](https://github.com/shigeki))
* **Brian White** <[email protected]> ([@mscdex](https://github.com/mscdex))

## Working Groups
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this say "Core working groups" and link to WORKING_GROUPS.md for 'the rest' ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's only the chartered WGs, there's a ton of un-chartered ones as well.


All previously existing chartered and un-chartered working groups.

## Provisional

The membership is already well under the 1/4 representation limit and the
project has been well established for quite a while. It should skip the
incubation phase.
19 changes: 19 additions & 0 deletions Applications/Evangelism-WG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
## Introduction

## History & Metrics

## Scope

## Governance

## Contributions

## Tools

## IP

## TC Members

## Working Groups

## Provisional
26 changes: 26 additions & 0 deletions Applications/NodeConf-Collective-TLP.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
## Introduction

## History & Metrics

## Scope

## Governance

## Contribution Process

## Tools

* GitHub `nodeconf` org.
* Uberconference & Soundcloud

## IP

* NodeConf Trademark, owned by TenConf LLC (@mikeal's LLC)

## TC Members

## Working Groups

## Requirements

* Link to DCO, LICENSE, and CoC.
19 changes: 19 additions & 0 deletions Applications/i18n WG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
## Introduction
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe mention naming conventions - nodejs-<iso 639 language>[-<ISO 3066 TERRITORY CODE>] or something


## History & Metrics

## Scope

## Governance

## Contributions

## Tools

## IP

## TC Members

## Working Groups

## Provisional
143 changes: 143 additions & 0 deletions Project-Lifecycle.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
# Node.js Foundation Project Lifecycle

## Project Definition

The Node.js Foundation hosts several "Top-Level Projects." These projects
are autonomous from each other and governed by their own TC (Technical
Committee) and chartered by the Node.js Foundation TSC.

Projects are free to create "Working Groups" which are autonomous groups
collaborating to fulfill a set of responsibilities. Working Groups are
eventually chartered by the TC. The TSC also charters its own Working
Groups.

```
TSC
|
|-- Project A TC (Chartered By TSC)
| |-- Working Group (Chartered By Project TC)
|
|-- Project B TC (Chartered By TSC)
| |-- Working Group (Chartered By Project TC)
|
|-- Working Group A (Chartered by TSC)
|-- Working Group B (Chartered by TSC)
```

Both TLPs and TSC WGs may elect a representative to the TSC. TLPs and WGs
with *incubation* status are not granted voting privileges on the TSC.

## Incubation

The purpose of incubation is to support and mentor projects entering the
foundation. The goal is for projects to be:

* Participatory
* Transparent
* Effective

While certain processes are strongly recommended because of the TSC's
experience the goal of incubation is not to enforce a specific set of
processes but to ensure that the processes adopted and accepted by a
project achieve these goals. Therefore, the requirements for graduating
from incubation are based on metrics that demonstrate success in terms of
these values. These metrics are:

* TC is 5 members or greater.
* No more than 1/4 of the TC is affiliated with the same employer.
* Members of the TC live in at least 4 different timezones and
representing no fewer than three countries.
* The decision making and release process is documented and publicly accessible.

A project may apply to graduate from incubation at any time by calling
for a vote in the TSC.

While a project is incubating it is assigned at least 3
[mentors](https://github.com/nodejs/TSC/blob/master/README.md#mentors)
who are responsible for working with the project to adopt policies and
gain the health and contributorship it will need in order to graduate
from incubation. The mentor list is nominated and approved by the TSC and
is expected to be larger than the TSC.

## Lifecycle

The Foundation shall encourage new Projects and innovation in the
community. New Projects enter the Node.js Foundation through a
[Proposal](#Proposal).

The project should be considered mature and have a history of releases
before applying to enter the foundation.

## Top-Level Project and Working Group Requirements

All TLPs and WGs are expected to operate in a transparent manner.
Decisions must be made publicly through a documented public process
managed by each TLP TC or WG.

All TLPs and WGs must use a participatory decision making process. All
TLP TCs must ensure they are accurately representing the WGs in their
TLP.

### Security

All projects in the foundation share the same base security policy. The
foundation's security team triages issues sent to [email protected].
Top-Level Projects, whether in the incubator or not, are expected to
maintain a private security repository where the security team can bring
project-specific issues.

## Top-Level Projects

All Top-Level Project TCs must follow a [Consensus
Seeking](https://en.wikipedia.org/wiki/Consensus-seeking_decision-making)
process and are responsible for documenting and keeping up to date their
current processes and practices.

Each TLP TC must elect a representative to the Node.js Foundation TSC or
vote to abstain from representation on the TSC.

## Applying to join

A proposal to join the Node.js Foundation as a top-level Project or
Working Group must include:

* Introduction and project description.
* Project history.
* Any available metrics or even estimates about the user base, ecosystem
and community.
* Project scope.
* Current governance process.
* Current contribution process.
* List of current tools in use by the project (forums, issue trackers,
GitHub orgs, etc).
* Existing IP Policy and relevant intellectual property (trademarks,
domain names, etc).
* List of initial TC members.
* List of initial Working Groups.
* Prior to being admitted the project:
* Must include
[DCO](https://github.com/nodejs/node/blob/master/CONTRIBUTING.md#developers-certificate-of-origin-10).
* Must include approved license. If it is not currently under an
approved license it will need to be cleared by the TSC and the Node.js
Foundation Legal Committee prior to acceptance in to the incubator.
* Must include a [Code of Conduct](https://github.com/nodejs/node/blob/master/CONTRIBUTING.md#code-of-conduct).

Each proposal should be sent as a pull request to this repository in the
Applications directory. Proposals do not have to be complete to be
submitted, the TSC can work with the authors and their respective
communities in each Pull Request.

### Approved Licenses

At this time the foundation is only accepting projects which use an MIT,
BSD, ISC or Apache2 license.

### Admittance

The Node.js Foundation is quite new and currently has limited resources
available to mentor new projects. As such, projects are chosen for
admission in groups as mentors become available.

You can apply at any time and the TSC and available mentors will help
improve your application while awaiting the next available approval
phase.
21 changes: 19 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,23 @@
# The Node.js Foundation TSC

The Node.js Foundation Technical Steering Committee is the technical governing body of the Node.js Foundation. It admits and oversees all Top Level Projects in the Node.js Foundation. It also elects a representative to the Node.js Foundation Board of Directors.
The Node.js Foundation Technical Steering Committee is the technical governing body of the Node.js Foundation. It admits and oversees all top-level Projects in the Node.js Foundation. It also elects a representative to the Node.js Foundation Board of Directors.

For more information read the [TSC Charter](https://github.com/nodejs/TSC/blob/master/TSC-Charter.md).
For more details read the [TSC Charter](https://github.com/nodejs/TSC/blob/master/TSC-Charter.md) adopted by the Node.js Foundation Board of Directors on June 17th 2015.

If your project is interested in joining the Node.js Foundation please read the [Project Lifecyle.md](./Project Lifecycle.md) documentation.

## TSC Members

## Top-Level WG and TLPs

* Working Groups
* Mentors
* Top-Level Projects
* Core TLP
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indent error? Or are "Mentors" and "Core TLP" subcategories?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The “Core TLP” is pretty much the whole “project” as it stands today, so it is its own category and will have its own WGs. I’m sending a small change to make that clearer.

On Oct 14, 2015, at 1:57PM, Ben Noordhuis [email protected] wrote:

In README.md #2 (comment):

+If your project is interested in joining the Node.js Foundation please read the [Project Lifecyle.md](./Project Lifecycle.md) documentation.
+
+## TSC Members
+
+## Top Level WG and TLPs
+
+* Working Groups

  • * Mentors
    +* Top Level Projects
  • * Core TLP
    Indent error? Or is "Core TLP" a subcategory?


Reply to this email directly or view it on GitHub https://github.com/nodejs/TSC/pull/2/files#r42051998.

* Core WGs (streams, http, Intl)

## Mentors

Project mentorship is not a technical role. In fact, mentors are discouraged from giving technical advise to projects. Instead, the purpose of mentorship is to encourage and improve a projects ability to be participatory, transparent, and effective. Mentors are there to help projects adopt and iterate on policies and processes that achieve these goals and eventually allow them to graduate the incubation phase.

* Mikeal Rogers (@mikeal)
Loading