Icepick v1.0.0-pre.2


Version 1.0.0-pre.2


This is a weapon of mass user protection.

Software creators use these terms to leverage the power vested in them by intellectual property law to demand transparency, accountability, and independence for those relying on their work.

Through these terms, software creators surrender the greater part of their power. They make their software free for everyone to run, study, change, build on, share, and rely upon. They retain their power, and wield it through these terms, only to stop users misusing their software to deny others transparency, accountability, or independence. They invite and empower you to defend those rights for yourself and others.


In order to receive any license under these terms, you must agree to their rules. Those rules are both obligations under an agreement among users of this software and conditions to all your licenses under these terms. You must not do anything with this software that triggers a rule you cannot or will not follow.


These terms ensure each user’s rights to the same control they would enjoy running this software for themself when they instead rely on others to run it for them. In using this software, you must respect those rights for others, as they must respect those rights for you:

  • Autonomy: Each user must have the same ability to run, study, change, build on, and share this software.

  • Transparency: Each user must be able to tell if another is running this software for them as they would run it for themself.

  • Accountability: If any user misleads another, they must face consequences.

  • Independence: Each user must be able to switch to running this software for themself, or to having someone different run it for them, without significant interruption, quality of service loss, legal risk, or discrimination.


Applied together, user rights require:

  • Disclosure: On request, each user must be given the disclosure they need to exercise autonomy and independence.

  • Permission: On request, each user must be given the permission they need to exercise autonomy and independence, under these terms for all software.

  • Completeness: The disclosure and permission users receive must be sufficient to exercise every aspect of autonomy and independence.

  • Practicality: Users must receive disclosure and permission in the most practical forms for exercising autonomy and independence, if possible in a form this software can process.

  • Responsiveness: Users must be given disclosure and permission promptly, through self-service functionality of this software when available.

  • Nondiscrimination: When exercising autonomy or independence entails a transaction with another, such as an equipment purchase or service contract, that transaction must be broadly available on nondiscriminatory price and other terms.

  • Noninterference: Users must be allowed to exercise autonomy and independence without technical, practical, legal, or other interference.


User rights apply to every element of computing:

  • Software: all source code, tools, configuration, and other material used to run the software for the user

  • Data: all data the user provides to the software, data the software collects about the user, and additional data the software uses to derive additional data or functionality from those data

  • Processing: all computer hardware, physical or virtual, used to run the software for the user

  • Connectivity: all hardware, physical or virtual, and rights necessary to connect software and data to communications networks

  • Jurisdiction: the legal systems and permissions governing the other elements of computing


Any contributor to this software, anyone with a license under these terms, and any user of this software or software services provided with it can enforce any rule of these terms by seeking a judicial order to stop breach of the rule, and order to comply with the rule, money compensation, or any combination.


The law qualifies every rule of these terms. If following a rule absolutely would break the law, these terms only require you to follow the rule to the extent you can legally. If any adjudicator of these terms decides that any rule is completely unenforceable in its jurisdiction, but enforcing the rest would not defeat the purpose of these terms, the rest of these terms will still apply.


Each contributor licenses you to do everything with this software that would otherwise infringe that contributor’s copyright in it, so long as you respect the rights of others under these terms.


You must ensure that everyone who gets a copy of any part of this software from you, with or without changes, also gets the text of these terms or a link to <{url}>.


If anyone notifies you in writing that you have broken any rule of these terms, you can remain a part of the agreement, and keep your licenses under it, by taking all practical steps to comply within 30 days after the notice. If you do not do so, your participation in the agreement, and all your licenses under these terms, end immediately.


Each contributor licenses you to do everything with this software that would otherwise infringe any patent claims they can license or become able to license, so long as you respect the rights of others under these terms.


No contributor can revoke any license under these terms.

No Liability

As far as the law allows, this software comes as is, without any warranty or condition, and no contributor will be liable to anyone for any damages related to this software or these terms, under any kind of legal claim, except claims against contributors for breaking the rules of these terms.

I think this is very interesting, but I think that it works better as a declaration of intent than as a license. I understand the tendency to say that “broad language covers all use cases,” but I think that if this were attempted to be enforced, there would end up being a lot of wiggle room in the broad language. The basic question would almost always be “as decided by whom”? And if there is a dispute, who wins?

Such as:
Transparency - “running this software… as they would run it for themsel[ves]” - does this include the level of physical resources?
Accountability - “consequences” - any consequences?
Disclosure - “the disclosure [users] need” - how “smart” is a user?

Would you be more comfortable with a rule of construction that ambiguities will be resolved in favor of users?

No, I don’t think that works. It helps, but how exactly does a judge implement that when interpreting the license? I don’t think it would be “user wins any dispute,” becausethe judge would then be avoiding all the regular canons of construction. The best you get is a “construe in favor of the user” in the case of ambiguity, but the judge will need to find ambiguity that is not dealt with by using “reasonable person” interpretations for that to come into play.

I would not recommend to a client that they use this - too inconsistent in application - nor would I recommend to a client that they rely on this for the same reason.

I don’t think this text is perfect. But in terms of clear application, I think it compares very favorably to, say, purpose-based prohibitions in jellybean nondisclosure agreements, internal-use restrictions in orthodox license agreements, prohibitions against conduct likely to bring negative publicity on providers in SaaS agreements, and so on.

What rule of law requires a licenses in particular to state restrictions or conditions in terms of exclusive statutory rights, or more with objective specificity than typical contract terms more generally?

For what’s its worth, I think this is the underlying theme of sound objections to “public performance” under CAL. It may feel comforting—at least to lawyers—to read that legal-sounding term. But it has no settled legal meaning as deployed. It looks specific, but as used, it’s vague.

When it comes down to it, I would strongly prefer initially loose-looking language in plain rules, addressing the goals and conduct in natural terms, to a loose legal analogy. First because if a court does happen on vagueness or ambiguity, it has richer material within the four corners with which to hew toward the overall purpose. Second because analogy to other legal issues can weigh that process down with legal baggage, in the form of intuitions and rules for the exclusive right you’re analogizing to. Finally because the fundamental problem with activist copyleft terms is incompleteness—otherwise known as loopholes—which makes overly specific language the primary threat.

That’s just what I meant. Off my current master branch:

Whenever these terms prove unclear, read them in favor of users.

Hmm. Could be a matter of preference. In some ways, I sometimes prefer terms that, to make a not-quite-fitting analogy, are a little more “brittle”: They are likely to do what I want, or break. They are unlikely to be stretched into something that is kind of like what I want, but not really.

1 Like