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

Proposed Node.js Foundation Mission, Structure and Strategy #77

Closed
Closed
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
76 changes: 76 additions & 0 deletions Foundation-Mission-Structure-and-Strategy-Proposal.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
# Node.js Foundation Mission, Structure and Strategy

_Proposal to the Node.js Foundation TSC and Board, by Rod Vagg_

**Goal #1:** Agree on a basic statement of mission for the Foundation, upon which all execution, by each group within the Foundation, can be tested and justified.

**Goal #2:** Agree on a strategy generation and execution structure, and the relationship between the main bodies within that structure, that can best achieve the mission of the Foundation.

## Foundation Mission Statement

**The Node.js Foundation exists to increase the adoption of Node.js.**
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggestion: consider "promote" or "encourage" instead of "increase". "Increase" to me sounds like growth is the only measure of success. So if one year the adoption doesn't grow, for example because of changes in the technology landscape, will have the Foundation failed its mission even though it continued to promote adoption?

Copy link
Member

Choose a reason for hiding this comment

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

Along the same line of thought I wonder if adoption is just one measure of success. The mission could be:

"The Node.js Foundation exists to make Node.js the best runtime for development and deployment of applications with one measure of success being the level of adoption in open source and commercial communities and its market share relative to other runtimes"

Copy link
Member Author

Choose a reason for hiding this comment

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

Coming out of discussion in the TSC meeting:

"The Node.js Foundation exists to increase the adoption of Node.js and increase participation in the Node.js project."


This goal is achieved by:

1. Maintaining the health of the core Node.js project
2. Fostering and encouraging a healthy Node.js open source ecosystem
3. Fostering and encouraging a healthy commercial ecosystem of training, products and services for Node.js

_This is an executable form of the Node.js Foundation Purpose as presented in its by-laws, Section 1.4_

### Fundamendals

The proposed mission statement stands on a fundamental raison d’être: “increase the adoption of Node.js”
Copy link
Contributor

Choose a reason for hiding this comment

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

raison d’être

Not sure what this means.

Copy link
Contributor

Choose a reason for hiding this comment

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

Google Translate says "Purpose"

Copy link
Member Author

Choose a reason for hiding this comment

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

don't you come from semi-French land?

"the most important reason or purpose for someone or something's existence."

I'll change it, I hate pronouncing this when speaking and I'll need to say this to the Board.


Execution of this mission is divided into three prioritised areas: core, open source ecosystem, commercial ecosystem

Node.js core remains the fundamental focus for the Node.js Foundation, all else builds on this

**The Foundation should operate according to a broad strategy that encompasses the three areas of concern: core, open source ecosystem and commercial ecosystem**

Copy link
Member

Choose a reason for hiding this comment

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

I like that this calls out the 3 areas separately as it helps to identify that we are interested in all 3.

![Strategy Areas](https://cldup.com/cqJ9KZppcA.png)

## Foundation Structure

The Node.js Foundation is made up of three distinct arms:

* The ***Board***
* The ***Business Executive***
Copy link
Contributor

Choose a reason for hiding this comment

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

Are "Business Executive" and "Technical Executive" fixed phrases? On a first read, I thought they referred to invididuals, not groups, which could be confusing for others too.

Copy link
Contributor

Choose a reason for hiding this comment

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

Perhaps postpend "Branch" as in Separation of Powers?

Copy link
Member Author

Choose a reason for hiding this comment

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

From TSC meeting, naming of the two executive branches is problematic. Current suggestion is "Executive Team" and "Technical Team", @mikeal I'd like to hear if you come up with a better term for your team.

* The ***Technical Executive***

### The Board

* Ultimate responsibility for the activities of the Foundation and the expenditure of its funds
* Representation of financial donors (member companies), the Technical Executive via a seat for a TSC nominee and the Node.js user community via external board seat(s)
Copy link
Contributor

Choose a reason for hiding this comment

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

What about via a seat for a TSC member? I kinda read this as saying "there is a seat on the board for a nominee to the TSC", when I think the intention was "there is a seat on the board for a member of the TSC, who is nominated by the TSC (or board?)"

* Maintain focus on the fundamental goal of the Foundation: _“increase the adoption of Node.js.”_
* Delegates all technical execution to the Technical Executive, requiring approval of strategy that expands scope beyond Node.js core related concerns
* Delegates all business execution to the Business Executive, requiring approval of strategy and budget
* Delegates a shared responsibility for the Node.js open source ecosystem to the Technical Executive and Business Executive, requiring approval of strategy

### The Technical Executive

* Answerable to the Board via a Technical Steering Committee (TSC), a peak body that takes on an administrative role within the Technical Executive
Copy link
Member

Choose a reason for hiding this comment

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

what do you mean by a "peak" body ?

* Managed by an _Open Governance_ process, independent of the Board, that empowers individuals and companies investing materially in the technical development of the project
* Independently manages execution strategy for _“maintaining the health of the core Node.js project"_
Copy link
Contributor

Choose a reason for hiding this comment

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

Do we have a good definition of what the core Node.js project is that we could link to here? Or maybe write one up?

* Shares responsibility with the Business Executive for managing execution strategy for _“fostering and encouraging a healthy Node.js open source ecosystem”_, requiring Board approval for any such strategy
* Serves as the container within which _all_ technical execution of the Foundation’s activities takes place
* Covered by Section 5.4.b of the Foundation by-laws. Although Section 4.3.e of the by-laws mentions the possibility of additional _“top level projects”_ directly under the Board, the Foundation will use a single Technical Executive as its top-level project for execution of all technical strategy.

### The Business Executive

* Responsible for the expenditure of Foundation funds in accordance with the broad wishes of the Board and budgetary approval
* Assisted by the Linux Foundation, using shared resources in order to maximise availability and minimise cost
* Manages paid staff of the Foundation, including, but not limited to, the Community Manager, Education Coordinator and part-time PR resource
* Serves as a resource for the Technical Executive as required, including for the use of Foundation funds for technical purposes
* Responsible for managing execution strategy for _“fostering and encouraging a healthy commercial ecosystem of training, products and services for Node.js”_ requiring Board approval for any such strategy
* Shares responsibility with the Technical Executive for managing execution strategy for _“fostering and encouraging a healthy Node.js open source ecosystem”_ and requires Board approval for any such strategy

------------------------------------------

![Foundation Structure](https://cldup.com/K7TknIAKH9.png)

## Next Steps

1. Reach agreement on a basic statement of mission, upon which all strategy can be tested and justified
2. Agree on a strategy generation and execution structure, and the relationship between the main bodies within that structure, that can best achieve the mission of the Foundation