Hacker News new | past | comments | ask | show | jobs | submit login
LLVM Foundation Granted 501(c)(3) Nonprofit Status (llvm.org)
227 points by ingve on Aug 20, 2015 | hide | past | favorite | 47 comments



Would be interesting to read some more details about how this got through, and what the pitfalls were, along with solutions to them. As I understand it, the main tension is that things that look more like industrial consortia, developing common technology primarily for the benefit of an industry, don't qualify as charities, though they may qualify as other kinds of nonprofits. For example, the Khronos Group, steward of OpenGL, is an industry consortium and not a charity. While organizations primarily aiming to educate and serve the general public, rather than primarily to improve the technology or standards in an industry, can be charities. LLVM as a project seems—to a non-lawyer—like it could go either way, since it has elements of both types of goals.


The Apache Software Foundation is also a 501(c)(3). To keep that status, we have to be very careful about maintaining vendor independence. We are constrained on what we can do with donations, and we must ensure that our projects do not unduly privilege any commercial actor -- they can't use us to fund activities which would ordinarily be taxed.

Consortiums are more at home in 501(c)(6).


It's madness that the Apache Foundation, the charter of which is absolutely unquestionable, must tread lightly, while the Church of Scientology enjoys (albeit different) tax-free status no matter what they do.


Can we just have a giant open-source religion with a mission like: "Really useful software should be open source if possible" and then have various "chapters" that individually manage the projects? So we could have the Mozilla chapter and the the Apache chapter? The various licenses would be like religious differences.


Considering http://www.ourladyofperpetualexemption.com is legal[0] and the requirements for a church John Oliver listed during his show[1][2] are not exactly stringent, it would probably work.

[0] which you know because the phone number is 1-800-THIS-IS-LEGAL, it's a real phone number too: https://soundcloud.com/user-950117376-873717325/outgoing-cal...

[1] https://www.youtube.com/watch?v=7y1xJAVZxXg

[2] straight outta the IRS: http://www.irs.gov/Charities-&-Non-Profits/Churches-&-Religi...


> It's madness that the Apache Foundation, the charter of which is absolutely unquestionable, must tread lightly, while the Church of Scientology enjoys (albeit different) tax-free status no matter what they do.

Churches have generally the same substantive rules as other 501(c)(3) charities (the rules are tied to the exemption category, and 501(c)(3) is one category) , but the IRS is procedurally restricted in actually enforcing those rules when it comes to churches. [0]

[0] http://www.irs.gov/Charities-&-Non-Profits/Churches-&-Religi...


AFAIK the LLVM Foundation's primary operations are organizing LLVM developer conferences, which seems like it could be justified as educational undertaking.


I have an open source project that's in an early stage, and I'm trying to figure out whether structuring it as a nonprofit is a good idea. I'm quite curious to hear more about the reasoning behind this decision as well.


Creating your own foundation is a huge amount of work. I think you would benefit from doing this research, and I'm not going to tell you "don't do it" because it won't be convincing, but I predict that in the end you will not choose to start a foundation.

There's a chapter in Van Lindberg's Intellectual Property and Open Source on this topic. (It ends with a discussion of umbrella foundations like Apache, Eclipse, Software Freedom Conservancy.) Check it out: http://www.amazon.com/Intellectual-Property-Open-Source-Prot...


I've never thought of a nonprofit as a foundation. Are they equivalent?

The primary appeal for me as a nonprofit is declaring unequivocally that profit is not the goal of the project, and to facilitate donations to support ongoing development. I am aware of the need to establish a board; I've been a board member on a nonprofit, and I've been involved with nonprofits in a number of other roles as well.

I think of a foundation as an umbrella organization, much different than a small nonprofit. Is there anything fundamentally off about my understanding?


"Foundation" is just a part of a name, in the US at least. There are definite connotations to using Foundation in your name, like those you described, but anyone can use it. Conversely, nonprofits can be of near any side, from a local community entity doing volunteer work, all the way up to big entities like planned parenthood. So, they're not equivalent, and do in fact have tendencies for a large amount of overlap.


Backing your FOSS project with a non-profit organization is a great idea. Creating your own such organization, on the other hand, usually isn't unless you're a very large project (on par with LLVM, Apache, etc).

Instead, consider joining one of the several umbrella organizations that support FOSS projects (including managing donations and legal issues), such as Software Freedom Conservancy (which covers projects like Git, Mercurial, QEMU, Samba, Boost, Inkscape, and PyPy), or Software in the Public Interest (which covers Debian, PostgreSQL, ffmpeg, LibreOffice, MinGW, Arch, freedesktop.org, and others).


I would like to add the Free Software Foundation, which covers Octave, gcc, Emacs, Mediagoblin, and the GNU Scientifc Library.


why not join an existing umbrella organization?


This foundation is the best thing to have come out of GPLv3. Cos of it Apple had to support LLVM which has made compiler research and quality increase by leaps and bounds. Thanks to the authors of GPLv3!


What is the use of better compiler technology if you are prevented from modifying your devices and limited to running "approved" applications?

I would rather have freedom over speed, especially when the standard phone today is far more powerful than the computers onboard the Apollo 11.


I agree that freedom is important. That's why I like LLVM: it gives me practical freedom to do research on analysis and transformation of actual code. Before, you were legally free to do this, which was a good starting point to be sure, but in practice your options were fork GCC or write and maintain a modern C++ compiler from scratch, either of which would be a high-end project by itself and neither of which would be feasible as a secondary project alongside whatever you were actually trying to do. As for the locking down of devices, I agree this is a problem but I don't believe the causes and potential solutions have anything to do with GCC versus LLVM.


No license is going to fix your issue if the device vendor is unwilling. Look at the current state of Android devices. It is using gcc as the default compiler. Even if Apple used gcc they would lock their devices the same way. Compiler is not the reason for this.


Agreed but you implied the GPLv3 was useless and I felt compelled to defend it. GPLv3 does help with tivoisation. That is why corporations dislike it.


What is the use of better compiler technology if I can't integrate it into the product I ship?


And you've reached the heart of the matter - of use to who? GPLv3 tech is of little use to pro-Tivoization organisations & people (hint: it's not the license's fault that your product can't ship it).

GPL: more useful to users of the software. BSD: more useful to corporations, especially those that are pro-closed source/pro-Tivoization


Ah, the irony. It's always the unintended consequences that get you. Though to be fair, Apple opted not to use Linux years ago, and that is still GPLv2. Was it technology politics, or licenses. Only Steve Jobs knows, well and maybe Linus.


Apple opted not to use Linux because they already had the Nextstep kernel and management daemons, which had been in use in high-end workstations for a good long time. A lot of early OS X used Nextstep frameworks under the hood, with software like Netinfo used into the 10.4 days.


"Basically, Jobs started off by trying to tell me that on the desktop there were just two players, Microsoft and Apple, and that he thought that the best thing I could do for Linux was to get in bed with Apple and try to get the open source people behind Mac OS X," Torvalds wrote.

I disagree with your oversimplification. Apple didn't care about the marketshare of NextStep, bc it was basically non existent. What they needed was a new OS base to start from, but in reality the best thing they got in that deal was Jobs. Next was nice, OSX has nearly completely different kernel, and honestly, who wants the antiquated BSD toolset compared to GNU?


antiquated BSD toolset

As if BSD development ended?


BSD development hasn't ended, but when was the last time Apple refreshed the userland from upstream?


Well, just a few days before, in the 10.10.5 update of OS X, Apple updated many userland utilities from upstream. This includes apache, curl and python. (https://support.apple.com/en-us/HT205031).

But you are right in general. Such update is only once in a blue moon.


Which is fair enough to gripe about, but with ports or homebrew it's hardly an issue these days.


It just goes to show how many Mac OS X users care about CLI.


I'm not sure there's much of a correlation there. Most engineers using OS X (a group that's at least as large as Linux-using engineers) use the command line on a regular basis; I think it has more to do with the fact that even a dated *nix userland has 90%+ of what the majority of engineers need.


What does it take to get 501(c)(3) nonprofit status?

Do you think we can do it if we want to make the Qbix Foundation around our open-source platform?


It requires you fit into one of their accepted categories and about 8-10 months normally. If you expedite it, it may take as little as 2-4 months.

I was able to get mine done in about 3ish months.


Can you apply with a NEWLY formed organization?


So apple can now count money they pay to work on their compiler as a tax deduction?


Companies don't take tax deductions the same way as individuals. For individuals, charitable donations are made with pre-tax money. So if you pay taxes at a 33% rate and give $100 to the EFF, it's $67 of your regular post-tax income you're contributing, and $33 of what would otherwise be tax revenue.

For companies, essentially all expenses are deductible, and they pay corporate tax on what is left over. Corporate taxes are on profits, which are revenues minus expenses. So, there is no advantage to Apple or any other company in providing funding to a 501(c)(3) vs. a 501(c)(6) trade group or a consulting firm.

And, I doubt that LLVM will be raising that much deductible money from individuals. But, there is also a branding and marketing aspect to tax status, separate from the actual financial implications.


That was always a tax deduction - it's business labor.

They can now deduct additional (donated) funds paid directly to LLVM. As would every other company who wants to see LLVM flourish.


As can Google, Intel, the mesa project, and a lot of other donors and contributors. As much as certain people would like for you to believe otherwise, llvm is far, far bigger than any one company.


What he said. LLVM these days is huge.


It hasn't been an all Apple show for quite a while. If you look at the past meetings on http://llvm.org, the first few mostly had speakers from Apple and academia, but for instance http://llvm.org/devmtg/2010-11/ (November 2011) already has speakers from Google, AMD, ARM, Sony Pictures and Ericsson Research.


It always was a tax deduction for Apple. This makes it a tax deduction for companies that aren't contributing paid labor.


It's not apple or apple's compiler, just because Apple happens to use it in presentations and press :)


Wikipedia lists Apple as Clang's primary developer and Chris Lattner, the primary developer behind LLVM, is employed by Apple. I agree with you though, it's not Apple's compiler.

// My bad; Wiki calls Lattner the "primary author," not "primary developer."


LLVM has hundreds of developers these days. Chris wrote a ton of the initial code, but he's no longer the "primary developer". The project's big enough now to no longer have a primary developer.


Where ever I check, Chris is listed as lead/director for the llvm project. Isn't this exactly like the position Linus has for the Linux project?


I think there's a big difference between "lead/director" and "primary". I wouldn't ever call Linus the primary developer of Linux (well, at least not after the early '90s) but "lead" sounds much closer to right.


I don't think he really considers himself either at this point, to be honest.

He's just a member of the board of the foundation.


Correct. If anything, I'm a founder. LLVM and Clang are much much larger than my own contributions, and I haven't been particularly active lately. That said, I have contributed a lot of code. In LLVM for example, about 20% of the total commits to the project are mine: https://www.openhub.net/p/llvm/contributors?query=&sort=comm...

Luckily, the other 80% are ripping out my terrible code and replacing it :-)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: