[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct

Chris Lattner via llvm-dev llvm-dev at lists.llvm.org
Tue Oct 13 20:48:38 PDT 2015

On Oct 13, 2015, at 5:37 PM, Hal Finkel via llvm-dev <llvm-dev at lists.llvm.org> wrote:
> and say that this seems like a good model for the CoC committee process. Specifically, something that is community driven. As Chris said,
>> [...] what the LLVM Foundation is
>> about.  It isn’t about making technical decisions (we have code
>> owners for that).  It is designed to handle administration of the
>> project and infrastructure, including planning and rolling out of
>> the devmtgs.
> and this is clearly an important function. One thing that defines LLVMs code ownership role is that it is not particularly hierarchical in authority. A code owner is quite-accurately described as a "first among equals", and maintaining that flavor in the structure of the community is important. The LLVM foundation, as an entity tasked with financial obligations, can have an independent process for determining its leadership, and that's not inappropriate.

I completely agree.

FWIW, I see the board’s role here as 1) identifying the need for a CoC, and 2) starting a discussion about it.  It is not the board’s job to dictate some specific thing without approval of the community.  The proposal Chandler sent out was intended as an *RFC*  (see the subject of the message) not a "dictate from the board”.  The discussion is intended to take place in public, and feedback and input is greatly welcomed.

If anything, the formal role of the board is to replace me in various capacities as “head code owner”.  We need some entity to break ties and settle debates (both technical and policy) and it is unreasonable for LLVM in the long term for that responsibility to rest solely on my shoulders.  The LLVM Foundation is intended to distribute that responsibility to multiple different people with multiple different perspectives, backgrounds, and personal biases, to make sure we get the right thing for the community at large.

The great thing about this is that this is completely forward looking, and *not* driven by any specific crisis.  We want LLVM to be proactive and built for the long term, not a reactive community that tries to duct-tape problems as they come up.  So far, the board has not had to settle any disputes, and while we had one situation where a CoC would have been useful, it was both a long time ago (~2006) and was handling with professionalism at that time.  That said, times change and the LLVM community has grown a lot, we want to be prepared for the next 10 years. :-)

> Finally, I'd like to say that one of the most attractive things about this community is how professional it is. The people are respectful, polite, patient and helpful. What I'm hearing is that experience from other communities suggests that having a CoC will help ensure these qualities continue to define LLVM's community, and therefore, I'm in favor.

I totally agree.  I see a CoC as formalizing existing practice, not establishing new practice.  If anything, it is a bit disheartening to see some folks' reactions on this thread, because they border into the unprofessional behavior that we’d like to avoid.  Here is one way to look at it: passionate technical discussions are great.  Vitriol, ad-hominem attacks, and implied ill-will is not.

Further, while this seems like a simple task, there is an art to codifying this existing practice in the right way.  This obviously requires community effort, and I want to thank Chandler again for taking on the thankless task of driving the discussion!


More information about the llvm-dev mailing list