• 0 Posts
  • 44 Comments
Joined 2 years ago
cake
Cake day: August 9th, 2023

help-circle
  • I think it’s important to consider that the GNU General Public License is really only a part of the Free Software Movement, which is “An effort by a group of people to achieve a social or political goal”. That movement is defined by a group of people and a goal and has “infrastructure”, such as “The Free Software Foundation” (“a 501(c)(3) non-profit organization”). “The idea of the Free Software Movement is that computer users deserve the freedom to form a community”, but if you want to accomplish a different goal, it might be useful to clearly communicate that goal to other people to create a different movement (and create new “infrastructure” to support your effort).

    Changing only a part of the GNU General Public License might make it incoherent or otherwise a hindrance to your goal in a way that you might not expect. It might be better to focus on talking with other people about a goal of yours, and you might discover that you can be most effective without investing any energy in creating a new license for software, but if you determine that creating a new license is important you can create a comprehensive design for one to match your efforts more closely.

    It seems that your goal might be summarized with “I want people to be able to help themselves (using software) without contributing to spreading hate” (“putting a motion in the positive is a rule in parliamentary procedures”).

    See also “Chesterton’s Lamp-Post” (a suggestion to only start to act when you actually know what you want the final result to be) and “Chesterton’s fence” (a suggestion to not change things when you don’t know what the final result will be) for some context about what an undesirable design/plan is.




  • Doesn’t git status tell you what to do?

    use “git add <file>…” to mark resolution

    use “git commit” to conclude merge

    I always use git status to check what is appropriate before doing anything else, since the right thing to do can sometimes be different, like after using git rebase when a break command was used vs when a squash command resulted in a conflict.




  • I had some thoughts about the concept of a “Contributor License Agreement”.

    If you are the sole author of a program, you have a special position in that you can distribute the program with any license you choose. People that are not the sole author that copy the source code are not able to do that. If the original sole author of a program incorporates changes from someone that did not sign a Contributor License Agreement, they lose that special position, since distributing the program with a new license would require consent from all the authors, which is surely harder if there are more authors.

    Because of this, it might be worth supporting some “community fork” more than an “original” repository, since that makes it clear that the program is likely to only be distributed using a specific license. However, if I’m interacting with an “original” repository, I will expect to have to interact with a Contributor License Agreement in order to have my changes used, since the original authors will want to preserve some flexibility regarding what licenses they can use with their software.