logo

drewdevault.com

[mirror] blog and personal website of Drew DeVault git clone https://hacktivis.me/git/mirror/drewdevault.com.git
commit: 71708a12452544a131b5482c947d93f1699edfbd
parent 2ecc39637b23950667653afc5668ac6960150d2f
Author: Drew DeVault <sir@cmpwn.com>
Date:   Mon, 14 Jun 2021 18:21:17 -0400

Providing "as is"

Diffstat:

Acontent/blog/Provided-as-is-without-warranty.md64++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 64 insertions(+), 0 deletions(-)

diff --git a/content/blog/Provided-as-is-without-warranty.md b/content/blog/Provided-as-is-without-warranty.md @@ -0,0 +1,64 @@ +--- +title: Provided "as is", without warranty of any kind +date: 2021-06-14 +--- + +The MIT license contains the following text, in all uppercase no less: + +> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + +The BSD licenses, GPL family of licenses, Apache 2.0, Mozilla Public License, +and likely any other license you'd care to name, have similar clauses of their +own. It's worth taking a moment to consider the implications of this statement +and what it says about the social aspects of free and open source software. + +Many people who rely on free and open source software feel entitled to some +degree of workitude or support from the developers, or think that the developers +have a responsibility to provide good maintenance, or any maintenance at all, +for their work. This is simply not true. All free and open source software +disclaims all responsibility for your use of them for any purpose, often in all +capital letters. + +Some maintainers will allow you to negotiate additional terms with them, for +example through the sale of a support contract, for which you may receive such +a guarantee. If you have not made such an agreement with your maintainers, they +have no responsibility to provide you with any support or assurance of quality. +That means that they do not have to solve your bug reports or answer your +questions. They do not have to review and apply your patch. They do not have to +write documentation. They do not have to port it to your favorite platform. You +are not entitled to the blood, sweat, and tears of the maintainers of the free & +open source software you use. + +It is *nice* when a maintainer offers you their time, but by no means are they +required to. FOSS is what **you** make of it. You have the right to make the +changes you need from the software yourself, and you are the only person that +you can reliably expect to do it. You aren't entitled to the maintainer's time, +but you are, per the [open source definition](https://opensource.com/osd) and +[free software definition](https://www.gnu.org/philosophy/free-sw.en.html), +entitled to change the software, distribute your changes to others, and to sell +the software with or without those changes. + +Though this idea is important for users of free software to understand, it's +equally important that maintainers understand this as well. We have a problem +with burn-out in the free software community, wherein a maintainer, feeling +pressured into accepting greater responsibility over their work from a community +that increasingly depends on them, will work themselves half to death for little +or no compensation. You should not do this! That wasn't part of the deal! + +As a maintainer, you need to be prepared to say "no". Working on your project +should never feel like a curse. You started it for a reason &mdash; remember +that reason. Was it to lose your sanity? Or was it to have fun? Was it to solve +a specific problem you had? Or was it to solve problems for someone you've never +met? Remember these goals, and stay true to them. If you're getting stressed +out, stop. You can always walk away. You don't owe anything to anyone. + +If you enjoy the work, and you enjoy helping others, that's great! Of course, +you are allowed to help your users out if you so choose. However, I recommend +that you manage their expectations, and make sure you're spending time +cultivating a healthy relationship between you, your colleagues, and your users. +FOSS projects are made out of people, and maintaining that social graph is as +important as maintaining the code. Make sure everyone understands the rules and +talk about your frustrations with each other. Having an active dialogue can +prevent problems before they happen in the first place.