I'm developing a library for reading/writing a file format of a program created by a certain company. The guys from that company were so kind that they provided me with a documentation for their format, which I'm really grateful for.

I'm intending to release the library as open-source under a license "derived" from MIT, the difference being that the library must not be used to create a program that would compete with the original program, as an expression of my gratefulness to the company.

What I'm asking: is adding this rule to the license legally possible?

  • 3
    I can't really imagine why you have to worry. If any other people use your library, it would be to the benefit of the original company because their format will become more of a standard.
    – InformedA
    Jul 13, 2014 at 9:49
  • @randomA that idea is repetead often, without any critical thinking. Curiously, nobody writes about asking the original company to find if they actually think of releasing the library as a good move for them (I guess that if they wanted to release an open source library, they could have done it on their own without waiting for spiffyk to show up).
    – SJuan76
    Jul 13, 2014 at 16:15
  • 1
    spiffyk ok, the guys of the company provided you information to use their file format in your product, but did they allow also to release it as a third party library? Are you sure you should not check with them or a lawyer?
    – SJuan76
    Jul 13, 2014 at 16:16
  • @SJuan76 I don't understand why you need to insult me. I merely mention my question of why spiffyk has to (ethically) worry. I know well that the question is about (ethical) obligation, not strictly legal obligation.
    – InformedA
    Jul 13, 2014 at 17:00
  • 1
    @randomA it was just you who did the generalization from "this statement has been expressed without proper thinking by many people" to "everything randomA does is done without thinking". My statement was correct, with proper arguments, and you should try to relax a little.
    – SJuan76
    Jul 13, 2014 at 17:33

2 Answers 2


Instead of trying to add such a restriction, you could alternatively make your library GPL, or dual-licensed - GPL & commercial, with an individual pricing for each one who want to use the commercial version.

That way it will still be possible for someone else to write a competing open-source software using your lib, but it will typically discourage bigger commercial vendors. When someone is really going to buy your lib, you can still decide in each case whom you will sell the lib for a moderate price, or whom you will make an offer so expensive he won't buy it.

  • I have a question: I thought Open Source and those kinds of initiatives are supposed to be like Intellectual Welfare where the community (society) or the academia (government) provide for free some tools and resources so that people have access to the most basic mainstream non-competitive non-cutting-edge technologies (need)? Was I wrong?
    – InformedA
    Jul 13, 2014 at 17:03
  • "... whom you will make an offer so expensive he won't buy it" sounds like discrimination to me.
    – InformedA
    Jul 13, 2014 at 17:12
  • @randomA: maybe it is a discrimination, but I believe in most western countries software prices be completely negotiable. This will probably depend on the laws of the OPs country.
    – Doc Brown
    Jul 13, 2014 at 17:32
  • @randomA: to your first question: yes, I think that's one of the goals. But as you surely know, the GPL inventors wanted more, they enforce anyone who reuses this tools and resources in public to open source there "derivative work" under GPL as well. For the case of the OP this will enforce a competitor of the original software to open source his code as well, given he reuses the lib of the OP. For most commercial competitors this will effectively work like a ban.
    – Doc Brown
    Jul 13, 2014 at 17:43
  • I thought that is the PRIMARY and the MAIN goal of open source. So when open source software has some terms that seem inconsistent with that I am like 'duh.. what is this'. Anyway, thanks for the answer.
    – InformedA
    Jul 13, 2014 at 17:47

It is legally possible to add such a restriction to your license, but I would strongly advise against it.

  1. Such restrictions take the license out of the realm of open-source software. All commonly accepted definitions of open-source disallow such restrictions on the usage of the software.

  2. Drafting such a restriction so that it would hold up in court is hard and the gain is very small.

If you were given the specifications for the file format without such strings attached, then the chances are that the company feels secure enough that they don't fear competition from others that can work with their file format. Thus there is no need to restrict the usage of your library.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.