DPDK community structure changes
 help / color / mirror / Atom feed
From: Michael Dolan <mdolan@linuxfoundation.org>
To: Matt Spencer <Matt.Spencer@arm.com>
Cc: "moving@dpdk.org" <moving@dpdk.org>
Subject: Re: [dpdk-moving] description of technical governance
Date: Mon, 31 Oct 2016 12:33:52 -0400	[thread overview]
Message-ID: <CAFV=PSGLUQKE3HW2aGmzU1dtE1t1Tyj8iLrz24xi7c8tOumhzg@mail.gmail.com> (raw)
In-Reply-To: <AM5PR0801MB20512CB8A2B0C1DD3AB23CEB95AE0@AM5PR0801MB2051.eurprd08.prod.outlook.com>

[-- Attachment #1: Type: text/plain, Size: 13109 bytes --]

Hi Matt, happy to. If you look at the third paragraph in my email I do
refer to setting up a TSC in order to encourage/force company diversity of
contributors in a project. FD.io was setup with one initial project called
VPP. In that case, it was 100% Cisco developers/engineers working on it.
The TSC does not make any code decisions. The TSC becomes a place for
discussing architecture, accepting new projects into FD.io or discussing
future roadmap ideas, but the TSC does not make contributions - that
happens in the projects/sub-projects through developers and engineers
making contributions. So, yes, some projects do have the option for a top
tier member to appoint a participant onto the TSC - but that's most often
to encourage diversity of companies contributing to the project. If we had
setup FD.io with 1 project VPP and 100% Cisco maintainers... that's pretty
tough for anyone else to support. So we're artificially creating a more
diverse structure so 1 company couldn't just make all the decisions and
direct the future of the Project. Further, the TSC sets the rules for
becoming a committer/maintainer.

However, you should also take into account that while a top tier member in
FD.io can appoint a representative to the TSC, our TSC's also include the
PTLs from the main projects.  I stated this in my long email, but to put it
bluntly here - in my view, putting top tier members on a TSC is tool to use
when you want to improve the corporate diversity of contribution. This is
usually most beneficial in Projects that start with 1 company's codebase.

Where we don't have a top tier membership appointing seats on a TSC, our
projects typically default to the top level project Maintainers or some
representation of Maintainers (e.g. an annual election) so that
cross-project decisions can be made.

Whether DPDK has a diverse enough contributor community is not something I
can opine on - it does appear there are many companies involved in using
DPDK but I've not analyzed the code contributions and where they're coming
from. I'll leave that to you all who probably know far better than I do.

Does this help Matt?

-- Mike

Mike Dolan
VP of Strategic Programs
The Linux Foundation
Office: +1.330.460.3250   Cell: +1.440.552.5322  Skype: michaelkdolan

On Mon, Oct 31, 2016 at 12:18 PM, Matt Spencer <Matt.Spencer@arm.com> wrote:

> Hi Michael
> Can you give me some clarification then.  I understand that we are not
> 'buying a vote', but if I look at the model for FD.io for example (
> https://fd.io/sites/cpstandard/files/pages/files/
> exhibit_a_-_fd.io_project_by-laws.pdf) , the Platinum level membership
> gets you a seat on the Board, plus in section 2.3.b '*designate one
> representative to serve as a member of the TSC*'.  When the TSC is used
> to vote on architectural issues/direction of the project this really does
> look like 'buying a vote' to me?
> I hope you can understand why I am a little confused by your comments now?
> Regards
> Matt
> ------------------------------
> *From:* Michael Dolan <mdolan@linuxfoundation.org>
> *Sent:* 31 October 2016 16:07:03
> *To:* Matt Spencer
> *Cc:* Vincent Jardin; Thomas Monjalon; moving@dpdk.org
> *Subject:* Re: [dpdk-moving] description of technical governance
> Hi everyone, it's great to see the discussion and thoughts. I'll point out
> a few nuances to how we run projects to help with expectations and
> structural understanding.
> First, for technical governance, the project/sub-projects always make
> technical decisions. There is no option to "buy a vote" - you "vote" with
> contributions, technical merit and becoming a committer/maintainer over
> time based on prior contribution and technical leadership.
> Some Projects do setup a TSC ("Technical Steering Committee") that
> oversees the Project structure (e.g. sub-projects, modules, etc), the
> technical community (e.g. elevating new Maintainers/Committers) and any
> technical policies / rules (e.g. tabs vs spacing, release timelines and
> milestones, etc). Some Projects do give funders a role on the TSC, but that
> varies widely and we try to avoid it if a community already has a diverse
> technical contribution community. It's generally most helpful when starting
> a Project based entirely on 1 company's codebase and it gives others a say
> to ensure it's neutral while new committers are ramping up/learning the
> codebase.
> Second, we do host projects that do not raise any funds at all. They're
> projects we'll host for LF members if there's a community interested in it.
> However, please understand up front that those projects receives no
> resources from the LF. E.g. we don't run an OVS infrastructure for CI. The
> LF simply becomes the neutral home for key community assets like the
> trademark and domain so 1 participant in the community doesn't control
> everything. Please understand the LF is a non-profit and we receive funds
> from various projects but those funds are for those projects and we can't
> take funds from some other effort and apply them to DPDK - our auditors and
> members of the other projects we took funds from would not be happy to say
> the least.
> Third, when there is funding involved in a project, we typically setup a
> Governing Board that owns responsibility for how to spend the funding. The
> Governing Board does not make technical decisions or tell the technical
> projects what to do. The Governing Board is simply for those contributing
> funds to have a say in how those funds are spent. Often some projects will
> also setup the Governing Board to work on any marketing or legal topics as
> well. Ultimately the LF will not be making decisions on how Project funds
> are spent, so we rely on the funders to make those decisions.
> Typically there's a single or multi-tier membership structure. If
> multi-tier, the top tier usually gets an automatic seat on the Governing
> Board and a lower tier usually has a representation model (e.g. 1 seat per
> every X lower tier members). Typically the ratio is based on roughly what
> the contribution of X is relative to the higher tier members. E.g. if
> there's a top tier "Premier" at $50k/year and a lower tier "General" and it
> has a blended average of $5k/year, then there would be 1 General Member
> seat for ever 10 General Members to roughly equal what the Premier Members
> are paying.
> Note that this investment at any level does not "buy" technical decisions.
> Members who contribute funds do so to make sure there is something they
> want available for the community (e.g. if build/CI infrastructure is
> desired). What they get is a leveraged investment - e.g. they're not paying
> to build the entire infrastructure themselves, but sharing the cost with
> others. Typically a "hook" is to have a logo or something available to show
> your company is a "DPDK Project Member" or "Sponsor" and then to have an
> opportunity to be on the Governing Board.
> Without the funding, the community resources would not exist or would have
> to be provided by someone in the community unilaterally. Node.js for
> example receives a lot of contributions of various resources (e.g. CDN) for
> free from members of their ecosystem - which means they can raise a much
> lower amount in membership fees. And for some communities like OVS, they
> really don't need any public community resources other than GitHub and a
> webpage - and that's just fine for them.
> I apologize for the length, but hopefully this will be helpful in guiding
> discussions about how LF Projects are structured and some of the rationale
> behind it.
> Thanks,
> Mike
> ---
> Mike Dolan
> VP of Strategic Programs
> The Linux Foundation
> Office: +1.330.460.3250   Cell: +1.440.552.5322  Skype: michaelkdolan
> mdolan@linuxfoundation.org
> ---
> On Mon, Oct 31, 2016 at 11:20 AM, Matt Spencer <Matt.Spencer@arm.com>
> wrote:
>> Thanks for the responses.  I'm really looking forward to the debate later
>> today!
>> One point I would raise, and it is one that Thomas picked up on a bit.  I
>> don't think we can have a pure meritocracy /and/ expect some of the
>> membership to pay to support the project management.  I am going to have a
>> very hard time explaining to my exec why we should be spending $$$ on DPDK
>> when there is no clear benefit to membership.
>> Comparisons have ben made to the OVS project, which is fine, but OVS does
>> not have any membership costs (as far as I can see) and LF host this
>> project for free.
>> I don't think we can have both of these positions hold true.  We either
>> have
>>  1 - a pure meritocracy - ie the governance does not change and I believe
>> we are in the same position as we are today
>>  2 - Something a bit more like FD.io, with paid membership and paid
>> access to a board/TSC
>> Regards
>> Matt
>> ------------------------------
>> *From:* Vincent Jardin <vincent.jardin@6wind.com>
>> *Sent:* 28 October 2016 23:54:13
>> *To:* Thomas Monjalon; moving@dpdk.org; Matt Spencer
>> *Subject:* Re: [dpdk-moving] description of technical governance
>> Le 28 octobre 2016 9:22:43 PM Thomas Monjalon <thomas.monjalon@6wind.com>
>> a
>> écrit :
>> > 2016-10-28 16:52, Matt Spencer:
>> >> 1 - we adopt the model as is - one TSC member per committer
>> >> As this stands today, that would give us 56 TSC members,
>> >> with almost half of them from one company
>> >>
>> >> 2 - we adopt the model as is - one TSC member per committer -
>> >> to a maximum of 20% membership of the TSC
>> >> This would ensure that no one company can 'own' the TSC -
>> >> 56 committers, so max TSC membership from one company would be 11
>> >>
>> >> 3 - Maximum one member of TSC per committing company,
>> >> plus one TSC assignee per paid member
>> >> This would keep the TSC to a manageable level, give companies
>> >> an incentive to join, but not require membership to be on the TSC
>> >>
>> >> 4 - Something else?
>> >>
>> >> My current thoughts are with 3 because we should end up with a
>> >> representative cross section of the stakeholders of the project,
>> >> whilst still incentivising membership of the foundation.
>> >
>> > Thanks for sharing your view.
>> >
>> > I'm an Open Source guy and I might lack some politician skills.
>> > So please excuse me if I take the freedom to talk really frankly :)
>> >
>> > First of all, this email thread was dedicated to the technical
>> governance.
>> > And Matt is introducing money in this topic by talking about incentives.
>> > I think it is a very interesting point that we must discuss.
>> > From the beginning, everybody were saying that we must keep technical
>> > governance and legal structure separate.
>> > However one question has still no good answer: what is the incentive
>> > for contributing money in the structure?
>> > Is money going to biase the desired meritocratic system?
>> >
>> > My second comment is about having one company controlling the technical
>> > governance.
>> > I won't enter into the number details, and it's true that Intel provides
>> > at least 50% of the contributions nowadays. Intel is also the biggest
>> > contributor to Linux. No surprise.
>> > I understand that a voice from ARM is requiring to mitigate this fact.
>> > I would prefer ARM related companies working to achieve the same
>> > level of commitment as Intel. They are increasing their contribution
>> pace
>> > but may never really compete with a giant like Intel.
>> > That's why I second Matt to say that we must give a chance to every
>> > vendors to influence the technical decisions.
>> > Introducing a membership threshold looks to be a good idea.
>> >
>> > Having said that, I must state that the DPDK reality is a lot more
>> > complex than a competition between vendors.
>> > We are proving that a consensus based model works very well without
>> > the need of a TSC or a board.
>> > We can create such organization, but please keep in mind that it should
>> > not be really helpful in the day-to-day job.
>> +2
>>  From contributions, meritocracy is applied.
>> IMPORTANT NOTICE: The contents of this email and any attachments are
>> confidential and may also be privileged. If you are not the intended
>> recipient, please notify the sender immediately and do not disclose the
>> contents to any other person, use it for any purpose, or store or copy the
>> information in any medium. Thank you.
> IMPORTANT NOTICE: The contents of this email and any attachments are
> confidential and may also be privileged. If you are not the intended
> recipient, please notify the sender immediately and do not disclose the
> contents to any other person, use it for any purpose, or store or copy the
> information in any medium. Thank you.

[-- Attachment #2: Type: text/html, Size: 17011 bytes --]

  reply	other threads:[~2016-10-31 16:33 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-10-25  8:58 [dpdk-moving] [Topics] Francois Ozog
2016-10-25 11:27 ` O'Driscoll, Tim
2016-10-25 14:00   ` [dpdk-moving] description of technical governance Thomas Monjalon
2016-10-26 10:21     ` O'Driscoll, Tim
2016-10-28  9:13       ` O'Driscoll, Tim
2016-10-28 16:52         ` Matt Spencer
2016-10-28 19:22           ` Thomas Monjalon
2016-10-28 22:54             ` Vincent Jardin
2016-10-31 15:20               ` Matt Spencer
2016-10-31 16:07                 ` Michael Dolan
2016-10-31 16:18                   ` Matt Spencer
2016-10-31 16:33                     ` Michael Dolan [this message]
2016-10-31 16:43                       ` Matt Spencer
2016-10-31 16:52                         ` Michael Dolan
2016-10-31 16:56                           ` O'Driscoll, Tim
2016-10-31 16:58                             ` Michael Dolan
2016-10-31 18:31                             ` Jan Blunck
2016-10-31 19:41                               ` Vincent JARDIN
     [not found]                   ` <DB5PR04MB1605482F1C67F9B797EB9AE289A60@DB5PR04MB1605.eurprd04.prod.outlook.com>
2016-11-08  8:11                     ` Jaswinder Singh
2016-11-08  9:37                       ` O'Driscoll, Tim
2016-12-20 14:41       ` Thomas Monjalon
2016-10-25 14:55 ` [dpdk-moving] [Topics] Dave Neary
2016-10-26 12:47 ` Dave Neary
2016-10-26 15:00   ` Francois Ozog

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAFV=PSGLUQKE3HW2aGmzU1dtE1t1Tyj8iLrz24xi7c8tOumhzg@mail.gmail.com' \
    --to=mdolan@linuxfoundation.org \
    --cc=Matt.Spencer@arm.com \
    --cc=moving@dpdk.org \


* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).