• sbeak@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    23
    ·
    2 days ago

    They are needed to tell users and developers what they can do with the project and whether they can change the source code, redistribute it, etc. Having no license by default means others can’t look at your code or modify it in any way, as the terms on how to do so are not defined!

    There are several licenses that are used for open-source projects. Generally, they are grouped as either permissive licenses (like MIT) or copyleft/protective licenses (like GPLv3). In a nutshell, permissive licenses gives the developer (or, in the case of commercial use of open-source code, the company) more freedom as the code can be used in any kind of project, including proprietary ones. In contrast, copyleft licenses aim to give users more freedom by ensuring that the code can only be used in projects that also use an open-source license.

    There are other elements to licenses too, like how code used should be attributed, whether you are allowed to fork the project, additional copyleft restrictions for SaaS applications (see AGPLv3), loosening of copyleft restrictions (see LGPLv3), etc.

    • sbeak@sopuli.xyz
      link
      fedilink
      English
      arrow-up
      6
      ·
      2 days ago

      There’s a pretty big debate on permissive vs copyleft licenses. The advocates for the former believe that fewer restrictions on how you can use software is better, while those on the side of the latter believe that use of open-source code by proprietary software is harmful to the open-source movement.

        • sbeak@sopuli.xyz
          link
          fedilink
          English
          arrow-up
          4
          ·
          1 day ago

          I don’t think that’s a good comparison. The ideas of “liberalism” (usually focusing on the rights of the individual) and “leftism” (usually focusing on social justice) are so broad that they aren’t very good descriptors.

          A more suitable analogy would be a free-flowing river vs a dam. The free river allows all the water to pass through with no restriction, while the dam controls how much water can flow, being more limiting while also offering many benefits (e.g. preventing / reducing the impact of floods)

          This is similar to permissive licenses letting any project, open-source or not, utilise their code with no real restriction aside from an attribution requirement for some licenses, while copyleft licenses add additional restrictions, like a dam, that aims to support the open-source movement.

          • sbeak@sopuli.xyz
            link
            fedilink
            English
            arrow-up
            2
            ·
            1 day ago

            Both permissive and copyleft licenses have their place, just as how not all rivers need to have dams. And either are better than the closed proprietary licenses, which in this analogy would probably be a still, perhaps frozen, lake not connected to any other rivers, as the code cannot be redistributed or modified legally.

        • forestbeasts@pawb.social
          link
          fedilink
          arrow-up
          1
          ·
          1 day ago

          Nah, not really.

          Hi, I use a permissive license for my stuff so that other open source devs can use it in their projects even if they disagree on the details of licensing opinions.

          That doesn’t make me some kind of liberal/centrist/“not a Real Free Software Person™”.

          Sure, that also gives companies the ability to use it in proprietary stuff, but they’re not gonna be interested in it and there’s a good chance they’d just blatantly ignore the license anyway (see: the “AI training” shit).

          Anarchism vs. communism might be a better analogy.

          – Frost