this post was submitted on 02 May 2025
85 points (97.8% liked)

Programming

20985 readers
65 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 2 years ago
MODERATORS
 

It seems people have a hard time understanding the implications of licenses, so I have written a something to help with that.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 39 points 1 month ago (17 children)
  1. AGPL. Strictest. You want a strict license. Don't let people take advantage of you. I see no good reason to pick GPL when AGPL exists.
  2. LGPL. If you want people to be able to use it (but not modify it) without their code having to be FLOSS as well. Still quite strict relatively with everything below.
  3. Apache. Permissive license. If you really want a permissive license, this is the one to go for.
  4. MIT. Permissive but less explicit. Okay for super short code.

Avoid at all costs CC0. CC0 explicitly does not give patent rights. MIT implicitly does.

[–] [email protected] 11 points 1 month ago (8 children)

A good reason to pick GPL is if you want to allow GPL software to integrate yours and you don't care that much about the AGPL clauses (e.g. because your app isn't a server).

CC0 might be a good fit for trivial template repos where you don't want to burden downstream projects with having to include copyright notices.

[–] [email protected] 3 points 1 month ago* (last edited 1 month ago) (2 children)

Absolutely not! Avoid CC0! Stop spreading bad information. If you want a public domain dedication with fallback permissive license the best choice is (sadly) The Unlicense. It is the only public domain dedication with fallback permissive license approved by both FSF and OSI. It's unfortunate because The Unlicense is still a crayon license.

If you don't want to burden some stream projects with including copyright notices, just don't enforce it if you find people who forgot.

https://www.gnu.org/licenses/license-list.html#CC0

If you want to release your non-software work to the public domain, we recommend you use CC0. For works of software it is not recommended, as CC0 has a term expressly stating it does not grant you any patent licenses.

Because of this lack of patent grant, we encourage you to be careful about using software under this license; you should first consider whether the licensor might want to sue you for patent infringement. If the developer is refusing users patent licenses, the program is in effect a trap for users and users should avoid the program.

[–] [email protected] 1 points 1 month ago (1 children)

"just don't enforce it" probably isn't enough for most companies and projects

[–] [email protected] 3 points 1 month ago* (last edited 1 month ago)

If your company won't let you use MIT licensed software I don't know what to tell ya. If your company won't let you use MIT code, which FSF and OSI endorse, but will let you use CC0 code, which FSF and OSI do not endorse, then I really don't know what to tell ya.

load more comments (5 replies)
load more comments (13 replies)