|
-
October 24th, 2006, 06:49 PM
#1
Open Source Question
Hello,
I am curious about the following regarding open source code. Imagine 5 people download the Firefox source code and makes major changes to it, ading features that they want, and removing things they don't like etc.
1)Who then decides which codes changes make it to the Firefox program that is available?
2)Can each of those versions made available as Firefox online, resulting in many different versions of the same thing?
Also, let's say I write some code, and then make it open source. Does this mean that even I as the original writter of the code, if I want to use it in another project, that new project has to be open source too?
Basically, I like the idea of open source and would like to share some code which would be helpful to others. However, I am a bit worried about people making changes to it that I may not have wanted(project going wrong direction etc), and also perhaps being too many different versions of the project. Also it woud seem strange if I could not use the very code I wrote, in future projects I write.
Perhaps what I need is a "Dummies guide..." but so far I have come up with legal-like documents. Anybody already know the answer to the above questions?
Thanks in advance,
Aristotel
-
October 24th, 2006, 08:41 PM
#2
Re: Open Source Question
In order for changes to take place and be accepted into the real Firefox browser, you have to be part of the development team.
If the post was helpful...Rate it! Remember to use [code] or [php] tags.
-
October 25th, 2006, 03:03 AM
#3
Re: Open Source Question
Hi,
So what stops people who are not part of the Firefox developement team from putting out their version of Firefox based on the original Firefox code, and also calling it Firefox?
PS: We are using Firefox simply as an example...I don't code for Firefox, I just love the end product
-
October 25th, 2006, 06:59 AM
#4
Re: Open Source Question
There are several open source licenses.
Firefox is under MPL.
The most popular licenses are GPL, LGPL and BSD licenses.
With GPL, you can modify the code as you want, and distribute modified versions of the project, typically under a new name.
Quite often, a GPL project is "forked", so there is a new project created from the other one, and both projects evolve parallelly.
But, theorically, there can be thousand forks, and thousands modified versions of the project.
That's why it's usually easy to find an open source project meeting exactly your requirements and having the flavour you want.
However, with the GPL license, any modified version must:
1) Be under GPL too (e.g. you can't create a commercial software from it, nor even modify a bit the license).
2) Contain a link/way to get the non-modified version.
3) Contain a link/way to get the text of the GPL license.
With LGPL, (Lesser (aka Library) General Public License) you can create a project using the library under the license you want (e.g. commercial license) but you must mention that you use this library somewhere in your documentation, and IIRC, a link to the LGPL license & the code of the library.
Moreover, if you modify the core library itself, you can't redistribute this modified library under whatever license you want. You must distribute it under LGPL, with a link to the original code.
I don't know very well the BSD license, but, AFAIK, it allows you to produce software having a different license, from a project under BSD license.
A project can also be under public domain. You give the source code and don't claim any property on it, so anybody can use it how he wants, a bit like the code I post below:
Code:
/* hello world C code */
/* I don't claim any property on this piece of code. Use it how you want, without having to mention my name */
#include <stdio.h>
int main() {
printf("%s", "hello world!");
return 0;
}
Finally, there are many open source licenses, specific to a particular software, such as the Vim license.
"inherit to be reused by code that uses the base class, not to reuse base class code", Sutter and Alexandrescu, C++ Coding Standards.
Club of lovers of the C++ typecasts cute syntax: Only recorded member.
Out of memory happens! Handle it properly!
Say no to g_new()!
-
October 25th, 2006, 07:04 AM
#5
Re: Open Source Question
EDIT: Answered better by SuperKoko. I misunderstood.
Last edited by PeejAvery; October 25th, 2006 at 10:05 AM.
If the post was helpful...Rate it! Remember to use [code] or [php] tags.
-
October 25th, 2006, 07:05 AM
#6
Re: Open Source Question
"inherit to be reused by code that uses the base class, not to reuse base class code", Sutter and Alexandrescu, C++ Coding Standards.
Club of lovers of the C++ typecasts cute syntax: Only recorded member.
Out of memory happens! Handle it properly!
Say no to g_new()!
-
October 25th, 2006, 04:17 PM
#7
Re: Open Source Question
Hi!
That cleares things up somewhat! Thanks also for the links. I will look into them in detail now.
Ciao!
-
October 25th, 2006, 08:00 PM
#8
Re: Open Source Question
To reinforce what SuperKoko has said, "open source" is not the same thing as "unrestricted use".
Open source simply means that you can see the source code. But just because you can see the source code doesn't necessarily mean that you can use it too. You must read the licensing terms and restrictions.
Mike
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|