6

As far as I understand, the Apache 2.0 license is a fairly permissive license. It seems to me as if the only difference between the Apache license and other licenses (such as the MIT license), is the inclusion of a patent clause.

From Against what does the Apache 2.0 patent clause protect? and Interference of Software Patents with Free & Open Source Software, it seems to me as if the inclusion of the patent clause does two things:

  • Actually let you use the patent, if any are involved
  • Provide a sense of relief to the end-user, as you now have a right to use the patent.

From my perspective, #1 doesn't help. I'm 16 and I don't think I'll ever want to get involved with stuff like patents. #2 seems to not affect me directly, but creates relief for my end-users, which is beneficial.

However, does the Apache license provide any benefits, to me, or my end users? While the Apache license is a fairly simple and trivial license relatively speaking, what about patents makes the Apache license so advantageous over other permissive licenses?

4
  • It seems you answered your own question with #2... Commented Feb 24, 2016 at 2:20
  • @congusbongus I'm kind of inclined to agree, but it feels, well, half-answered. I'm sure that there are more ways that the clause would benefit, even if it was the project.
    – Zizouz212
    Commented Feb 24, 2016 at 2:22
  • @congusbongus In fact, you just gave me a brilliant answer. You are a genius.
    – Zizouz212
    Commented Feb 24, 2016 at 2:23
  • @Zizouz212 You may not want to get involved with patents but if you ever do any software work in a consumer product company you probably will end up doing so. I don't approve of software patents in principal ... but I still have three of them
    – kdopen
    Commented Feb 24, 2016 at 21:02

1 Answer 1

7

Thinking of this a bit more, it benefits large projects, and sort of gives a clear answer to why many companies open source projects use the Apache license (Apple's Swift programming language comes to mind). The patent clause helps the health of the project, not necessarily the end users, or the maintainers (which was my perspective).

Many large open source projects have tons of activity. With so much activity, you'd naturally get a lot of pull requests and contributions from various users. Even if I don't have any patents, these contributors may have patents, it gets a patent license from them as well, assisting the "relief" aspect that I noted in the question. This is enforced by §5 of the license:

5. Submission of Contributions. Unless You explicitly state otherwise,
  any Contribution intentionally submitted for inclusion in the Work
  by You to the Licensor shall be under the terms and conditions of
  this License, without any additional terms or conditions.
  Notwithstanding the above, nothing herein shall supersede or modify
  the terms of any separate license agreement you may have executed
  with Licensor regarding such Contributions.

Therefore, any contribution, unless otherwise stated, has to come with a patent license. This benefits the health of the project.

4
  • Just make sure to state that any contribution must be made under the same license as the project.
    – vonbrand
    Commented Feb 24, 2016 at 14:15
  • @vonbrand I don't think it's necessary to say "Oh! Your contributions have to be part of the license," especially in Apache's case. I would probably have to wave my hands in the air saying the project is under the Apache license - but I don't think I need to engage in a full out license understanding session, because if I were wrong and if someone were to go against me, it increases the probability of myself being liable.
    – Zizouz212
    Commented Feb 24, 2016 at 22:52
  • better safe than sorry.
    – vonbrand
    Commented Feb 24, 2016 at 23:22
  • 1
    Good point. If one were to start an open source project with the aim of getting maximum users, developers, testers, etc. (aka the ecosystem), then the Apache license and its patent grant clause seems most beneficial. However, even GPLv3 has a patent grant clause now, so its compatible with Apache in this regard. Commented Feb 25, 2016 at 0:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.