14 Jul, 2009, Silenus wrote in the 1st comment:
Votes: 0
I am currently working seriously towards releasing an almost compatible LPC "compiler" which would be the first step in developing a full driver. The question I have pertains to licencing issues. My main concern in releasing the source code is that I may if I license it under something like GPLv3 is that I would lose control over the project quite early in the process due to the possibility of someone forking my project. Are there special "open source" licenses out there which might protect me from this sort of problem?

Thanks in advance,

Silenus.
14 Jul, 2009, David Haley wrote in the 2nd comment:
Votes: 0
What exactly are you trying to prevent? It sounds like you want to allow distribution but prevent modification. Is that correct?
14 Jul, 2009, Silenus wrote in the 3rd comment:
Votes: 0
I guess that sounds almost correct. I guess I would like to at this point prevent distribution of modified versions (though I may change this policy in future) though they may submit patches back to me which I would incorporate then into the project.
14 Jul, 2009, Cratylus wrote in the 4th comment:
Votes: 0
Silenus said:
I guess that sounds almost correct. I guess I would like to at this point prevent distribution of modified versions (though I may change this policy in future) though they may submit patches back to me which I would incorporate then into the project.


http://en.wikipedia.org/wiki/Open_source...

As a non-expert, it appears to me that restricting the distribution of the modified
source is incompatible with the OSS standard, except if you allow distribution
of patches along with the source.

It sounds like what you want to do is be the single arbiter of what is and isn't
official SileSoft, which I think is reasonable, but in my opinion not really the
main thrust of OSS philosophy. Unless OSS does something you want, you
might want to use some proprietary license that avoids ambiguity.

I say this because although I think you can do what you want with this
patch exception, the nature of the OSS community is such that I would
expect them to assume you're using OSS licensing in order to maximize
the freedom of the code (the point of OSS) and not to maximize your
control over its distribution (not the point of OSS).

-Crat
http://lpmuds.net
14 Jul, 2009, bbailey wrote in the 5th comment:
Votes: 0
Silenus said:
I guess that sounds almost correct. I guess I would like to at this point prevent distribution of modified versions (though I may change this policy in future) though they may submit patches back to me which I would incorporate then into the project.


You'll want to investigate proprietary licenses. The right to make modifications and distribute them, both independently and as a derived work, is a core tenet of open source. By "open source", I mean all OSI-approved licenses that comply with the Open Source Definition and are approved to use the OSI Approved License trade mark. Essentially, that's every license that is approved for use by projects on sites such as SourceForge, Google Code, and other sites that host open source software.

You can, of course, release new versions or re-release old versions under whatever license terms you wish so there's nothing stopping you from using a proprietary license until the project matures and then begin distributing it as Open Source.
14 Jul, 2009, David Haley wrote in the 6th comment:
Votes: 0
I think you first need to figure out exactly what you're trying to achieve. But then I would suggest thinking about what Crat said; what you're doing is somewhat unusual in the open source community.

For example, what happens if I modify the source only slightly to suit my needs, and then want to release my codebase? Your license forbids that. What if I modify it, submit the patches to you, but they are not acceptable to you? Well, I still can't distribute my code, because of your license. In other words, I almost might as well not even have the source code, except perhaps that it might help me debug stuff.

Perhaps you are placing undue weight on the dangers of forking.
14 Jul, 2009, elanthis wrote in the 7th comment:
Votes: 0
Forking is a core part of OSS. Without the ability to distribute modified versions, there's no reason to even release the source at all. The source is entirely useless to anyone.

Most OSS projects avoid forking by having healthy upstream communities. Basically, if you release a codebase, and then are a dick and refuse patches left and right or otherwise try to maintain totalitarian control over everything, the project will fork. If that's the kind of "leader" you want to be then you might as well not release the source, because nobody is going to want to work on your project anyway. If, on the other hand, you are open minded, build a strong community base, and encourage participation, then forking isn't likely going to happen anyway, because nobody will have a strong need to do so in the first place.

If forking does happen… why care? Let the fork live. Either it dies out and is irrelevant, it turns out to be chock full of good ideas that you can just pull right back into your code (thanks to the GPL), or it turns into something very different and hence orthogonal/complementary to your original project. There isn't a bad outcome to forking, unless of course you through your own actions make the original project suck more than the forks and marginalize yourself. You really have to work hard at screwing yourself and your users over to achieve that outcome, though.
14 Jul, 2009, Silenus wrote in the 8th comment:
Votes: 0
Are there a list of standard proprietary licenses on a web site somewhere which comes close to what I am talking about? I am actually somewhat aware of the fact that what I am talking about isnt quite in keeping with the spirit of OSS. Are there also hosting sites which allow for such licenses to be used?

The server I am working on has a builtin programming language so I suspect ppl would regardless be free to distribute libraries written in that language(LPC like) independently of the driver. My main concern is that before the product matures into something useful that someone may take the current code and start developing it independently (probably the probability of this occurring is pretty low) starting two parallel tracks before I get everything in place.
14 Jul, 2009, Cratylus wrote in the 9th comment:
Votes: 0
Silenus said:
The server I am working on has a builtin programming language so I suspect ppl would regardless be free to distribute libraries written in that language(LPC like) independently of the driver. My main concern is that before the product matures into something useful that someone may take the current code and start developing it independently (probably the probability of this occurring is pretty low) starting two parallel tracks before I get everything in place.


I think the question being asked of you is why that is a bad thing.

I know this doesn't answer your question, but maybe talking over your motivation
might help you conclude that what you're worried about isn't actually a problem.

-Crat
http://lpmuds.net
14 Jul, 2009, David Haley wrote in the 10th comment:
Votes: 0
It's rather unlikely that somebody will take a project still in heavy testing and decide to run with it. It's not like there are programmers behind every bush just waiting to get their hands on a half-complete compiler/VM to go nuts with. I'm not really trying to be funny here; I think you're overestimating the chances of this actually happening, and even if it does happen, the chances that it would actually make a problem for you.
14 Jul, 2009, bbailey wrote in the 11th comment:
Votes: 0
Silenus said:
Are there a list of standard proprietary licenses on a web site somewhere which comes close to what I am talking about?


http://en.wikipedia.org/wiki/List_of_sof... is a reasonable starting point for investigating common licensing options. Some of Microsoft's Shared Source licenses (the Microsoft Reference Source License in particular) would probably be a good fit.
14 Jul, 2009, Silenus wrote in the 12th comment:
Votes: 0
Well there is a second concern of mine which is somewhat controversial perhaps w.r.t to the l LPC community. The project I have tries to stick close to the MudOS/FluffOS version of LPC but has some minor differences due to my effort to reserve certain symbols for future development and ideas. I suspect that for alot of the members of the community who have been looking for an open source LPC driver with which one can get around the no-profit clause it would be relatively easy as the product matures to reverse some of these changes before I have completed implementing/experimenting with these ideas. This from my standpoint a little problematic, basically I would prefer that this vetting process not be taken out of my hands so to speak.

As for releasing source which cannot be modified being useless. I suspect that might be a bit too strong of a statement since the relatively successful dgd driver which has one of those free for non-commercial use (but otherwise pay me) licenses seems to see a lot of use.
14 Jul, 2009, David Haley wrote in the 13th comment:
Votes: 0
If you don't want people using it until it's ready, why are you releasing it at all? Are you only trying to provide a preview for testing purposes?

Silenus said:
As for releasing source which cannot be modified being useless. I suspect that might be a bit too strong of a statement since the relatively successful dgd driver which has one of those free for non-commercial use (but otherwise pay me) licenses seems to see a lot of use.

A non-commercial license is very different from a license that prevents any distribution of modifications.
14 Jul, 2009, Cratylus wrote in the 14th comment:
Votes: 0
Silenus said:
This from my standpoint a little problematic, basically I would prefer that this vetting process not be taken out of my hands so to speak.


There's this awesome movie which I won't spoil by saying
the name, but it has this character who is horribly tormented
by supernatural creatures.

Driven to desperation and despair, he consults his spiritual
advisor. His advisor explains that to a soul that is clinging
to its mortal shell, the spirits that have come to escort it
seem like foul, slavering demons from hell, tearing his flesh.

To a soul that lets go of its mortal shell, the spirits seem like
angels, lifting from him the burden of things he no longer needs.

It's all in how you look at it.

-Crat
14 Jul, 2009, Silenus wrote in the 15th comment:
Votes: 0
I think IIRC(but my memory is hazy) DGD has some special clauses w.r.t to patches. I.e. you can distribute patches but not with the original source or something to that effect.
14 Jul, 2009, Silenus wrote in the 16th comment:
Votes: 0
Actually *sigh* I am not too good with illustrations Crat. I sort of think I get your point but I am not sure. My understanding is the Dead Souls also has a proprietary license and perhaps I am a little curious as to why you elected to go this route as well over just making it OSS (I know that there is also a PD version which is slightly dated compared to the current release). I hope I am not putting you on the spot so to speak(I am assuming most of the people here are aware of this already).
14 Jul, 2009, Scandum wrote in the 17th comment:
Votes: 0
It's indeed problematic when people start messing with the actual protocol. Like Cratylus adding support for: if (1d10 > 5) and releasing it, which wouldn't be that a big problem, except that, knowing Cratylus, he'd probably add something lame / ugly looking instead, like: if (1 "_dice_" 10 > 5).

As a side note, micro LPC / Pike can be used commercially.
14 Jul, 2009, Silenus wrote in the 18th comment:
Votes: 0
Pike is fairly incompatible with most LPC variants and would require a reasonable amount of hacking to get working as a mud server compatible with one of the more mud oriented LPC branches.
14 Jul, 2009, Cratylus wrote in the 19th comment:
Votes: 0
Scandum said:
It's indeed problematic when people start messing with the actual protocol. Like Cratylus adding support for: if (1d10 > 5) and releasing it, which wouldn't be that a big problem, except that, knowing Cratylus, he'd probably add something lame / ugly looking instead, like: if (1 "_dice_" 10 > 5).

As a side note, micro LPC / Pike can be used commercially.


Starting to sound like a personal feud Scandum.


Silenus said:
Actually *sigh* I am not too good with illustrations Crat. I sort of think I get your point but I am not sure. My understanding is the Dead Souls also has a proprietary license and perhaps I am a little curious as to why you elected to go this route as well over just making it OSS (I know that there is also a PD version which is slightly dated compared to the current release). I hope I am not putting you on the spot so to speak(I am assuming most of the people here are aware of this already).


I actually want to be in this spot.

I release PD versions of my software as often as practical. This is
because I picked it up in PD form and I love the freedom that gave
me, and I want to let others have the same freedom.

The proprietary version is largely proprietary due to it containing
stuff that does not belong to me. I also don't like making my documentation
public domain. I don't really know why.

But the code itself…I'd be tickled pink if someone made their
own DS derived fork. This is because I'm happy that it would
get use. It's just a hobby, you see, and it makes me feel good
that other people find it useful.

Even if they did something with it I really hate, though, it wouldn't
actually cause me any harm. I'd still do what I do. So I just don't
feel I have anything to worry about. And that's why I don't really
know what you're worried about.

I'm not dissing proprietary licenses. Use one if it suits you.

-Crat
http://dead-souls.net
14 Jul, 2009, Silenus wrote in the 20th comment:
Votes: 0
Ok thanks Crat. So I guess you have a slightly different situation than I do- I wasnt aware that DS contained code which is either proprietary or more likely where the status is unknown. Since so far I have written all my own code (except for the LLVM-2.5 library I am using and ANTLR 3.1.3 which I am using as the parser generator). I am just vacillating on this point I am not sure it would be a problem for me. I am just in the I am not sure camp atm.

To answer David's question as well- I am trying to gauge peoples interest in such a project and get some feedback on what I am doing thus far. Also perhaps some people might be interested in seeing how relatively easy it is to interface with LLVM and adopt this approach in their own projects.

Quote
http://en.wikipedia.org/wiki/List_of_sof... is a reasonable starting point for investigating common licensing options. Some of Microsoft's Shared Source licenses (the Microsoft Reference Source License in particular) would probably be a good fit.


Thanks for this I will look into it.
0.0/27