Silverstripe and BSD license situation [closed] - open-source

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 8 years ago.
Improve this question
I have situation where developer claims that website which she is working for my firm is based on opensource CMS/framework Silverstripe. Second claim is that he want his code to be implemented on machine where I dont have access. In addition I have possibility to switch domain on/off from IP he provided me. I can't see actually what he coded and what is feature of cms.
My question is: Is that situation usual? And what are my rights as customer according to BSD licence? Can I view the code he is coding? Especially i have impression that he is renting software to me in that way. But want to be paid in terms of architect and develope hours. Can someone clarify situation to me?

It is "usual" for a developer to take advantage of open source components - in fact, there are many advantages of using proven open source components instead of building them from scratch (e.g. speed up the development, widely used open source component can be pretty robust etc).
You do need to make sure there isn't any licensing concerns, but in this particular case, you should be fine with BSD license, as it is one of the most permissive license out there. All you need to do is meet its attribution requirements (essentially including the original copyright and license text in tact).
RE your right to the source code... it really depends on what your contract is with the developer. The BSD license does not force developers to release any derivative work (i.e. work based on the BSD licensed code) to be also released under open source, and/or make the source code available. So you can view the source code of Silverstripe from its website (Silverstripe being open source), but your developer does not need to make the source code of her code and/or any modification she might have made on Silverstripe available to anyone. She could even sell Silverstipe code unchanged should she want to.
So whether you should have access to your developer's code is really governed by what agreement you have with the developer regarding her work i.e. whether you own all the IP produced by the developer including the source code.

IMHO the license is pretty clear: As long as you keep the copyright notice, you can do whatever you want (change, sell,...).
So what your developer is doing, is ok in terms of the SilverStripe license. The rest is up to your contract.
Is it usual? While I would try to avoid this and it's probably not the norm, it's hardly unusual. However, you are bound to the developer in the future, which might lead to problems:
"Change developer? Sure you can — if you start from scratch again."
"My rate just went up, but I'm sure it's cheaper than starting over."

Related

Include Highcharts in open-source project [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
I would like to include the Highcharts library in an open-source project, scala-notebook, and I'm not sure, whether it's allowed according to the Highcharts licence.
scala-notebook is a web-repl (read-eval-print-loop) or web-console (similar to IPython). One can create new notebooks and write code there that will be executed on the server side, and results would be rendered on the page (in the output section). I would like to give the user the ability to define chart data in the code and then it would be rendered as a chart using the Highcharts library. It's distributed under the Modified BSD License
(also known as New or Revised BSD).
So my questions are:
Am I allowed to add the Highcharts library in the project distribution?
If yes, then what should I include in order to correctly cite Highcharts licencing information in my project (for example I can add it to the help section of the page and/or add the license to the root of the project's file tree, etc.)?
My project is open-source, so I can imagine, that someone will download it and will deploy it internally at his/her company. I also want to make sure this use-case is permitted (according to the license).
IF you are using it non-commercially, THEN you are allowed to use it according to the CC BY-NC.
As far as I can tell you should be allowed (since it doesn't have the share-alike clause) to redistribute under any license you please; if this is morally justified is another question.
Note that the Creative Commons licenses are not aimed for software, so the waters with regards to linking, combining with other licenses etc. are a bit murky.
It might be best to ask the people from Highchart your question (or even send them a link to this Stack Overflow question).
You can use it with some open source projects, however you can not use it with Free Software.
Unfortunately it is a copyright violation to use Highcharts with GPL code as the commercial restriction violates the GPL.
This is a problem unfortunately, as even the Highcharts website potentially violates the GPL by including Highcharts with the Joomla code, although there is an argument that as long as Highchart does not distribute the code from its website it might be in the clear.
Theres no concievable way to use Highcharts with an AGPL website.
The problems with combining "not for commercial" and GPL code are explained here.
https://softwareengineering.stackexchange.com/questions/214904/is-free-for-non-commercial-use-license-compatible-with-gnu-gplv3-license
At the moment Highcharts offer an OEM License which "allows you to distribute Highcharts in your software or hardware product", maybe the've added this after (and because?) this question arose. The OEM license agreement will give you information on how to use it.
Anyway, I don't think any other license of the product will allow you to do this.

Guide on writing my first open source software? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
Since last August 2009, I have been working on project but then decided to release it as an open source project. The purpose of this project is to provide an alternative to existing commercial & expensive solution.
So my question is, how can I get started ? The prototype has been ready since May and now being rewritten in Java. Which license type do I need to pursue ? LGPL? MIT?
Thank you,
John.
Figure out what you want people to be able to do with it.
Do you want people to be able to use it for anything, including commercial stuff, or do you want it to be locked down as open source crazy GNU stuff?
This list should be a good start.
http://www.opensource.org/licenses/category
Next, pick a place to host the project. Google Code is a great one and I believe they require your project is a certain license. So that makes your decision for you.
Another thing you might want to consider is source control. If you like SVN, Git, or something else that can matter. GitHub is a good place for git projects and almost all of your hosts will have svn support.
There are numerous Open Source licenses, but the ones I'd recommend are either BSD-style or the GPL. You'll have to decide which you like. Should people be able to take what you've done and wrap them into proprietary software and sell it, without necessarily giving back their changes? Up to you. A BSD-type license might get you more users, and a GPL-type license might get you more development help.
If you're thinking of dual-licensing, with an open source and a commercial license, you almost certainly want to go GPL for the open source license, since BSD-style doesn't leave you with enough extra rights to sell.
You keep the copyright on everything you do that's not for hire, unless you explicitly give it away. If you start getting help from other people, you need to decide what to do. You can ask for the copyright to be transferred to you, which will keep your complete copyright control at the expense of discouraging outside developers. You can trademark your software, to keep the branding, and this is independent of who owns what copyright. I'd advise talking to a lawyer about that, as trademark law isn't as clean as copyright law, and can vary from state to state. If you live in the US, you can probably get a lawyer referral from your local bar association, and it shouldn't cost much for an initial consultation.
As Jonathan said, check the OSI for information on possible licenses. Pick one from there. They'll all work, more or less, unlike a license you might write up (unless you know what you're doing). Some sites, like Sourceforge, don't allow projects that are not under an OSI-approved license, so you'll get more options with an OSI license. Moreover, lots of people are already familiar with the standard licenses, and you won't have to explain your license to them.
You could use any of the main Open Source licences - it is going to depend on what you want from the project.
GPL
Berkeley (minus advertizing clause)
MIT
Apache
You probably wouldn't use the LGPL unless what you're writing is a library.
So the Open Source Initiative for information abuot possible open source licences. Do not try to invent your own.
If you want be protective about the software you could for example one of
GPL
LGPL
But in many cases a more permissive license attracts more users.
MIT
Apache
are quite permissive.
If you want to do dual licensing then consider using GPL and a commercial license.
Before you pick a license and you have to answer yourself :
Do I want forks?
Do I want commercial usage of my software?
Do I want that my software is included in commercial software?
Do I want to enforce any license on forks?
Pick an already established license from here : http://www.opensource.org/licenses/category
If you want to setup your project then just have a look at GNU Hello, which I think is a good template to start setting up an open source project and regrading license it depends what you want from projects as explained by others already.
TL;DR Legal allows you to look up open source software licenses and get a summary, in plain English, of what you Can, Can't and Must do with the software. It also allows you to see the affects of combining two licenses, although that option is misleadingly called "Compare Licenses."

What OSS Licence Should I Use? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I am considering starting an OSS project and would like some advice.
I would like to use a licence that allows free use of the project for personal and non-profit use but would allow me to charge for a commercial licence (like or similar to http://www.extjs.com/company/dual.php).
Could someone please advise or link to some articles on how to approach this? Thanks in advance.
As the Open-Source-definition describes, you cannot limit the usage of your project, if you want to stay open-source. In other words: you cannot forbid a commercial use for an open-source-app. So you can choose another (non-open-source) license, that fulfills your demands, or you choose another way.
One possibility is to release only the source under open-source-license and have another license for binary distributions. As far as I know thats true for Java. That works good, if the build of your app is somewhat complicated.
You can release your app under the GPL-license. That does not forbid commercial use. But if some derivate work is created, it has to be GPL-licensed too. That works well for libraries or similar stuff that isn't used alone, but in a merged product. EDIT: As DrJokepu mentions, using a GPL-framework in a webserver-stack would help to avoid to release your own sources. That's why one extension to the GPL is the Affero GPL, that need you to release your work under the same license (AGPL) even if you don't release it, but only use it to build a public webpage. So for webservices you need the AGPL to achieve the same result.
You can't us an OSI-certified Open Source license and ban commercial use.
If what you want to do is stop somebody from taking your software and selling their version as some sort of shrink-wrapped software, you can use a GPL-style license. For maximum compatibility, I'd recommend GPLv2+ (Gnu General Public License, version 2, or any later version at your discretion). With that license, somebody can sell your software, but they have to make it clear that anybody can get the source, and that it can be freely redistributed. That would, I think, cover most of what people want to ban as commercial use.
The producing open-source software book has a great section on dual licensing. It outlines the approach where a single entity, such as a foundation "owns" the copyright to a projects source.
The foundation chooses to make the source available under two different licensing schemes, one closed and another that is open-source. For your particular case you will want to ensure that you stick with a strong copyleft license (i.e. such as GPL) to prevent commercial derivative works of the freely available source code.
However, as others have noted, this does not prevent commercial entities from using your software, just from taking your work and selling it to others. In some cases this works out, as strangely enough, many organisations would rather purchase something than download and use something for free. These are the same sorts of organisations that need legally binding contracts with vendors and some form of support. I.e. When you sell software you are actually selling a whole bunch of other services at the same time as a "shrink wrapped" product.
Now, how can code be kept closed and sold, as well as released under the GPL license? The mind bending legal part of the whole arrangement, is that contributions of IP to the foundation are not made under the GPL license. Rather, developers give their IP to the foundation under "contributor agreements" which pass on copyright of their changes to the foundation and permit the foundation to release the code under two different licenses. This last little caveat is the big downside to dual licensing, sometimes developers are not interested in contributor agreements, they want there changes only available under the open-source license and nothing else. Quite a few contributor agreements that kick around the place, but here is the one that sun uses for MySQL.

What are the steps in licensing a library? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
I wrote a library and I would like to make it open-source, but I am afraid of others stealing it and taking ownership of it. I am very new to licensing software.
What should I do and what are the steps in licensing my software.
Well the first step is choosing what licence you want to release your software under. The Open Source Initiative has a useful page listing a lot of them and there's a good comparison on the KDE web site. There are lots of different options - you need to work out what you're happy for other people to do with your code. Are you happy for it to be included with commercial applications without the source code? Modified without changes being contributed back?
Then you just need to work out what the licence requires - you may just need to include a licence.txt file with the software, or apply a comment at the top of each source file.
Find an appropriate hosting site which is happy to use that licence, and you're away.
GNU Library License
Read LGPL.
Alternatives
There are many other licenses from which you can choose.
Application
Usually it is sufficient to include documentation in the header of all source files that refers to the licensing conditions. As well, it is common to include a text file containing information about how the software can be used.
Software Theft
Once publish your software under an open-source license, typically that grants everyone the right to use the code for any purpose they desire. Normally you needn't be concerned because that is the point of releasing the source code. In fact, you want to encourage others to take your software and use it. Something that is given away for free cannot be stolen.
Ownership
The real concern here, in my mind, would be people taking the software and claiming it as their own. It happens (DVD Jon, Microsoft, and SCO to name a few), and there is not much people can do about it.
If your concern is about people branching your software to create other versions, that seems more like cause for celebration. It implies that your software has been well received, so well that other people want to take it in directions that they feel solve a different niche of problems. This should be encouraged.
No matter what happens, though, you will retain ownership of whatever you produce under copyright law (at least in Canada and the United States).
Remember to consult your friendly neighbourhood IT-specialized lawyer for advice.
Custom License
Also, even if you release the source code under an open-source license, it does not mean that that is the only license you may associate with the source code. It is entirely possible that someone will approach you requesting different terms. For example, they might want to create and share a proprietary solution that uses your technology, without having to release their changes to the world. You might choose to offer them a commercial license under mutually agreeable terms and conditions.
Be careful, though: third-party contributions donated to your project, under the terms of the open-source license, are not yours to distribute under a different, custom license. If you want the flexibility of creating a custom license, you must have the ability to identify and extract your personal contributions.
If it's open source, you are relying on the honour of the people who use it, whatever form of preamble you put in each file and include with the distro bundle.
You probably want to start with the OSI licensing page.
If you make your code open source, you are explicityly allowing other people to do pretty much anything they want with it, with in the case of GPL some restrictions on what they must do ifv they choose to distribute it. This is not "stealing". If this worries you, don't make it open source.
If you want the source code to remain free but you don't require the software using your library to be free, you should use the LGPL library. Link
Otherwise, if you want the software using your library to be free, go for the classic GPL. Link
If you are afraid people can steal your work, well, maybe free licences aren't for you :-)
Instead of stealing them, they may use your code, enhance it, redistribute it etc. If you don't know much about this philosophy read here
You can start by looking at the GNU "How to use GNU license for your project" page.
However, the whole idea of open-source is sharing your code with other people. If you're afraid of "others stealing it" - keep it under your hat.
When you licence your library you still retain the copyright. The licence governs what people can and cannot do with the library. You can select from many different open source licences. Without knowing anything about how your library is intended to be used, I'm going to make the assumption that it needs to be compatible with a proprietary licence.
MIT
Permit anyone to freely use without restrictions.
LGPL
Permit anyone to freely use provided modifications are made available.
I strongly encourage you to read the terms of these licences.

Open Source license that requires giving credit in user's web site [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
I have this small code library that I'm considering releasing into Open Source. I want to release it under something similar to MIT License, i.e. no significant restrictions, however I would like to require that if you use my library on your servers, you have to give me credit on your website.
Basically, I want a license which is to MIT License as AGPL is to GPL.
Does something like this exist, or do I have to write my own?
Or is this just a Really Bad Idea?
EDIT: I guess I should have left out the "write my own" part. I'm not a lawyer, and I don't want to pay one. I just thought it would be nice to be able to tell if someone's using my lib with a simple Google search.
Look here :
http://www.opensource.org/licenses/category
and pleeeeeeeeeeease don't write your own!
From Aaron Digulla comment (Thank you Aaron):
It takes a lawyer a long time to write a license that will actually hold in court (and why would you want a license that doesn't?) Hundreds of people all over the world worked several MONTHS on GPL v3! – Aaron Digulla
On the other side :
When you work in a company and you will use opensource, you normally can choose
among the licenses that are "approved" in the company :-).
a new license is normally a NO GO :-(
ATTENTION to Kodisha: From the cc-site:
Creative Commons licenses should not be used for software. We strongly encourage you to use one of the very good software licenses which are already available.
PS : see What Open Source License to choose?
It turns out that CC is not so great for software :(
CPAL is good alternative, because it has better definition of "source code"
(which CC don't have)
it's based on Mozilla Public License, but it has Attribution .
License is approved by OSI in 2007.
http://opensource.org/licenses/cpal_1.0
and here is example of license that facebook uses for FBOpen Platform.
http://developers.facebook.com/fbopen/cpal.html
Maybe Creative Commons Attribution licence?
This license lets others distribute,
remix, tweak, and build upon your
work, even commercially, as long as
they credit you for the original
creation. This is the most
accommodating of licenses offered, in
terms of what others can do with your
works licensed under Attribution.
http://creativecommons.org/about/licenses/
Please remember: there was a good reason why MIT and BSD removed the requirement for attribution from their licenses.