Skip to content
This repository has been archived by the owner on Nov 1, 2022. It is now read-only.

Community Representation on Node.js Advisory Board #1

Open
dshaw opened this issue Nov 10, 2014 · 20 comments
Open

Community Representation on Node.js Advisory Board #1

dshaw opened this issue Nov 10, 2014 · 20 comments
Assignees

Comments

@dshaw
Copy link
Contributor

dshaw commented Nov 10, 2014

Scott Hammond, Joyent’s new CEO, has outlined a plan for the Node.js Advisory Board. If you haven’t had the opportunity to digest this plan, please take a moment to do so.

The advisory board charter defines 13 seats represented as follows:

  • Project Lead (TJ Fontaine)
  • 2 seats for the top core technical contributors
  • 4 corporate seats
  • 4 “user” seats
  • One curator seat (Chris Williams)
  • One Open Source Software guidance seat (Danese Cooper)

An advisory board membership term lasts for 12 months. With the exception of the Project Lead, all members can serve a maximum of two consecutive terms.

The interim advisory board is tasked with the job of replacing itself. One key concern that has been raised since the first advisory board meeting is how to better engage the broader community interests in the Advisory Board process. The Advisory Board charter defines “user” seats as:

These seats are for organizations that are using Node.js. To be nominated, an end-user company must currently be using Node.js in production and have published a use case on the Node.js website. Once nominations have been closed, selection will be made by a vote by eligible contributors. Eligible contributors are those who are currently active and have had at least one non-trivial pull request merged to master in the past six months.

The concern here is that this marginalizes the broader Node Community by defining community as only represented by companies. The purpose of this issue is to collect feedback and potentially prepare an alternative representation model.

Your feedback is crucial here:

  1. What are the community representation models we can draw inspiration from?
  2. How many seats should community representatives hold?
  3. How do we define which ecosystems should be represented?
  4. Who would you nominate to represent you?
@dshaw dshaw self-assigned this Nov 10, 2014
@junosuarez
Copy link

Additional questions:

  • Why is "user" defined that way when the "corporate" category also exists?
  • How are "corporate" representatives chosen?
  • Do the (consecutive) term limits for corporate representatives apply to the individual or to the corporation?
  • Is it the same for "user" seats with regard to companies or other organizations they may represent?
  • With the criteria as written, what is the process (and criteria) for getting a "use case published on the Node.js website"? Is this a marketing case study for Joyent?

@max-mapper
Copy link

I have a basic question which is: who wrote http://nodejs.org/about/advisory-board/, is it in source control, and if we have questions about the text there who can we hold accountable to get official, public clarification from on behalf of Joyent?

@dshaw
Copy link
Contributor Author

dshaw commented Nov 10, 2014

@jden Great questions, though I would encourage exploring corporate representation in a separate issue.

@max-mapper
Copy link

@rvagg cheers m8!

@voodootikigod
Copy link
Contributor

@rvagg so quick on the draw!

@dshaw
Copy link
Contributor Author

dshaw commented Nov 10, 2014

@maxogden It is in source control under https://github.com/joyent/node-website. It was added by @tjfontaine on October 22nd. nodejs/nodejs.org-archive@cce2b8c

@max-mapper
Copy link

@dshaw thanks, I just made a PR with that info nodejs/nodejs.org-archive#55

@rvagg
Copy link

rvagg commented Nov 10, 2014

I'd like to see the "project leader" and "curator" seats merged in to one seat, properly called something like a "facilitator". The current model simply reinforces the BDFL model which everyone, including Joyent, have stated their desire to step away from. I'd also like to see this seat become non-permanent too, again it reinforces the wrong leadership model.

The leadership this board needs is simply to facilitate meetings, make sure the agenda is sorted, minutes are taken, make sure action items are created and passed out and make sure that the board is sticking by its stated purpose.

@rockbot
Copy link

rockbot commented Nov 10, 2014

I'd like to see at least one user seat given to someone who represents the general, non-company-based user base. i.e. someone who doesn't represent a company (even if they get paid to do node.js full time). There are a LOT of folks who write node for fun, on the weekends/evenings/etc who care about where node as a project is going, even if they're not necessarily profiting from it.

@voodootikigod
Copy link
Contributor

@rvagg

The curator role is mainly just making sure the events happen, meeting minutes recorded, and everyone acts with the appropriate decorum and conduct during the meetings (much like you have outlined). The role attempts to ensure that the schedule is adhered to while still allowing for the natural ebb and flow of conversation and encourage new voices. I, personally, -- especially being in the role now -- view this very much as temporal and not permanent by any means. My goal is to make it and all roles within the advisory temporal in order to allow different voices and ideas to flow through the project.

In terms of project lead, I - again personal opinion - view this as a far more technical role with the curator/moderator being a far more human role.

@rockbot
Copy link

rockbot commented Nov 10, 2014

I'd also like some official wording that discusses how the committee will ensure that it has the most diverse advisory board possible. I'm not just talking about race/gender, but also profit/non-profit, hobby/corporate, academic/non-academic, etc.

Ideally, this would mean having equivalent representation on the board as the user base, so if 40% of node users work at node-based companies, then 40% of the board consists of company-based representatives. I don't know how you'd get those numbers necessarily, but at least that way we'd all feel more comfortable knowing that the group truly represents userland as a whole and not just corporate interests.

@rvagg
Copy link

rvagg commented Nov 10, 2014

@rockbot there are supposed to be 4 seats for "users" but it's a little vague on how these will be chosen. I have concerns about trying to solidify this concept of a "user base" or even "community", it's impossible to pin down exactly what that is when we need to be formal about it. I guess a process of self-nomination and then voting by the TC or other existing body would make sense but the risk is in reinforcing the ownership of the process by the "Node elite" (which, sadly, is a bit easier to pin down and probably includes you and me). Some kind of process that invites and encourages involvement by a very broad base of Node consumers and people around those consumers (including educators, evangelists, etc.), even the ones we need see or hear from on Twitter or Github, would be ideal. I'm just not sure how you formalise that for the purposes of this process.

@junosuarez
Copy link

@dshaw ah, good point, I'll open separate issues :)

@dshaw
Copy link
Contributor Author

dshaw commented Nov 11, 2014

Cross posting @isaacs from the Advisory Board mailing list:

Please take a moment to read this: http://rubini.us/2014/11/10/rubinius-3-0-part-1-the-rubinius-team/

In this post, Rubinius is doing a great job articulating what many of us would like from a dedicated consensus-seeking TC and an "OPEN open" project commit policy.

An inclusive Code of Conduct is essential to making this sort of system healthy. There are several problematic issues in the past that could have been avoided if we'd had such a policy in place.

Since most Node.js users are also npm users, perhaps it's worth adopting the npm Code of Conduct for the Node.js project as well: http://www.npmjs.com/policies/conduct

@dshaw
Copy link
Contributor Author

dshaw commented Nov 11, 2014

Per 1., here's some great feedback from the way the Drupal community is managed:

The Drupal Association (DA) does have a Board of Directors. The DA is, by charter, barred from having any say in the roadmap of the technology. The DA's role is centered on community; to maintain the infrastructure (e.g. drupal.org) and produce the conferences. It also handles the legal issues, such as trademark and licensing issues.

The roadmap for the project is still managed by the BDFL, but he delegates a lot of it to contributors, many of whom are outside his company. This has taken the form of a formal lieutenant model... the BDFL chooses individuals to lead particular subsystems. These leaders come up with roadmaps for their subsystems and manage the execution. Again, these leads are mostly chosen from outside of the BDFL's company. But generally, Drupal is a "do-ocracy", which means that those who put the most time in have the most influence, regardless of their position in the formal hierarchy. In some respects, this style of organization has failed, and there's currently a lot of discussion about it [1] [2] [3].

The BDFL also has something called Large Scale Drupal. In some ways, I think this functions like the [Node.js Advisory Board] might. It brings together the big-corporation folks. I think companies have to pay some fee to be part of it (or they voluntarily chip in), and that money is used to pay specific contributors to focus on parts of the system which they deem important. For example, work on REST and serialization was funded by LSD. These paid contributors report to the BDFL's company and their work is prioritized in the commit queue.

@subfuzion
Copy link

@rvagg -- those are great points wrt the user community. Perhaps a pool of qualified node users that receive a few nominations and then a completely random lottery process for final selection...?

@smikes
Copy link

smikes commented Nov 13, 2014

+1 to @rockbot

I'd like to see at least one user seat given to someone who represents the general, non-company-based user base. i.e. someone who doesn't represent a company (even if they get paid to do node.js full time). There are a LOT of folks who write node for fun, on the weekends/evenings/etc who care about where node as a project is going, even if they're not necessarily profiting from it.

@Fishrock123
Copy link

Also +1 to @rockbot

I'd like to see at least one user seat given to someone who represents the general, non-company-based user base. i.e. someone who doesn't represent a company (even if they get paid to do node.js full time). There are a LOT of folks who write node for fun, on the weekends/evenings/etc who care about where node as a project is going, even if they're not necessarily profiting from it.

I know a lot of people like this.

@mikeal
Copy link
Contributor

mikeal commented Nov 14, 2014

I've taken the Node Forward governance, contribution policy, and code of conduct and adapted for use by the Advisory Board.

#11

I think it covers all of the concerns brought up in this thread. If not please comment there and I'll adapt it to address them.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

10 participants