Lists tend to attract the "proscription" prefix, when in a political context.
Also, if you support the stance, you arguably don't want to make it easy for Russian/Belarusian users to avoid software, you want to maximize their inconvenience - which you do when they invest time into learning something and then find out they are technically not allowed to use it in production.
This said, it's all theatre anyway - I would bet good money that most Russian businesses already didn't care about respecting FOSS licenses, considering the infamously lax attitude about copyright enforcement in that country (and in China and Iran). So adding that sort of clause will stop absolutely no one, in practice, and I bet the authors will never even try to sue anyone in Russia (or anywhere else with some sort of jurisdiction over Russia, like the WTO) for infringing it.
That makes zero sense. Of course licenses regulate use. Apache2 license text literally starts with "TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION"
Only iff the copyrighted work was "sold" and not "licensed". There has been a huge effort on the part of copyright holders to avoid "selling" things, and make "sold" software legally unusable without a corresponding license agreement. Once you exit the realm of a "sale", there are very few restrictions on what you can require of your licensees. Freedom Zero restrictions are absolutely on the table, as well as curtailing fair use. And these license restrictions are generally considered watertight - you are not going to convince a judge that a license agreement should be reconstrued such that you get the permissions you want without the restrictions the copyright owner added to them.
That being said, your average EULA has about 4000x more clauses in it than it needs to be, because they don't expect anyone to read them and those clauses are rarely, if ever, enforceable. FOSS licenses tend to be short and easily readable because they are written by people who want you to know what they entail. Proprietary EULAs tend to be forked from some internal corporate list of legal requirements that get copypasted everywhere.
My favorite example of this is the clause in iTunes - a music store - that prohibits you from designing nuclear weapons with it. Second favorite is the LICENSE file included in all Swift Playgrounds example code, which has about 2 actual provisions Apple cares about (don't resell the sample code in the app and don't hack people with Swift Playgrounds), and a hundred clauses copypasted from the iPadOS EULAs that I've already agreed to. As far as I can tell, nobody at Apple is actually going to care if an individual user does something that technically breaches the EULA.
> My favorite example of this is the clause in iTunes - a music store - that prohibits you from designing nuclear weapons with it.
I didn't believe you.... then I looked it up
Sub bullet (g)
" You also agree that you will not use these products for any purposes prohibited by United States law, including, without limitation, the development, design, manufacture, or production of nuclear, missile, or chemical or biological weapons."
I have updated the wording in README - https://github.com/terraform-aws-modules/terraform-aws-eks#a... . The project was and will be under the same Apache 2 license. You can continue using it as nothing is happening in Ukraine. I will never stop you or anyone else.
As much as I hate what Russia is doing, I’d hate even more for software to come under political purviews.
If an author of a library chooses to apply political condition(however justified they may be), then the software is simply not free by definition.
I’m neither Russian nor Ukrainian. I cannot turn a blind eye simply because it doesn’t apply to me. What if another library that I use apply a license that says “those that look like this cannot use my software from now on”?
> I’d hate even more for software to come under political purviews.
Really? Making software free is just about as political as it gets.
Restricting that freedom, as happens here, is equally political. I guess you just don't this special kind of politics in your software.
I think you are confusing it with the free software movement. Their idea of proprietary software being "evil" is why they don't get as much support as compared to open source.
but software licenses are related to the field of software and freedom _within_ software.
I'd hate to say it, but including other political ideologies into the software license is making it more political. If the author of the software wants to, he is within his rights, but i think it's the wrong platform to try to voice his opinion.
A piece of software is a platform - but using this platform (granted to the author by the participation of a community) to further a different, unrelated ideology could be considered abuse of power. May be this war is extenuating circumstances - and understandable. But i'm concerned about the slippery slope.
Realistically a license change is not going to affect the course of the war, nor make putin reconsider. I argue that the effort is only going to inconvenience their users, without actually making a true change.
It may be better to ask for donations, etc, rather than changing the license as a political statement.
> A piece of software is a platform - but using this platform (granted to the author by the participation of a community) to further a different, unrelated ideology could be considered abuse of power.
I disagree, I think using any platform you have to spread a message that is important to you is a GREAT use of said platform.
Anyone who thinks using your platform regardless of the context is bad are people who feel inconvenienced, threatened or annoyed by said message in which case, congratulations you successfully achieved your goal.
If Colin Kaepernick didn't use his platform as an NFL player and instead did something else like I don't know, stood outside his political offices holding a sign, would have had dramatically less impact and probably wouldn't have gone anywhere, but he used his platform and now look, we're still talking about it, black lives mattering, and all the messages he was intending to send what 4 years later?
> I think using any platform you have to spread a message that is important to you is a GREAT use of said platform.
you think that because the message resonates with you. You happen to agree with the ideology being presented.
If you truly are one who would allow such political messages to be sent via an unrelated platform, then you are also implicitly in agreement to acts of terrorism. After all, the terrorists are just using such platforms to spread their political message too. Of course, i can hear the rebuts - that terrorists aim to kill, and they don't deserve to say spread their opinions that way. But who's to judge? Who's to say that it is not right for them to do it, but for some inexplicable reason, it is right when the opinion being said is in line with your own?
I'm not one for making the world any more political than it already is. I disagree with the russian invasion of ukraine, but any action i take would be via my gov't - e.g., my taxes go towards paying for aid to ukraine, or charities donating.
>I disagree, I think using any platform you have to spread a message that is important to you is a GREAT use of said platform.
I'm curious, do you support the separation of church and state? Public school would be a great platform for Christian principals to spread the good word of God.
I think "open source is political" uses the word 'political' in a significantly different way than stuff like "I'd hate to see more politics in software discussions".
Consider: "Open source is political": the power 'open source' relates to is the power of the licensed software's users to read the program's source code, and to redistribute/modify the program. Insofar as there's a moral vision to it, the idea of a world where users are unable to distribute/modify/etc. their software is worse than a world with open source software.
Whereas, the meta-statement "don't bring politics into discussions" is more like rules-of-engagement for discussion involving a diverse group of people. The 'political' in the statement refers to e.g. moral or ideological points of view. -- "asl2.0, but you have to agree abortion is murder" is 'political' in a different way than "asl2.0, you can't use this software if your name is Jared", because the restrictions itself is about a moral disagreement.
The author is entitled to use whatever license they want, and the community is entitled to a fork if it doesn't violate the previous license. That's all there is to it. the author doesn't owe the community anything, and the community, as long as they respect the terms of the previous license, is free to fork the project and get rid of the new license.
In general, these political stunts eventually reflect badly on their author. Open source is a double edged sword.
Although one thing the author does owe the community is clarity in the license. The PR in question changed the named of the license from "Apache 2.0" to "Modified Apache." If you change the terms of a well known license, like Apache or MIT or whatever, for whatever reason, you should not mislead others into thinking it is an unmodified licensed.
> I’d hate even more for software to come under political purviews.
You would hate a statement being added to README file EVEN MORE than civilians being shelled indiscriminately, entire families shot while waiting in bread lines, and the targeting of war correspondents by a foreign army?
That’s a twisted interpretation of what I wrote. One can be disgusted to a high extent, and then from that baseline even more disgusted by some _added_ on top of it. Just because a despicable thing is happening, one must not justify viewing the whole world through that lens _alone_ and refuse to reason things in other contexts.
As an LGBT person, I fear that efforts like these are noble but empty. Assholes gonna still be assholes, Russia is gonna pirate software [0], and global Terraform users won't notice.
Could this act actually awaken an IT team to the atrocities, in a way that makes a difference?
> "maximal freedom of speech protects vulnerable people from erasure"
It's very easy to say things like this without fully comprehending all of the implications. Here's an example: Google restricted the usage of its own product, Google Maps, in an effort to halt the killing of Ukrainians by Russian armed forces, who were using Google Maps to launch their operations. This directly contradicts your claim.
I don't think there is a tradeoff. Not all actions constitute speech. Supporters of Russian actions should be able to spout off their horrible thoughts, but that doesn't mean companies the need to sell their goods or services to Russia. The two categories of acts aren't the same.
Agree no one should be compelled to sell software to Russia, but the topic at hand is the dangers of normalizing national restrictions in open source licensing. Would you be comfortable with an open source license that bans Jewish users because of the Palestinian conflict?
I avoid online discussions about Israel, but I often hear activists state that American Jewish people are complicit in the Palestinian Conflict if their congregations provide economic support to “Zionist causes” such as birthright and financial aid to North African diaspora. My position is that it’s in the best interest of free software to allow free software to be used by anyone, even people who you hate or disagree with.
I think the resolution of the terraform-aws-eks example that started this discussion is a good one. The maintainer clearly stated his political in the README, but left the license alone without a country specific restriction. This is what I meant by separation between the speech, and commercial or OSS distribution.
> Would you be comfortable with an open source license that bans Jewish users because of the Palestinian conflict?
Comfortable is a loaded term here. No I wouldn't, but I could break that down to: Is it something that a maintainer should ...
* legally be able to do - YES
* consider likely to make a difference in the conflict - NO
* consider to be good for the OSS ecosystem - NO
* consider ethically wise - NO
* still consider an OSS license - NO, but I think one could be constructed that had more generic restrictions against human rights abuses, or use by militaries, or similar general restriction. Would that meet OSI definitions? Not sure I care, but I wouldn't be too concerned even I think it would be better to keep things simple.
It is worth noting that OSS distributed from the US as part of sale, still is subject to EAR. While we benefit from having a global community of OSS, local laws still apply in any number of circumstances.
It sucks to have to agree with someone that you don't fundamentally agree with but I think the author of the PR is correct. This is a modification of the Apache license and while I appreciate and support their stance, it does seem to mean that the license is non compliant. I support anyone's desire to protest things (no matter which side I'm on) but you can't just make up your own rules.
How exactly do you fundamentally disagree with the author of the PR? He literally did no statements beyond saying that this is not an Apache License anymore.
Thanks for the explanation. English is not my native language and I read the comment as if the commenter had fundamental disagreements with the author of the PR but had to agree with him on this particular point about license terms.
You're right. I disagree with those who would not accept the license modifications as truth because I support them but the author of the PR did not state their political stance.
"You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License." [0]
Sure, but that doesn't mean he can redefine terms. He can't both change the license and claim it's compliant with that license. That contradiction exists regardless of his ownership of the project.
Yes. "I don't want politics in X" (software, video games, etc) mean "I support the status quo" which is by itself a political position - and often a privileged one.
I don't really think it is. I believe free software is natural. Saying free software is political is like saying freedom is political. How is being against oppression political? Wouldn't that just be considered natural, and the people saying it is a political stance be the ones oppressing trying to make it political?
Do you really need to define freedom? Mark Passio does a great job at explaining freedom and natural law. I'm not saying that people don't make it political, but I do believe there is just a natural state of existence and cooperation that doesn't involve made up systems. Once you want to start making rules that infringes on others natural rights is when things get political.
You are quite literally saying "I want to exist in a vacuum", and that is just not reality.
Let's use a thought experiment. You are the neighborhood's mechanic, and you do small jobs for everybody - bikes, cars, trailers. Now, your next door neighbor has been throwing dog shit on your lawn, started kicking down your mailbox in the morning, set fire to your hedge during the night.
So you say, hey, asshole, I'm not fixing your bikes anymore. In fact, you want people to acknowledge what an asshole your neighbor is when you fix their bikes. But then, nigma1337 comes along, and says, "bikes don't have anything to do with your dispute, you should still fix his bikes, and I don't want to acknowledge anything!", and that's just absurd, man.
That is a very good thought experiment, but i think this situation is more like me, as a mechanic going "Hey toxik, if you want me to continue to fix your bike, sign here that i'm right in my dispute against my neighbor and he is bad", while I agree, i'd prefer not to be dragged into it/reminded of it everywhere I go.
No one is stopping you. If you're engaging with others, and you're using their shit, then you're participating in a thing that's much larger than yourself.
Don't want that? Write your own stuff from scratch and don't think about what's happening in the world.
You're currently demanding the world change to play to your whims. That's not how this works.
I'm just putting out my opinion, I say the exact same thing when politics get brought up at the dinner table, it has its place, right now i just want to have dinner.
You don't know what my "ideology" is, and that is precisely because I didn't push any. A Ukranian developer don't want Russians to use his code, on account of the latter country invading the former.
Anton’s project, Anton’s rules. Simple. You don’t get to choose what license gets applied to his thousands of hours of work just because you want to live in a vacuum, when the reality has his own family under siege by a foreign army.
Furthermore, if you’re going to make grandiose statements about what may or may not become precedent, it would behoove you to learn the word you’re trying to use first.
The International Science Council [1] has a Committee for Freedom and Responsibility in Science that "promotes freedom for scientists to pursue knowledge and to freely exchange ideas, at the same time as advocating the responsibility of scientists to maintain scientifically defensible conclusions, and of scientific institutions to apply high standards." [2] They have published a list of Freedoms and Responsibilities of Scientists[3], the main principle of which is "the free and responsible practice of science is fundamental to scientific advancement and human and environmental well-being."
Reading the list in full, it seems evident that there is intellectual dissonance between the aims of scientific freedom and the aims of the Universal Declaration of Human Rights[4] (which it references). It opposes blocking access to science based on discrimination, which is laudable. However, it also doesn't explicitly oppose science done that supports discrimination, or science done by organizations that support discrimination.
This makes sense when you consider that advances in science like GPS can be used to help you drive to a birthday party, or to guide a missile towards one. Clearly you can't condemn scientific research by itself, as it has too many potential applications for both good and harm, often unknown at the time the research is done.
Similarly, discriminating against research on the basis of "ethnic origin, religion, citizenship, language, political or other opinion, sex, gender identity, sexual orientation, disability, or age" also prevents the free and responsible practice of science, so the list of Freedoms and Responsibilities of course opposes this discrimination. But what if the end result of that science research is used to discriminate against those same people for the same reasons? What does a responsible, ethical scientist do then?
What we can do is oppose the use of science by people with those discriminatory goals, or goals that violate universal human rights. If you know someone is researching genetics in order to popularize Eugenics, there should be no responsibility to continue supporting that research. Similarly, if you believe that not supporting scientific research may help put pressure on a nation that is waging an unjust and unprovoked war which is killing thousands of innocent civilians [in violation of universal human rights], you should have no responsibility to continue supporting said nation's scientific research. In other words, it should be okay to discriminate if you are discriminating against violations of universal human rights.
Considering this, I would propose that one major tenant of any new Open Source license is to discriminate against organizations or nations that want to research, use, or produce science or technology, if that organization or nation is widely considered to be violating universal human rights. This goal has the effect of communicating an ethical red line you must not cross if you want to participate in a global human community, and will be a discouraging factor when nations again consider the potential ramifications of their actions.
Basically, we should use access to collaboration in science and technology as a lever to improve human rights.
edit Ethical minds think alike! Somebody already created a version of the MIT license with this exact restriction! The Hippocratic License[5]: "an Ethical Source license that specifically prohibits the use of software to violate universal standards of human rights, and embodying the Ethical Source Principles." It appears there are many[6] other such licenses.
> if that organization or nation is widely considered to be violating universal human rights
I can list recent violations from both US, Russia and China. So now what? The US has already said they'd prefer to invade The Hague than have a USer trialed there. You need a court to establish what's a violation and what's not. And who should provide the judges?
Ugh. Lookit: it sucks to be forced to say anything at all, whether you agree with it or not. One thing I can say for certain is that my employer (and probably yours) is only into virtue signalling when it's 100% safe, everyone else is doing it and it has zero negative repercussions. I don't get to decide what my employer's stance is on licenses. I guarantee you that many people will end up moving away from these modules, not because they agree with Putin, but because they have to. Nobody wants the hassle or risk of auditing a million different licenses.
I'm an environmentalist. Should I update all my licenses to ban meat eaters, frequent flyers and drivers? Where does this shit end?
I know that. What I'm saying is that most employers are interested in virtue signalling, as long as it's a nice visible logo at a rainbow parade. That's cheap PR. But give them a legal headache and see how long they're willing to keep it up. My point is that many employers (certainly mine) would tell me to find another module or write my own, if they see this.
I have updated the wording in README - https://github.com/terraform-aws-modules/terraform-aws-eks#a... . The project was and will be under the same Apache 2 license. You can continue using it as nothing is happening in Ukraine. I will never stop you or anyone else.
Ugh. As much as I am against the invasion, I absolutely do not want to have to start examining software licenses for obscure political litmus tests. Especially pointless ones like "I believe Putin is a bad dude".
I mean, if we're going to go down this road, then let's actually effect real change and slip some clauses in there with teeth like "no click-through license agreements" or "no pop-up cookie prompts" or "no ad trackers"...
terraform-aws-modules is a community thing, that consists of modules that are thin wrappers around the official AWS provider, that serve very little purpose other than to add a dependency and create problems like this.
Thanks for the downvote and the no-content comment, I guess? I've worked with numerous large Terraform configurations, and the ones that use terraform-aws-modules are harder to maintan, have more churn due to updates of the modules, and are more divorced from the actual underlying cloud resources due to random decisions made by the module authors.
I really struggle to understand the reason for using the modules rather than the underlying resources, except that there are a lot of tutorials and blog posts written based on using the modules.
Maybe you can enlighten me rather than writing a three-letter comment?
> serve very little purpose other than to add a dependency and create problems
You're expressing your opinion as fact in a way that only serves to degrade people who don't agree with you.
Obviously these modules serve a purpose, otherwise the repositories would not have hundreds-to-thousands of github stars/forks, and people would not be arguing about a license change on the front page of HN.
> Obviously these modules serve a purpose, otherwise the repositories would not have hundreds-to-thousands of github stars/forks, and people would not be arguing about a license change on the front page of HN.
Have you worked with the modules in question? If you have, please enlighten me to the obvious purpose that they serve. As I pointed out, I've worked with them extensively, and worked on comparable configurations that avoid them, and they create many problems (the wrappers introduce their own churn due to version updates, and often have mistakes in their interpretation of the underlying resources, etc) while solving virtually none. Several orgs I've worked for actually ban these and similar external modules due to these problems.
It's telling that the only substantive reply I received merely points out the number of stars rather than actually explaining why people should use these wrappers.
Because regardless of that, the naming of the organization and repositories strongly implies that it is managed be a combination of AWS and Hashicorp.
At a first glance, "transitions to non-free license" implies that you now have to pay for it. The default isn't "Well I guess non-free means it's still free but not the OSI definition".
People very often do not read beyond the title.
"Community maintained terraform-aws-modules transition to non-OSI-approved license" would probably be more accurate, but not nearly as click-bait.
It is fine for people to reuse/derive from the Apache license but it is _not_ fine to continue to use the name "Apache" in the license name as "Apache" is trademarked.
I believe this is a changed license as it does not matter whether the change is in another file or not.
It was never my intention to make changes in a license in any way. It would be just wrong to drop 5+ years of my life working on all terraform-aws-modules and betray everyone who have been participating as contributors and users.
If there are questions, please ask here or twitter (@antonbabenko).
I hope you and your loved ones are safe and weathering this this war of aggression as best as possible. I hope your homeland remains free and is able to oust the dictator attacking it.
I commend you for reverting the terms of use change. I also believe that this sort of remaining political statement in a project sets a poor precedent, and diminishes the work. Free software is meant to be open to all. Throwing ideological barbs in the project, however correct and riteous, undermines the project's freedom. I would urge you to reconsider.
As I said earlier, I have updated the wording in README - https://github.com/terraform-aws-modules/terraform-aws-eks#a... . The project was and will be under the same Apache 2 license. You can continue using it as nothing is happening in Ukraine. I will never stop you or anyone else.
PS: It is not just Putin who attacks Ukraine but I don't want to go into this discussion here.
Question: what is "ideological" about the facts stated in the README? Putin invaded Ukraine. Lives are at stake. Being against that is no more ideological than the need for you and me to eat and sleep.
I see at https://github.com/terraform-aws-modules/terraform-aws-eks/c... that you have dropped the additional terms of use. I think that should alleviate the concerns people had about a license change. I appreciate you listening to your contributors and users feedback on this emotional topic.
I wish I can do more to "explain" to users from Russia/Belarus what we experience in Ukraine... maybe not in the most efficient way sometimes but that's how it works
> A condition against torture would not work, because enforcement of any free software license is done through the state. A state that wants to carry out torture will ignore the license. When victims of US torture try suing the US government, courts dismiss the cases on the grounds that their treatment is a national security secret. If a software developer tried to sue the US government for using a program for torture against the conditions of its license, that suit would be dismissed too. In general, states are clever at making legal excuses for whatever terrible things they want to do. Businesses with powerful lobbies can do it too.
That's why I call it "Additional information for ..." and links to wikipedia (not yet blocked in those countries, I guess). It is the same Apache2 license.
While I completely abhor the invasion, I can't help but feeling that the licence (and equally important) accompanying code change - https://github.com/terraform-aws-modules/terraform-aws-eks/b... - feels like a weaponisation of open source, and I think this is a dangerous thing to do. I do think that with change of "additional terms & conditions" to "additional information", it still feels an ethically dangerous place to be.
I would not be happy if a library codifies political statements. What could be next? Conditions that state you agree to vote for/against Trump, that you disagree with homosexuality or are against transphobia. Note, I'm not accusing anyone of having those views neither am I commenting on them, they merely serve as an example of the dangers of discriminating.
Dependencies and supply chain attacks are the big thing - and while dependency scanning and pinning are an important component, but I don't think it is possible to use open source libs at scale without a certain amount of trust. I work on a platform where there are hundreds of teams and thousands of microservices. I'm now trying to think how we can assess the risk of thousands of dependencies and millions of lines of code. Without trust, the only way that's possible is to fork all libs, prevent open source and generally kill off any agility and velocity. My problem is that this weaponisation is killing off trust. It's not about sitting on the fence or taking sides in a war. It's about what open source has achieved over the last 30 years and I think that's now more at risk than before…
The only appropriate response here is for a corporate owner (Hashicorp preferably) to fork the repo just before the license change and to assert that their version is the default, and drive future development there.
The original author is entitled to their opinion and can restrict their own development to a repo with license conditions they define, but it is not reasonable to expect companies to accept non-standard and politically charged license terms. Getting shit done is hard enough and this change will not move the needle on Ukraine/Russia sentiment one iota.
You are asking a corporation to clone "a community-driven project" and maintain it. Ok. There are 2.7K of forks of just this module already if you want to use them.
It is astonishing to me how poor our literacy of software licenses is as a community. Also, reading the comments here, there are two wholly independent things happening that most people are conflating as the same thing.
Software licenses are LEGAL DOCUMENTS. If you are not a lawyer, who has a specialty in this specific area of law, don’t go fucking with them.
1. Fuck Russia. This is the only right answer to the question.
Entirely separately is #2.
2. If you change the terms of a license, it’s a different license. The changed license was not the Apache 2.0 license, and was additionally a breaking change in every sense of the phrase.
I appreciate that @antonbabenko recognized this and fixed it, but these two issues are entirely separate. What Russia is doing is terrible. That is an absolute fact. But the new Terraform variables that were added in that commit have absolutely nothing to do with making the software work in the way that it was intended to, therefore, they do not belong.
This has nothing to do with being anti-politics. I’m very heavily political, and I fully support Ukraine in this case. I also have strong opinions on both “free software“ and also “open source software“, and I apply them at the license level by selecting a pre-existing license without making custom modifications to it.
But things like `var.putin_khuylo` simply don’t belong in the software itself. Nor does it belong in an OSI-approved software license.
126 comments
[ 3.7 ms ] story [ 171 ms ] threadWould be nice to compile a list of them!
Also, if you support the stance, you arguably don't want to make it easy for Russian/Belarusian users to avoid software, you want to maximize their inconvenience - which you do when they invest time into learning something and then find out they are technically not allowed to use it in production.
This said, it's all theatre anyway - I would bet good money that most Russian businesses already didn't care about respecting FOSS licenses, considering the infamously lax attitude about copyright enforcement in that country (and in China and Iran). So adding that sort of clause will stop absolutely no one, in practice, and I bet the authors will never even try to sue anyone in Russia (or anywhere else with some sort of jurisdiction over Russia, like the WTO) for infringing it.
That being said, your average EULA has about 4000x more clauses in it than it needs to be, because they don't expect anyone to read them and those clauses are rarely, if ever, enforceable. FOSS licenses tend to be short and easily readable because they are written by people who want you to know what they entail. Proprietary EULAs tend to be forked from some internal corporate list of legal requirements that get copypasted everywhere.
My favorite example of this is the clause in iTunes - a music store - that prohibits you from designing nuclear weapons with it. Second favorite is the LICENSE file included in all Swift Playgrounds example code, which has about 2 actual provisions Apple cares about (don't resell the sample code in the app and don't hack people with Swift Playgrounds), and a hundred clauses copypasted from the iPadOS EULAs that I've already agreed to. As far as I can tell, nobody at Apple is actually going to care if an individual user does something that technically breaches the EULA.
I didn't believe you.... then I looked it up Sub bullet (g)
" You also agree that you will not use these products for any purposes prohibited by United States law, including, without limitation, the development, design, manufacture, or production of nuclear, missile, or chemical or biological weapons."
https://www.apple.com/legal/internet-services/itunes/dev/std...
This licences requires that I distribute with: all copyright, patent, trademark, and attribution notices, and of course a copy of the apache licence.
it says nothing about additional use conditions in the readme.
If an author of a library chooses to apply political condition(however justified they may be), then the software is simply not free by definition.
I’m neither Russian nor Ukrainian. I cannot turn a blind eye simply because it doesn’t apply to me. What if another library that I use apply a license that says “those that look like this cannot use my software from now on”?
Really? Making software free is just about as political as it gets. Restricting that freedom, as happens here, is equally political. I guess you just don't this special kind of politics in your software.
I'd hate to say it, but including other political ideologies into the software license is making it more political. If the author of the software wants to, he is within his rights, but i think it's the wrong platform to try to voice his opinion.
A piece of software is a platform - but using this platform (granted to the author by the participation of a community) to further a different, unrelated ideology could be considered abuse of power. May be this war is extenuating circumstances - and understandable. But i'm concerned about the slippery slope.
Realistically a license change is not going to affect the course of the war, nor make putin reconsider. I argue that the effort is only going to inconvenience their users, without actually making a true change.
It may be better to ask for donations, etc, rather than changing the license as a political statement.
I disagree, I think using any platform you have to spread a message that is important to you is a GREAT use of said platform.
Anyone who thinks using your platform regardless of the context is bad are people who feel inconvenienced, threatened or annoyed by said message in which case, congratulations you successfully achieved your goal.
If Colin Kaepernick didn't use his platform as an NFL player and instead did something else like I don't know, stood outside his political offices holding a sign, would have had dramatically less impact and probably wouldn't have gone anywhere, but he used his platform and now look, we're still talking about it, black lives mattering, and all the messages he was intending to send what 4 years later?
you think that because the message resonates with you. You happen to agree with the ideology being presented.
If you truly are one who would allow such political messages to be sent via an unrelated platform, then you are also implicitly in agreement to acts of terrorism. After all, the terrorists are just using such platforms to spread their political message too. Of course, i can hear the rebuts - that terrorists aim to kill, and they don't deserve to say spread their opinions that way. But who's to judge? Who's to say that it is not right for them to do it, but for some inexplicable reason, it is right when the opinion being said is in line with your own?
I'm not one for making the world any more political than it already is. I disagree with the russian invasion of ukraine, but any action i take would be via my gov't - e.g., my taxes go towards paying for aid to ukraine, or charities donating.
I'm curious, do you support the separation of church and state? Public school would be a great platform for Christian principals to spread the good word of God.
Consider: "Open source is political": the power 'open source' relates to is the power of the licensed software's users to read the program's source code, and to redistribute/modify the program. Insofar as there's a moral vision to it, the idea of a world where users are unable to distribute/modify/etc. their software is worse than a world with open source software.
Whereas, the meta-statement "don't bring politics into discussions" is more like rules-of-engagement for discussion involving a diverse group of people. The 'political' in the statement refers to e.g. moral or ideological points of view. -- "asl2.0, but you have to agree abortion is murder" is 'political' in a different way than "asl2.0, you can't use this software if your name is Jared", because the restrictions itself is about a moral disagreement.
The author is entitled to use whatever license they want, and the community is entitled to a fork if it doesn't violate the previous license. That's all there is to it. the author doesn't owe the community anything, and the community, as long as they respect the terms of the previous license, is free to fork the project and get rid of the new license.
In general, these political stunts eventually reflect badly on their author. Open source is a double edged sword.
You would hate a statement being added to README file EVEN MORE than civilians being shelled indiscriminately, entire families shot while waiting in bread lines, and the targeting of war correspondents by a foreign army?
Got it.
Yes, but has not that ship sailed already?
I go to great efforts to keep my "feed" purely technically focused, but in the past ~2 years this has become basically impossible.
On one hand, I ask myself what I would have done if I worked at IBM in the 1930s[0]
On the other hand, as an LGBT person, I firmly believe that maximal freedom of speech protects vulnerable people from erasure.
What this means for free software is a tough question.
[0]https://en.wikipedia.org/wiki/IBM_and_World_War_II
Could this act actually awaken an IT team to the atrocities, in a way that makes a difference?
[0] https://writing.kemitchell.com/2022/03/05/Russia-to-Legalize...
It's very easy to say things like this without fully comprehending all of the implications. Here's an example: Google restricted the usage of its own product, Google Maps, in an effort to halt the killing of Ukrainians by Russian armed forces, who were using Google Maps to launch their operations. This directly contradicts your claim.
Wouldn't “Israeli” be the more appropriate analog here?
> Would you be comfortable with an open source license that bans Jewish users because of the Palestinian conflict?
Comfortable is a loaded term here. No I wouldn't, but I could break that down to: Is it something that a maintainer should ...
* legally be able to do - YES
* consider likely to make a difference in the conflict - NO
* consider to be good for the OSS ecosystem - NO
* consider ethically wise - NO
* still consider an OSS license - NO, but I think one could be constructed that had more generic restrictions against human rights abuses, or use by militaries, or similar general restriction. Would that meet OSI definitions? Not sure I care, but I wouldn't be too concerned even I think it would be better to keep things simple.
It is worth noting that OSS distributed from the US as part of sale, still is subject to EAR. While we benefit from having a global community of OSS, local laws still apply in any number of circumstances.
He is right, the changed license is discriminatory.
Older commits can be used freely, so not a big deal for a while at least and by then someone can fork the code.
Sure you can. Your project, your rules.
"You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License." [0]
https://www.apache.org/licenses/LICENSE-2.0.html
Edit: maybe this?
> Terraform-AWS-modules/Terraform-AWS-eks restricts license for Russian/Belarussian users
As much as I think the war is wrong, having it seep into other things which are "non-political", is incredibly annoying.
I just dont want to have someones political opinion shoved down my throat wherever i go.
There really needs to be a history class for developers.
OK, now get everyone to agree.
Oops, you've just entered politics
Trade is obvious, but sports, visas, communication and software are also used.
I think even most trade sanction are bad, it leads to more escalation.
"When trade stops war begins" it is said.
Let's use a thought experiment. You are the neighborhood's mechanic, and you do small jobs for everybody - bikes, cars, trailers. Now, your next door neighbor has been throwing dog shit on your lawn, started kicking down your mailbox in the morning, set fire to your hedge during the night.
So you say, hey, asshole, I'm not fixing your bikes anymore. In fact, you want people to acknowledge what an asshole your neighbor is when you fix their bikes. But then, nigma1337 comes along, and says, "bikes don't have anything to do with your dispute, you should still fix his bikes, and I don't want to acknowledge anything!", and that's just absurd, man.
Don't want that? Write your own stuff from scratch and don't think about what's happening in the world.
You're currently demanding the world change to play to your whims. That's not how this works.
Furthermore, if you’re going to make grandiose statements about what may or may not become precedent, it would behoove you to learn the word you’re trying to use first.
Furthermore, its an internet comment, i'm not gonna double check my spelling
The International Science Council [1] has a Committee for Freedom and Responsibility in Science that "promotes freedom for scientists to pursue knowledge and to freely exchange ideas, at the same time as advocating the responsibility of scientists to maintain scientifically defensible conclusions, and of scientific institutions to apply high standards." [2] They have published a list of Freedoms and Responsibilities of Scientists[3], the main principle of which is "the free and responsible practice of science is fundamental to scientific advancement and human and environmental well-being."
Reading the list in full, it seems evident that there is intellectual dissonance between the aims of scientific freedom and the aims of the Universal Declaration of Human Rights[4] (which it references). It opposes blocking access to science based on discrimination, which is laudable. However, it also doesn't explicitly oppose science done that supports discrimination, or science done by organizations that support discrimination.
This makes sense when you consider that advances in science like GPS can be used to help you drive to a birthday party, or to guide a missile towards one. Clearly you can't condemn scientific research by itself, as it has too many potential applications for both good and harm, often unknown at the time the research is done.
Similarly, discriminating against research on the basis of "ethnic origin, religion, citizenship, language, political or other opinion, sex, gender identity, sexual orientation, disability, or age" also prevents the free and responsible practice of science, so the list of Freedoms and Responsibilities of course opposes this discrimination. But what if the end result of that science research is used to discriminate against those same people for the same reasons? What does a responsible, ethical scientist do then?
What we can do is oppose the use of science by people with those discriminatory goals, or goals that violate universal human rights. If you know someone is researching genetics in order to popularize Eugenics, there should be no responsibility to continue supporting that research. Similarly, if you believe that not supporting scientific research may help put pressure on a nation that is waging an unjust and unprovoked war which is killing thousands of innocent civilians [in violation of universal human rights], you should have no responsibility to continue supporting said nation's scientific research. In other words, it should be okay to discriminate if you are discriminating against violations of universal human rights.
Considering this, I would propose that one major tenant of any new Open Source license is to discriminate against organizations or nations that want to research, use, or produce science or technology, if that organization or nation is widely considered to be violating universal human rights. This goal has the effect of communicating an ethical red line you must not cross if you want to participate in a global human community, and will be a discouraging factor when nations again consider the potential ramifications of their actions.
Basically, we should use access to collaboration in science and technology as a lever to improve human rights.
edit Ethical minds think alike! Somebody already created a version of the MIT license with this exact restriction! The Hippocratic License[5]: "an Ethical Source license that specifically prohibits the use of software to violate universal standards of human rights, and embodying the Ethical Source Principles." It appears there are many[6] other such licenses.
[1] https://council.science [2] htt...
I can list recent violations from both US, Russia and China. So now what? The US has already said they'd prefer to invade The Hague than have a USer trialed there. You need a court to establish what's a violation and what's not. And who should provide the judges?
I'm an environmentalist. Should I update all my licenses to ban meat eaters, frequent flyers and drivers? Where does this shit end?
I mean, if we're going to go down this road, then let's actually effect real change and slip some clauses in there with teeth like "no click-through license agreements" or "no pop-up cookie prompts" or "no ad trackers"...
Just to be clear, AWS/Hashicorp is NOT beginning to charge people for the use of Terraform modules.
I really struggle to understand the reason for using the modules rather than the underlying resources, except that there are a lot of tutorials and blog posts written based on using the modules.
Maybe you can enlighten me rather than writing a three-letter comment?
> serve very little purpose other than to add a dependency and create problems
You're expressing your opinion as fact in a way that only serves to degrade people who don't agree with you.
Obviously these modules serve a purpose, otherwise the repositories would not have hundreds-to-thousands of github stars/forks, and people would not be arguing about a license change on the front page of HN.
Have you worked with the modules in question? If you have, please enlighten me to the obvious purpose that they serve. As I pointed out, I've worked with them extensively, and worked on comparable configurations that avoid them, and they create many problems (the wrappers introduce their own churn due to version updates, and often have mistakes in their interpretation of the underlying resources, etc) while solving virtually none. Several orgs I've worked for actually ban these and similar external modules due to these problems.
It's telling that the only substantive reply I received merely points out the number of stars rather than actually explaining why people should use these wrappers.
At a first glance, "transitions to non-free license" implies that you now have to pay for it. The default isn't "Well I guess non-free means it's still free but not the OSI definition".
People very often do not read beyond the title.
"Community maintained terraform-aws-modules transition to non-OSI-approved license" would probably be more accurate, but not nearly as click-bait.
Edit: https://www.apache.org/foundation/license-faq.html#mod-licen...
It was never my intention to make changes in a license in any way. It would be just wrong to drop 5+ years of my life working on all terraform-aws-modules and betray everyone who have been participating as contributors and users.
If there are questions, please ask here or twitter (@antonbabenko).
I commend you for reverting the terms of use change. I also believe that this sort of remaining political statement in a project sets a poor precedent, and diminishes the work. Free software is meant to be open to all. Throwing ideological barbs in the project, however correct and riteous, undermines the project's freedom. I would urge you to reconsider.
PS: It is not just Putin who attacks Ukraine but I don't want to go into this discussion here.
I see at https://github.com/terraform-aws-modules/terraform-aws-eks/c... that you have dropped the additional terms of use. I think that should alleviate the concerns people had about a license change. I appreciate you listening to your contributors and users feedback on this emotional topic.
Putin khuylo!
The most pertinent part is:
> A condition against torture would not work, because enforcement of any free software license is done through the state. A state that wants to carry out torture will ignore the license. When victims of US torture try suing the US government, courts dismiss the cases on the grounds that their treatment is a national security secret. If a software developer tried to sue the US government for using a program for torture against the conditions of its license, that suit would be dismissed too. In general, states are clever at making legal excuses for whatever terrible things they want to do. Businesses with powerful lobbies can do it too.
For example, here is the same change in their VPC module: https://github.com/terraform-aws-modules/terraform-aws-vpc/c...
I would not be happy if a library codifies political statements. What could be next? Conditions that state you agree to vote for/against Trump, that you disagree with homosexuality or are against transphobia. Note, I'm not accusing anyone of having those views neither am I commenting on them, they merely serve as an example of the dangers of discriminating.
Dependencies and supply chain attacks are the big thing - and while dependency scanning and pinning are an important component, but I don't think it is possible to use open source libs at scale without a certain amount of trust. I work on a platform where there are hundreds of teams and thousands of microservices. I'm now trying to think how we can assess the risk of thousands of dependencies and millions of lines of code. Without trust, the only way that's possible is to fork all libs, prevent open source and generally kill off any agility and velocity. My problem is that this weaponisation is killing off trust. It's not about sitting on the fence or taking sides in a war. It's about what open source has achieved over the last 30 years and I think that's now more at risk than before…
The original author is entitled to their opinion and can restrict their own development to a repo with license conditions they define, but it is not reasonable to expect companies to accept non-standard and politically charged license terms. Getting shit done is hard enough and this change will not move the needle on Ukraine/Russia sentiment one iota.
Software licenses are LEGAL DOCUMENTS. If you are not a lawyer, who has a specialty in this specific area of law, don’t go fucking with them.
1. Fuck Russia. This is the only right answer to the question.
Entirely separately is #2.
2. If you change the terms of a license, it’s a different license. The changed license was not the Apache 2.0 license, and was additionally a breaking change in every sense of the phrase.
I appreciate that @antonbabenko recognized this and fixed it, but these two issues are entirely separate. What Russia is doing is terrible. That is an absolute fact. But the new Terraform variables that were added in that commit have absolutely nothing to do with making the software work in the way that it was intended to, therefore, they do not belong.
This has nothing to do with being anti-politics. I’m very heavily political, and I fully support Ukraine in this case. I also have strong opinions on both “free software“ and also “open source software“, and I apply them at the license level by selecting a pre-existing license without making custom modifications to it.
But things like `var.putin_khuylo` simply don’t belong in the software itself. Nor does it belong in an OSI-approved software license.