Designing my own software license: EPSL v1.0

The world of software development often revolves around open source and free software licenses, known for their transparency and relative simplicity. However, what happens when we pivot towards proprietary software licenses? The terrain becomes a bit more challenging, with a multitude of complexities that need thoughtful consideration.

As a software developer, I've always been intrigued by the legal frameworks that underpin our work. Recently, I found myself pondering how a proprietary software license might look for my own software projects. I wanted to create a license that could strike the right balance - not overly complicated to discourage users from integrating the software into their projects, yet robust enough to preserve my control over publishing and ownership.

A few things I wanted to encapsulate in this license were:

  1. Affording users the liberty to incorporate my software into their projects, commercial and non-commercial alike.
  2. Retaining my control over the publishing of the original software.
  3. Ensuring seamless integration of my software or libraries into users' development workflows.
  4. Explicitly enabling users to decompile, reverse engineer, and learn from my software without mistaking that as permission to create a derivative copy.
  5. Discouraging others from impersonating me or taking credit for my work.

With these considerations in mind, I crafted what I call the "Elborai Proprietary Software License (EPSL) v1.0". The key clauses are as follows:

  1. Software Integration: Users can incorporate the software into larger systems or applications, as long as they add significant original functionality or value.

  2. Derivative Works: Users can't create or distribute derivative works that modify substantial portions of the software.

  3. Republishing: Only I can act as the publisher of the software.

  4. Commercial Distribution: Users can't commercially resell, rent, sublicense, or commercially distribute the software as standalone or as a library.

  5. Reverse Engineering: Users can decompile or study the software's workings for understanding its implementation, but they can't use this knowledge to create derivative works of the software.

  6. Copyright Notice: All copies or substantial portions of the software must include the copyright notice and permission notice.

In addition to these, the EPSL includes provisions concerning termination, "as is" provision, and a severability clause.

It's important to note that I'm not a lawyer, and this exercise was born out of intellectual curiosity rather than any formal legal training. If you're considering designing your own license or dealing with proprietary licenses, I strongly recommend seeking professional legal advice.

Ultimately, creating a proprietary software license was an interesting project, offering a deeper understanding of the delicate balance between user freedom and ownership rights. That also makes me appreciate even more the simplicity of licenses such as the BSD and MIT, relying on open source licenses simplifies things so much. If you're a fellow developer with the same niche interest in software licenses, I hope my experiment sparks your curiosity and opens up new avenues for exploration. As with all things in our field, there's always more to learn and understand.

Here is the full license I arrived to:

Elborai Proprietary Software License (EPSL) v1.0

Copyright (c) 2023 Samuel El-Borai (Elborai Software), Hamburg, Germany.

This license agreement ("License") is a non-exclusive, worldwide, revocable
license between you ("User") and Samuel El-Borai (Elborai Software). By using
the software, its source code, object code, libraries, and associated
documentation files (collectively, the "Software"), you agree to the following
terms:

1. You may incorporate the Software into a larger system or application and
distribute it as part of that system or application. The Software can form a
significant part of the functionality of the system or application you are
distributing, provided that your system or application adds significant original
functionality or value. Merely creating a wrapper or similar superficial changes
does not count as adding significant original functionality or value.

2. You may not create or distribute derivative works, forks, or modified
versions of the Software. Here, "derivative works" refers to any software that
is based on, includes, or modifies substantial portions (more than 20% of the
original work provided by Samuel El-Borai (Elborai Software) as part of the
Software) of the Software. However, software that uses the Software through
static or dynamic linking does not count as a 'derivative work' so long as the
Software itself is not modified and is used 'as is'.

3. You may not republish the Software under a different name or distribute it
independently on any package registry or similar platform. This means you cannot
act as the publisher of the Software.

4. You may not commercially resell, rent, sublicense, or otherwise commercially
distribute the Software as standalone software or as a library. This means you
cannot transfer any of the rights given to you by this License to third parties.

5. You may decompile, reverse-engineer, or study the implementation of the
Software for the purpose of understanding its workings. You may use the
knowledge gained from studying the Software to create your own, original
software, as long as it does not constitute a derivative work of, or contain
substantial portions of, the Software.

6. You must include the following copyright notice and permission notice in all
copies or substantial portions of the Software: "Copyright (c) 2023 Samuel
El-Borai (Elborai Software), Hamburg, Germany. Used under license."

The Software is provided "as is", without warranty of any kind, express or
implied. This means that the author and copyright holder takes no responsibility
and is not liable for any damages or other liabilities that might arise from the
use or other dealings in the Software.

This License may be terminated by Samuel El-Borai (Elborai Software) if you fail
to comply with any of the terms of this License, upon which you must cease all
use and destroy all copies of the Software.

If any provision of this License is found to be invalid or unenforceable, the
remaining provisions will remain in effect and the invalid or unenforceable
provision will be replaced with a valid and enforceable provision that achieves
the original intent.

This License is governed by the laws of Germany. Any legal action or proceeding
arising under this License will be brought exclusively in the courts located in
Hamburg, Germany, and the parties irrevocably consent to the personal
jurisdiction and venue therein.