# The best software business model See [this](https://www.gingerbill.org/article/2025/04/22/unstructured-thoughts-on-oss/), [this](https://macoy.me/blog/programming/FreeSoftwarePaywalls) and [this](https://www.rfleury.com/p/software-kingdoms) for some interesting discussion on the ethics and sustainability of FOSS. The main benefits of FOSS are: - Free stuff is always nice - Up and coming developers can study the code of projects to learn - The developers can accept community contributions - Good will in the wider community The main benefits of proprietary software are: - People are motivated to work on the project, due to money - There is usually a clearer overall direction for the project - Faster progress and innovation, due to money - Developers can afford QA testing, due to money I would propose a middle-ground solution for serious projects. Anything that's just an experiment or for learning should remain OSS under a permissive license that requires attribution - A software is paid for once upon each major version release. All minor version updates and bugfixes for that version are free. - Upon paying for the software, the source code and binary packages are available for audit and modification, but not for redistribution. - The user can share patch files in a community forum under a permissive license that requires attribution. - The developer can choose to incorporate different patches into the project with appropriate attribution. - If the developer is especially nice, they can refund or otherwise compensate valued contributers. This way, the developers can afford to work on their project full-time and truly innovate and the users can study the code to learn and maybe even develop their own inspired project, as well as contribute to the original project, fostering a strong sense of community. Here's an example license I made and may use for my projects. Don't ask me about the legality of it, because I ain't a lawyer. ``` Copyright (c) 2025 Abdulmujeeb Raji Permission is hereby granted to any individual or organization ("Licensee") obtaining a copy of this software and associated source code (the "Software") to: 1. View, inspect, and analyze the Software for security, compliance, or operational purposes. 2. Create and use modified versions of the Software for internal use only. 3. Publish and distribute files that describe changes to the Software ("Patches"), provided that: - The Patches do not contain the Software in substantial form and consist primarily of differences to the Software. - The Patches are licensed under the "BSD 3-Clause License for Patches" set forth below. The above permission is revoked if the following conditions are not met: 1. The Licensee msut not distribute, publish, sublicense, sell, or otherwise make the Software, or derivative works thereof, available to any third party, whether in source code or binary form. 2. The Software and any modifications made to it must be used solely by the Licensee and the Licensee's organization. 3. The Licensee must not use the name, trademarks, or branding associated with the Software in any manner without prior written permission from the copyright holder. 4. The Software is provided "as is," without warranty of any kind. The copyright holder shall not be liable for any damages arising from the use of the Software. Any use of the Software outside the scope of this License is prohibited unless separate written permission is obtained from the copyright holder. ---------------------------------------------------------------------- BSD 3-Clause License for Patches ---------------------------------------------------------------------- Copyright (c) [Year] [Patch Author] Portions Copyright (c) 2025 Abdulmujeeb Raji Redistribution and use of patches, in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of patches must retain the above copyright notice(s), this list of conditions, and the following disclaimer. 2. The Licensee must not use the name, trademarks, or branding associated with the Software, or the names of its contributors, to endorse or promote products derived from this patch without prior written permission from the relevant copyright holder. 3. Redistributions of patches must preserve and display the original Software's copyright notice(s) from Abdulmujeeb Raji alongside the the patch author's copyright notice. THIS PATCH IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS PATCH, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ```