Hacker News new | ask | show | jobs
by webwalker 3544 days ago
You will notice that most new projects all use MIT. Apache 2 hasn't been used for anything new in the last year+.
3 comments

Have some examples?

The MIT license is problematic with software patents.

I see some projects moving to Apache2 for that reason (one prominent example here is Rust. They moved to an MIT/Apache2 dual licensing model).

Here are some that I found that are all created in that window: - https://github.com/Microsoft/Docker-PowerShell - https://github.com/Microsoft/malmo - https://github.com/Microsoft/projection-grid - https://github.com/Microsoft/HoloToolkit-Unity - https://github.com/Microsoft/pxt - https://github.com/Microsoft/BotBuilder - https://github.com/Microsoft/elfie-arriba - https://github.com/Microsoft/team-explorer-everywhere

I could have found more, but its a big org. Any examples I found that used other licenses where that way because they where related to something else that used a previous license (i.e. all TypeScript stuff is Apache2, hence any new TS is still be Apache2 for consistency).

What is the problem with the MIT license and patents?

The MIT license grants explicit rights to deal in the software without restriction.

A copyright license is not necessarily the same as a patent grant... Apache 2 does contain a patent grant, and an even bigger nuclear deterrent similar to Facebook's separate grant with MIT.
The MIT license is not a copyright license (though, copyright is claimed). It is a license for unrestricted dealings in the software subject to certain conditions (no warranty or fitness, appropriate notices given, etc.).
Not true. In the Android world, Apache 2.0 is on everything.
Example?
Not sure the easiest way to get a list of the top Android libraries on GitHub, but here's a sample of some that are Apache 2.0: https://github.com/ReactiveX/RxJava http://square.github.io/retrofit/ http://jakewharton.github.io/butterknife/

FWIW, my Android app's codebase has 18 Apache 2.0 dependencies, 1 MIT and 2 BSD. Maybe since the large libraries mostly use Apache 2.0, the smaller Android devs just follow suit?

Just about every Puppet module is published as Apache 2, it's the go to license in our ecosystem.