1

I have found an article with links to compare license types, but as there are so many, it's still very hard to decide, so I will have to keep reading, but what I hope to find are answers to the following:

  • which license is the broadest scope of application and most permissive, such that I can develop many things as individual and stand alone components of a greater whole vision combining these elements, without having to look at multiple license types to suit individual components, and possibly needing a different license type between the components and the whole?
  • having found this license type, is it possible to convert one license type to another, so that any starting points available through other people's projects, can be converted to this common license type, and thus take advantage of that coding shortcut, without sacrificing the simplicity and freedom all these components require to help them go ahead?

Further information:

  • the code I want to develop is itself not a product for sale, and while I would want at some stage to release that code, in the short term, I need to keep it private only to a trusted development team, so that other people's vested interests do not sabotage or undermine in any way the objectives I am pursuing

  • the purpose of all the components is to construct stand alone elements of a whole integrated system, meaning that each provides a function relevant to the whole, but its individual function is also something of purpose even without that whole

  • the reason for the privacy and security concerns is because this is the result of a 30 year academic obsession of mine with the quantification of ecological and social justice and sustainability via the principles of ecological systems modelling and thermodynamics, as a basis for non-species-biased, non-property/trade/currency-based, and non-hierarchical ( anarchic ) justice economics and politics ... so there's a huge amount of work at stake already, even before any coding begins, and the objectives and principles of the whole vision are for the betterment of the world, and so I do not trust this project to just be completely open source from day one, as we live in a world full of people with vested interests who would sabotage and undermine ( both intentionally and unintentionally ) anything which is either perceived as a threat to their interests ( whether it's actually a threat or not ), or where they see advantage in redirecting a project towards their own ends ( and they're foolish enough to think they can second guess 30 years of obsession in a matter of minutes or hours without any comprehension of the reasons for any decisions made )

  • so I am looking for a means to short cut development time, by way of using existing code, without being restricted to a licensing choice being made by others from that existing code, and without being required by any licensing choice to have to expose this code to the open source community as a whole, until it is developed enough to the point of being able to protect itself from interference

Alternative Question:

  • if what I am seeking as a solution to my dilemma is not possible within the way the licenses work, is there some other way of achieving this goal, or will I be forced to code everything from scratch?
3
  • "without being required by any licensing choice to have to expose this code to the open source community as a whole, until it is developed enough" - Do you want to release binary only releases until then, or are you developing it totally privately without releasing it until it is "developed enough"?
    – Brandin
    Sep 24 at 9:16
  • 1
    I think it is important that the license you select is compatible with the licenses of the code you are modifying/reusing/incorporating. It might be impossible to put all of the code under one common license. I suggest to start with a list of all the components in front of you, then check the compatibility based on answers to this question or this page. Sep 24 at 9:32
  • I've rolled back your edits, as they contained no further questions, nor any new information requested by the community. Rather, they seemed to me to be ongoing conversations with the author of your accepted answer, and we're not a discussion forum, we're a Q&A board.
    – MadHatter
    Oct 8 at 9:57
5

As long as you don't distribute further, the license (permissions you give third parties) is quite irrelevant. If you want to publish it, then the license becomes relevant. And what license(s) you select depends on what you want to accomplish. If you want it to be shared freely, but not be used for closed developments, use a copyleft license. If you want maximal reach, select a BSD style license.

As @MadHatter mentions in a comment, you certainly have to comply with the licenses of any pieces from third parties you use/include/adapt in your package. This will obviously limit (or even dictate) the license selected.

Perhaps the site choosing a license is of help here. If at all possible, choose a widely used license, that has been reviewed by competent lawyers, and think through how you will handle external contributions: Either the Linux model (each contributor keeps ownership over their work; simple to handle, but gives each of them some veto power over the whole) or the GNU model (have all contributions written over to some central authority; more bureaucratic hassle, many would-be-contributors won't go for this). Whatever you do, heed David A. Wheeler's advice on licenses.

7
  • 1
    The only thing I'd add is that since the OP mentions reuse of existing code, the choice of licence will also affect what code can be so reused.
    – MadHatter
    Sep 24 at 7:19
  • @MadHatter, thanks. I've included a paragraph on this.
    – vonbrand
    Sep 24 at 17:05
  • 1
    Nice job: +2, if I could!
    – MadHatter
    Sep 25 at 8:35
  • 1
    Thank you, it seems like there might not be any easy short cut to understanding what to do, and I will just have to take the time to read through more of the details of each license to be sure how to go about this and yet still be able to receive support Oct 6 at 23:48
  • 1
    @Mr.President the MIT license virtually puts no other restriction on you than mentioning that the source has been used in the final product (thus giving credit as asked for in the license, but doing so in any distribution, also just binary). Yet that is the minimum one can ask for, and which should always be heeded, especially in academic context: giving credit whom credit is due. We are all standing on the shoulders of giants. Oct 7 at 10:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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