- Joined
- Jul 22, 2017
IT KEEPS HAPPENING https://www.phoronix.com/scan.php?page=news_item&px=LLVM-Rafael-Espindola (https://archive.fo/YnvcLv)
The CoC: https://llvm.org/docs/CodeOfConduct.html (https://archive.fo/XnF2y)
https://lists.llvm.org/pipermail/llvm-dev/2018-May/122926.html (https://archive.fo/2Mg0j)
https://lists.llvm.org/pipermail/llvm-dev/2018-May/122929.html (https://archive.fo/LxNmw)
https://lists.llvm.org/pipermail/llvm-dev/2018-May/122928.html (https://archive.fo/3zLCF)
https://lists.llvm.org/pipermail/llvm-dev/2018-May/122934.html (https://archive.fo/UVKsL)
4/g/ https://boards.4chan.org/g/thread/65775717 (https://archive.fo/cXIIU)
Phoronix forum: https://www.phoronix.com/forums/for...s-quits-development-over-coc-outreach-program
One Of LLVM's Top Contributors Quits Development Over CoC, Outreach Program
Written by Michael Larabel in LLVM on 2 May 2018 at 04:30 PM EDT. 34 Comments
![]()
Rafael Avila de Espindola is the fifth most active contributor to LLVM with more than 4,300 commits since 2006, but now he has decided to part ways with the project.
Rafael posted a rather lengthy mailing list message to fellow LLVM developers today entitled I am leaving llvm.
He says the reason for abandoning LLVM development after 12 years is due to changes in the community. In particular, the "social injustice" brought on the organization's new LLVM Code of Conduct and its decision to participate in this year's Outreachy program to encourage women and other minority groups to get involved with free software development.
In part he wrote:
The reason for me leaving are the changes in the community. The current license change discussions unfortunately bring to memory the fsf politics when I was working on gcc. That would still not be sufficient reason to leave. As with the code, llvm will still have the best license and if the only community change was the handling of the license change I would probably keep going.
The community change I cannot take is how the social injustice movement has permeated it. When I joined llvm no one asked or cared about my religion or political view. We all seemed committed to just writing a good compiler framework.
Espindola was one of the most prolific LLVM contributors. I ran some Git statistics today on the code-base to look at his contributions.
![]()
Of the 900+ authors to LLVM, Rafael was the fifth most contributor to LLVM by commit count with 4,344 commits (2.65% of all commits0 and in the process added 157,679 lines of code. He had been contributing since 14 May 2006 and was many times the most active LLVM contributor in a given month while working for the likes of Google and Mozilla. In fact, for 2013 through 2015 he was the most active author each year. His contributions will certainly be missed.
The CoC: https://llvm.org/docs/CodeOfConduct.html (https://archive.fo/XnF2y)
Rafael's departing message: https://lists.llvm.org/pipermail/llvm-dev/2018-May/122922.html (https://archive.fo/SCgWM)LLVM Community Code of Conduct
Note
This document is currently a DRAFT document while it is being discussed by the community.
The LLVM community has always worked to be a welcoming and respectful community, and we want to ensure that doesn’t change as we grow and evolve. To that end, we have a few ground rules that we ask people to adhere to:
This isn’t an exhaustive list of things that you can’t do. Rather, take it in the spirit in which it’s intended - a guide to make it easier to communicate and participate in the community.
- be friendly and patient,
- be welcoming,
- be considerate,
- be respectful,
- be careful in the words that you choose and be kind to others, and
- when we disagree, try to understand why.
This code of conduct applies to all spaces managed by the LLVM project or The LLVM Foundation. This includes IRC channels, mailing lists, bug trackers, LLVM events such as the developer meetings and socials, and any other forums created by the project that the community uses for communication. It applies to all of your communication and conduct in these spaces, including emails, chats, things you say, slides, videos, posters, signs, or even t-shirts you display in these spaces. In addition, violations of this code outside these spaces may, in rare cases, affect a person’s ability to participate within them, when the conduct amounts to an egregious violation of this code.
If you believe someone is violating the code of conduct, we ask that you report it by emailing conduct@llvm.org. For more details please see our Reporting Guide.
- Be friendly and patient.
- Be welcoming. We strive to be a community that welcomes and supports people of all backgrounds and identities. This includes, but is not limited to members of any race, ethnicity, culture, national origin, colour, immigration status, social and economic class, educational level, sex, sexual orientation, gender identity and expression, age, size, family status, political belief, religion or lack thereof, and mental and physical ability.
- Be considerate. Your work will be used by other people, and you in turn will depend on the work of others. Any decision you take will affect users and colleagues, and you should take those consequences into account. Remember that we’re a world-wide community, so you might not be communicating in someone else’s primary language.
- Be respectful. Not all of us will agree all the time, but disagreement is no excuse for poor behavior and poor manners. We might all experience some frustration now and then, but we cannot allow that frustration to turn into a personal attack. It’s important to remember that a community where people feel uncomfortable or threatened is not a productive one. Members of the LLVM community should be respectful when dealing with other members as well as with people outside the LLVM community.
- Be careful in the words that you choose and be kind to others. Do not insult or put down other participants. Harassment and other exclusionary behavior aren’t acceptable. This includes, but is not limited to:
In general, if someone asks you to stop, then stop. Persisting in such behavior after being asked to stop is considered harassment.
- Violent threats or language directed against another person.
- Discriminatory jokes and language.
- Posting sexually explicit or violent material.
- Posting (or threatening to post) other people’s personally identifying information (“doxing”).
- Personal insults, especially those using racist or sexist terms.
- Unwelcome sexual attention.
- Advocating for, or encouraging, any of the above behavior.
- When we disagree, try to understand why. Disagreements, both social and technical, happen all the time and LLVM is no exception. It is important that we resolve disagreements and differing views constructively. Remember that we’re different. The strength of LLVM comes from its varied community, people from a wide range of backgrounds. Different people have different perspectives on issues. Being unable to understand why someone holds a viewpoint doesn’t mean that they’re wrong. Don’t forget that it is human to err and blaming each other doesn’t get us anywhere. Instead, focus on helping to resolve issues and learning from mistakes.
[llvm-dev] I am leaving llvm
Rafael Avila de Espindola via llvm-dev llvm-dev at lists.llvm.org
Wed May 2 09:37:41 PDT 2018
Summary:
- Previous message: [llvm-dev] [GSoC 2018] Implement a single updater class for Dominators
- Next message: [llvm-dev] I am leaving llvm
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
I am leaving llvm effectively immediately. I am sorry for any
inconvenience this may cause.
Practicalities:
I can unsubscribe myself from the email lists and I disabled email
notification on bugzilla and phabricator. Could someone please disable
my account on phabricator and delete my svn access? Thanks.
The long story:
I first became aware of llvm during a compiler course at university. I
wanted to write a toy scheme frontend to a real compiler. To my shame
I missed that llvm had a mem2reg pass and selected gcc to avoid having
to compute ssa form myself.
After contributing a few patches to gcc it was clear that the frontend
interface needed some cleanup. At the time llvm was being considered
as a potential new gcc architecture and the idea of a well defined IR
with a textual representation was a revolution.
On my first job (indt) we were using arm cpus and I was able to sell
the idea of starting an llvm backend for arm. My first commit was on
May 14, 2006. I am incredibly grateful to both indt and the llvm
developers for trusting and helping such an inexperienced and unknown
developer with such a large task.
It is only in May 2007 in the dev meeting that I got to meet the other
developers in person. It was an incredibly fun event and people were
as friendly in person as on the list.
In the next few years I was working at google. First as an sre and
then a compiler developer on gcc. During that time I kept llvm as my
20% project as much as possible. Working on it was always a refreshing
experience. It was far easier to change and far less political than gcc
at the time.
My opportunity to be back full time on llvm came with portable native
client (pnacl). They needed to be able to emit elf objects from llvm ir
and so I went to work on elf support for mc.
Unfortunately another job change (mozilla) made llvm a side project
again after that. I still managed to contribute to llvm/clang as I
helped mozilla transition away from gcc 4.2 on OS X.
It is only about 5 years ago that I started working on llvm full time
again. The big item this time was elf support in lld. I was really
excited when Rui posted a new design for a coff linker and did my best
to find a corresponding design for elf.
Unfortunately the last few years haven't been the same. On the
technical side llvm now feels far bigger and slower to change. There
are many incomplete transitions. That, by itself, would not be
sufficient reason to leave. llvm still seems better than the
competition and lld itself is still awesome.
The reason for me leaving are the changes in the community. The
current license change discussions unfortunately bring to memory the
fsf politics when I was working on gcc. That would still not be
sufficient reason to leave. As with the code, llvm will still have the
best license and if the only community change was the handling of the
license change I would probably keep going.
The community change I cannot take is how the social injustice
movement has permeated it. When I joined llvm no one asked or cared
about my religion or political view. We all seemed committed to just
writing a good compiler framework.
Somewhat recently a code of conduct was adopted. It says that the
community tries to welcome people of all "political belief". Except
those whose political belief mean that they don't agree with the code
of conduct. Since agreement is required to take part in the
conferences, I am no longer able to attend.
The last drop was llvm associating itself with an organization that
openly discriminates based on sex and ancestry (1,2). This goes
directly against my ethical views and I think I must leave the project
to not be associated with this.
So long, and thanks for all the bugs,
Rafael
[1] http://lists.llvm.org/pipermail/llvm-dev/2018-February/121161.html
[2] https://www.outreachy.org/apply/eligibility/
https://lists.llvm.org/pipermail/llvm-dev/2018-May/122926.html (https://archive.fo/2Mg0j)
https://lists.llvm.org/pipermail/llvm-dev/2018-May/122929.html (https://archive.fo/LxNmw)
https://lists.llvm.org/pipermail/llvm-dev/2018-May/122928.html (https://archive.fo/3zLCF)
I feel exactly the same way about the CoC. The whole CoC idea is just a
bullshit that brings discord in open source projects.
I haven't seen a project that adopted a CoC and had no members leaved after
that.
https://lists.llvm.org/pipermail/llvm-dev/2018-May/122934.html (https://archive.fo/UVKsL)
4/g/ https://boards.4chan.org/g/thread/65775717 (https://archive.fo/cXIIU)
Phoronix forum: https://www.phoronix.com/forums/for...s-quits-development-over-coc-outreach-program