                          THE FREEDOM COVENANT

                      Version 1.06, March 30, 2021


Free Software is all about freedom. This freedom, as Richard Stallman repeatedly
pointed out, is not about "free beer", but about "free speech". In other words,
the freedom of free software corresponds not to the French word "gratuit", but
to a much nobler word, "Liberté", the first of the three pillars of the French
motto, "Liberté, Égalité, Fraternité".

Freedom has always been under attack, and this goes way beyond Free Software.
The natural tendency of human beings is to grab power, and achieving that
objective very often requires, in the mind of the power grabber, the restriction
of freedom of others. From shrink-wrap licenses to dictatorial regimes, the same
principle applies in a continuum: restricting someone's freedom to gain power.
This friction between the liberties of different individuals is where most
conflicts come from.

This desire to restrict the freedom of others also lives deep within each of us.
It takes courageous individuals to go against that innate desire for power and
truly defend freedom. Courage is required because accepting the freedom for
others often requires a deliberate and conscious restraint of one's own.

In addition to courage, defending freedom could use tools and methods, because
our daily routine makes it easy to overlook admirable core principles.
Our words and our deeds rarely align. Doing is harder than wishing.

This is the reason for this covenant, which anyone can freely adopt as a
reminder of what it takes to truly respect the freedom of others.
Here are the guiding principles of this covenant:

      0. Act out of love
      1. Speak the truth
      2. Share your facts
      3. Mind your feelings
      4. Keep your opinions
      5. Forgive and apologize
      6. Discuss
      7. Contribute and be thankful
      8. Provide friendly feedback
      9. Act out of love

By publicly adhering to this covenant, or any variant thereof that suits your
personal taste better, you simply state that these principles are in line with
how you want to act, and you encourage others to gently remind you of these
principles should you violate them.


                        END OF THE FREEDOM COVENANT

--------------------------------------------------------------------------------

                                   USAGE

If you agree with this covenant, simply share it along, for example by putting
it in your repositories, on your web sites or linking to it in your signature.

If you disagree with part or all of the wording, feel free to adapt it to your
preference or even write your own freedom covenant.

Should you make alterations to this text that you think are valuable to others,
please share them back through the repositories below. I will do my best to
integrate the changes that I personally like (which includes any correction to
spelling or grammar), and to record changes I dislike as publicly visible git
branches in the repository so that others can choose them at their preference.

       https://github.com/c3d/freedom-covenant
       https://gitlab.com/c3d/freedom-covenant

Free Software projects are encouraged to adopt this covenant as a guideline,
with the full understanding that adhering to such a covenant can only be a
personal and free decision, and should never be required from anyone.
This covenant is specifically not written as an enforceable code of conduct.

--------------------------------------------------------------------------------


                                DISCUSSION

Here is a more in-depth discussion of the meaning of the principles outlined
above, highlighting how and why they relate to freedom.


0. Act out of love

The best contributors to Free Software are often very passionate individuals,
who can talk about their projects for hours, and more if beer is involved.
This passion can be harnessed in a positive way, but it can also easily lead
down a destructive path, including anger or hatred.

Love, whether for individuals or for the projects or products you work on, is
the best remedy against such negative passions. By loving others, you can fully
enjoy their freedom, and be happy with them when they exercise it.

When individuals you love do something that you disagree with, acting out of
love will ensure that you seek a resolution that is in their best interest,
instead of attempting to gain control over them and restrain their freedom.

Even in the worst case, we should seek to act towards one another like a parent
teaching a misbehaving kid more than like a cop putting a criminal in jail.


1. Speak the truth

Freedom applies to yourself, and that includes your right to say what you
believe to be true, irrespective of what others may think about it.

If you are in a position where you cannot say what you truly believe, your
liberty has already been infringed upon. It is already way past time to find the
courage to speak up. Be ready for the consequences, because those who reveal
inconvenient truths are not welcome by those who need silence to preserve
their own power. This is one of the prices to pay for freedom.

Like all others, this principle is subject to principle 0. You may choose to
refrain from stating things that you believe to be true, simply because they may
cause harm to others. You need to carefully balance the need for openness and
transparency with the right to privacy or beliefs.

Be mindful that you don't own the objective truth. You can at best state what
you sincerely believe is true. As a result, you need to fully accept that
others, following the same guiding principle, may still end up with a different
or even opposite belief. Speaking the truth requires remaining open to the truth
at all times, and therefore being ready to change your mind.

The right to shout "fire" in a crowded theater is often cited as an example of
limit to free speech. But if there is a fire, you should feel obligated to shout
"fire" even if this may cause a panic and other harm.


2. Share your facts

True freedom depends on accurate information. Nobody can make an informed
decision without having correct data.

Therefore, your respect for the freedom of others requires that you share any
fact you have that is relevant to their own decision making. This sharing
should include not just the conclusions, but also ways for others to verify your
facts, such as sources, tools or methods.

To understand how this relates to freedom, imagine that you get run over by a
bus. Do others around you still have a way to make progress without you? If not,
would it be because you held onto a parcel of personal power? Deliberately
holding to information may grant you a little bit of power, but it comes at the
expense of the freedom of others.


3. Mind your feelings

We all have feelings, and they may be overwhelming. Unlike facts, however,
feelings are difficult to share and communicate, and they are often not directly
relevant or applicable to others.

As a result, there are two equally bad ways to deal with feelings: bottling them
up, or treating them as universal facts.

Bottling feelings up is bad, because it will lead you to behaviors that will
appear erratic or hard to understand to others. In doing so, you deprive them of
facts that are actually relevant in their interaction with you.

On the other hand, your feelings are not universally acceptable facts. They are
personal emotions that others may not feel at all. This includes feelings such
as outrage, pride, joy or love.

It is perfectly OK to share that you are outraged by someone's actions, but it
is not acceptable to demand that everyone be outraged the same way, just as it
is ridiculous to assume that everyone loves chocolate simply because you do.


4. Keep your opinions

Like feelings, opinions are personal. Like feelings, they can be shared, but
they will not be universally accepted.

If you have trouble distinguishing facts from opinions, a good rule of thumb is
that opinions are ideas others can disagree with. The vast majority of what we
often incorrectly treat as facts are, in reality, mere opinions. This includes
all the statements in this document, which represent only the opinions of its
author.

Freedom includes the freedom of opinion. This means that you can keep your
opinion and do not have to subject it to any kind of majority rule. Dissenting
opinions are what fuel progress in science. Of course, try to be as informed as
possible in your opinions, but remain aware of what you don't know.

Treat your opinions and the opinions of others with the same respect. If you
cannot hear a dissenting viewpoint without feeling uncomfortable, work on
yourself before trying to change other people's minds -- if only because the
chances that you can change yourself are somewhat higher.

Try to acknowledge disagreement in a way that maintains the dialogue open.
It may be better to use a phrase like "I learned something today" than a phrase
like "let's agree to disagree", if and when the latter can be misinterpreted
as "end of discussion".


5. Forgive and apologize

We all make mistakes. What makes a difference is how we deal with them.

Even without any ill-will or deliberate intent, we may cause harm. Apologies
help soothe bad feelings, irrespective of any objective fault. I am often not
the best person to judge if someone else was harmed by what I did, so I'd better
be cautious and conservative about it. Feel free to apologize even if you truly
believe you did nothing wrong.

The necessary counterpart to apologies is true forgiveness. Forgiveness is not
about forgetting problems, but about putting them behind us. Since we are
creatures of habit, we often repeat our mistakes, so we often need to forgive
the same person multiple times for the same offense. This is a mark of true
courage and strength.

Apologies and forgiveness restore our freedom. They allow us to return to a
normal train of thought that is not obsessed with the harm done.


6. Discuss

We are social creatures, and we cannot truly be free if we are isolated.
To make any progress together, we need a constant exchange of ideas, an ongoing
discussion. Interrupted dialogue is often the first sign of something going
wrong.

The style of the discussion is something that is extremely personal. Individuals
who are closer to one another will often speed up the discussion by using more
direct language than they would with more distant third parties.

On our modern electronic communication channels, this often leads to incorrect
interpretation of the "tone" of the discussion, because the person who wrote had
one particular person in mind, but the message is read personally by all
others. This has been the source of many misinterpretations.

This is why it is extremely important to remember the earlier principles during
any discussion, and notably to be able to separate facts, feelings and opinions,
as well as to express quick apologies and forgiveness.

Debate ideas, not people. Criticizing or rejecting an idea is generally accepted
whereas criticizing or rejecting a person is generally more problematic, and can
even lead to violence or hatred.

A good discussion increases the level of love, trust and respect between
participants. This is the true measure of success.


7. Contribute and be thankful

An often under-appreciated aspect of Free Software is the freedom to contribute.
Yet this freedom is the primary reason for the success of the movement.

Free Software is an incredible gift, that now powers many aspects of our lives.
We need to be thankful for all the amazing contributors who dedicate time and
talent to this collective endeavour.

One way to be thankful is to improve on the existing work, and to add your own
personal piece to it. Free Software is that place where even correcting someone
else's mistake is seen as a true mark of appreciation and respect. This constant
feedback loop is what makes Free Software so good. Anyone willing is welcome to
contribute. Nobody needs anyone else's permission to get started.

This does not just apply to code, but to the community as well. Discussion,
debate and even sharp criticism are essential to achieving true freedom.
In particular, criticism of problematic individual behaviors is necessary, and
happens regularly. However, our love for the code and for the contributors means
that our objective should always be improvement, not destruction.


8. Provide friendly feedback

Nothing we do is ever perfect, and Free Software is no exception. Bad code, bad
processes or bad behaviors are inevitable, and we continuously seek to redress
such situations. Good code, good processes and good behaviors are much harder to
achieve. They require a lot of effort, and require ongoing motivation and
continuous engagement.

Therefore, praise liberally and publicly, show appreciation whenever you can.
A mere "thank you" goes a long way towards making someone have a nice day.
Showing sincere signs of appreciation is the most efficient guide to greatness.

Conversely, show restraint and moderation in your negative judgments.
Having a negative opinion of a piece of code or of an individual is part of your
fundamental freedom. But it is rarely productive to express it aloud.
Complaining publicly that some code is a piece of crap never fixed a bug.
Privately holding that opinion, on the other hand, may be a powerful motivator
to fix that sad piece of utter junk obviously written by a drunk monkey - Oh,
wait, that was me!

Should a need arise for some kind of more serious corrective action, try to do
so in a way that respects the individual freedoms of everyone at hand. Remain
friendly, and always seek a positive resolution.

Start with friendly, private feedback, stating as clearly as possible the
problem that you see and the most important improvement that you have in mind.
If that fails, consider bringing a small group of individuals to discuss the
problem. If you need to resort to a vote or similar arbitration mechanism to
resolve a conflict, be ready to accept an outcome that does not go your way.

Coercive actions, public threats, insults or collective retaliation are almost
never justified nor justifiable, because they infringe on the basic freedom of
the targets of the action. Irrespective of who is involved, such actions run
directly counter to the most fundamental value of Free Software, freedom.

It is always more difficult to discuss, convince and forgive than to silence,
coerce and punish. However, it remains the right thing to do, because this is
the only approach that truly respects individual freedoms.


9. Act out of love

This brings us back full circle.

Acting out of love brings the best in us as well as in the community.
