This one is something that were brought up a lot by developers including me who are very weary about corporations profiting off of our work for free and this basically put us off from contributing to open source in general.

We get a bunch of dialogues about this such as:

Developers like me: “Many of us who create are concerned about our work being exploited. The possibility of corporations profiting from our open-source contributions without giving back to the community disincentivizes us from participating in such endeavors.”

Open-Source Advocates: “The AGPL exists to mitigate such concerns. It requires derivative works to also be open-source.”

Developers like me: “While I appreciate the intention behind AGPL, there is a loophole - a ‘condom code’ if you will. Even though Linux Kernel prevents such strategies by refusing to merge these changes and that it’s difficult for a singular corporation to force an adoption of a forked version of Linux Kernel, a corporation can fork our much smaller project however and introduce such legal bypass to the copyleft restrictions. This bypass can be justified by them under the guise of extending the software’s capabilities with a plugin interface or an interprocess communication protocol layer, similar to how PostgreSQL allows User Defined Functions. However, I must caution that I’m not well-versed in the legal intricacies.”

When bringing up on non-commercial clause for licensing

Open-Source Advocates: “Disallowing commercial use of your project contradicts the principles of open-source.”

Developers like me: “Well, then perhaps we need a new term, something like ‘Open Code Project’. We can create projects that encourage collaboration and openness while also restricting commercial exploitation.”

So I created this post, because we do need to discuss on a path forward for Open Source in general knowing that corporation can shirk around this restriction and discourage developers like me from participating in open source or open code projects.

Edited to add:

I really want to thank you all for discussing a rather contentious topic and adding your own thoughts to this. I really appreciate everyone’s thoughts into this. I clearly have a lot to do on researches.

  • spicy pancake@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    1 year ago

    Isn’t the ultimate issue enforceability? For a dev to be awarded some of the profit made off an open source project:

    1. A whistleblower would have to discover, gather, and publish evidence that the software was being used to generate profit
    2. The dev would have to win a court case against the company

    It would be fuckin rad if that happened and a dev got a huge payout and a legal precedent was set. But it’d be more rad if we didn’t live in a society where this was an issue in the first place :[

  • agrammatic@feddit.de
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I basically take the position “you need a different, non-confusing term”. Open Code is not such a term.

    My view is shaped from the cultural realm more so than the software side, but I think the concern at the centre of it is transferable: it becomes extremely messy to capture the desired acceptable uses in the legal wording of an enforceable license. The outcome is that every use will have to be individually authorised.

    I was helping run and occasionally held the editor role of a leftist magazine which we decided to make Free Culture under CC-BY-SA. Content using the Non Commercial clause gave us such headache, while even though we did not charge for the magazine nor we ran adverts, we accepted and strongly encouraged donations from our readers. That money went to pay off the printing costs (the NC clause already has a problem with that, but we assumed that would still be defensible), but the rest was also invested in other endeavours like public events, or eventually helping fund a community centre.

    At that point, it didn’t matter if creators with NC works released them under a supposedly free license. Our -in our opinion- non-for-profit use was still so tainted with money changing hands, that we still needed to seek their consent and get a written permission on top of the original license. At the end of the day, it was the same as working with All Rights Reserved works, where we get a special license from a sympathetic creator. The NC clause solved nothing for us.

    That part is, I believe, the same with software licenses. We will end up having to get 1:1 license agreements for so many things because the new anti-commercial licenses will not be able to predict all the scenarios which are “false positives” for the anti-capitalist software developer (as in, some desirable re-uses will be blocked by the license, and individual licensing agreements will be needed often).

    My focus would be to fix the loopholes that go counter to the copyleft spirit in AGPL, if such loopholes are identified, and perhaps get a more reliable organisation handle the AGPL definition in the future.

  • Lionir [he/him]@beehaw.org
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I think the biggest con with this kind of license is that it also means neither you nor the collaborators can try to make a living out of it. Such a type of license forces entirely hobby work.

    The cost of maintainership of the project and the fact that it may exclude people that don’t have the privilege of being able to contribute in their free time are both things that concern me quite a bit when you remove all commercial usage.

    • TheTrueLinuxDev@beehaw.orgOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      1 year ago

      From what I understood about the copyright law is that you could create a separate license apart from non-commercial license and you could still sell a commercial license (if all contributors agreed to it, CAA/CLA agreements been signed, or some other agreements in place.) A project can have multiple licenses. Please correct me if I’m wrong however.

      • Lionir [he/him]@beehaw.org
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        Yeah, that’d be the only way to do this but it also means the project can change the license at any time. As an outside developer, I would probably not want to rely on a project where it can go fully closed source potentially at any time.

        It’s also worth noting but if you have a non-commercial license, you will also be incompatible with any GPL license.

  • nfriedly@kbin.social
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    I’ve worked at more than one job where I was told it was OK to use MIT, or Apacje-2.0 licensed things, but to not touch any GPL or AGPL software.

    So, even though there wasn’t any non-commercial clause in the license, it’s copyleft nature led to that effect at those businesses.

    In general, I like the balance that the GPL & AGPL strike - commercial use is allowed, but the company has to give back. The “condom code” thing that you mentioned is certainly less than ideal. I would prefer that businesses open up their full codebase. But, I think the more likely scenario is that they just don’t use any open source at all (or they use it and violate the license!) I’d prefer condom code over either of those possibilities.

  • Prof. Sweetlove@beehaw.org
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 year ago

    Contributing to open source projects is pretty much just altruism.

    If we’re talking about protection of people integrating open source code in their proprietary code we’ll always have issues. It doesn’t matter if we declare our projects under GPL, AGPL, LGPL, CC or whatever, unless they do shoddy work, we won’t be able to know what code snippets, libraries or frameworks they’re using when source code isn’t disclosed.

    People that want to be assholes will always be assholes. If you feel like giving back, contribute to an open source project. If you don’t, don’t. But making it about evil corporations is a bit meh. Even a company like Amazon is actively contributing to improving Java, offering the Amazon Corretto JDK for free. So the path forward may just be trying to be the change yourself, and making sure the company you’re working for is also giving back somehow.