Slashdot Mirror


On the Ethics of a Code Split?

McWizard asks: "We've recently had a code split at a project I'm leading. (No name given, as this is a question, not an advertisement campaign). While both projects have done some major design decisions in opposing directions, we've been keeping a close eye on the changelog of the spinoff for small changes that could be used. So, whenever we've found an interesting piece of code (mostly GUI stuff, nothing longer than 20 lines of code), we transferred it to our project and gave credit to the spinoff team in the changelog. What does Slashdot say on that matter? Is this unethical or are such things fair game?" "Yesterday, I was contacted by the leader of the spinoff project who told me that he's quiet angry at us for doing that and that it's considered unethical and rude to copy code from the spinoff. As both projects are under the GPL, we have an opposing opinion on that matter and we've more than once invited him to copy code from our project. Nevertheless he's thinking about obfuscating his changelog and only open the source as packages when he's doing a release, which is, as he says, his right under the GPL."

7 of 448 comments (clear)

  1. Re:On the Ethics of a Code Split? by IO+ERROR · · Score: 5, Insightful
    Is it unethical? No way, it's GPL code, you have every right to take the code and put it back in the original project. Access to, and reuse of, the source is, after all, why the project is under the GPL in the first place. If somebody forks, he has to release under the GPL. And don't let him confuse the issue. If he's got a CVS repository open to the public, that's "distributed" code under the GPL.

    If the idiot who forked from you really wants to go closed source with it, he's going to have to change the license, and I bet most of that code was written by people on your side of the camp. I wish him lots of luck getting them to agree to license it to him under closed terms. If he just wants to close the CVS repository, or obscure the changelog, that's up to him, and the GPL permits this, but that would seriously hurt his fork, as people would be far less willing to get involved with it.

    So in short, it's not at all unethical. But is it rude?

    Again, I'm going to say no. It is, after all, a GPL project. You have to expect your code is going to wind up reused in other GPL projects sooner or later. That's a sign that you're writing good code. He should be flattered, not offended.

    In the long term, the politics are likely going to wind up killing one or both projects, so I'd suggest you try to keep the moral high ground, as it were, and let this guy run his fork into the ground. It sounds like he's well on his way there already.

    --
    How am I supposed to fit a pithy, relevant quote into 120 characters?
  2. Re:No problem by Anonymous Coward · · Score: 5, Insightful

    Depends on whether both teams are more interested in politics or good software...

  3. As ethical in return.. by perimorph · · Score: 5, Insightful

    If it's unethical to legally bring in code from the spinoff project with full credit given and the license terms followed, then how could it have been ethical for them to legally take your code base and spin it off within the terms of the license?

    I see both as being perfectly fine, but if they're going to get angry about it, that's just hypocracy on their part. (At least that's what it looks like without reading their side of the story.)

  4. Re:No problem by ClamChwdrMan · · Score: 5, Insightful

    I agree. Why bother duplicate the effort to write the same code between projects. Heck, open source projects should be encouraged to use each others code. That way some things could get done faster, and you already (hopefully) have some relatively debugged code that does what you want. This is probably just a matter of someone having an inflated ego.

  5. As a developer... by jd · · Score: 5, Insightful
    I'd say it's perfectly legal under the GPL - indeed, I asked Richard Stallman to confirm a very similar point, just in case I'd misunderstood the license.


    Is it ethical? Hell, yes! The whole idea of Open Source is to produce the best damn code possible. If it weren't, there'd be no point. It'd just be an ego-trip and flag-waving exhibition. Sure, some projects are just that, and some developers are only concerned with themselves. Such projects and such people rarely last, either in open or closed-source environments. When all you can see is yourself, you're obstructing the view of any goal you might want to reach.


    You cut bits out & give them credit. They do the same with what you produce. In the end, the fork will either produce two completely different products that were initially entangled, or will re-merge when it's finally understood that the different people were viewing the same problem, only from different viewpoints and/or with a focus on some specific part of it.


    For what it's worth, I say go for it. The other person has neither ethical nor legal ground to stand on, if it's GPL, LGPL or BSD.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  6. Re:No problem by nuggz · · Score: 5, Insightful

    If he doesn't like people poaching "his code", he shouldn't use a free license.
    If he starts to obfuscate everything, then he'll likely end up killing his fork anyway.

    Take the high road, continue to use the best available resources (even his code) and document and give credit to the appropriate people.

  7. Re:Spirit of the GPL by Dr.+Descartes · · Score: 5, Insightful

    In addition to the excellent above points, obfuscating the changelog also hurts his project. The true foundation of open source is the ability for Joe Coder to submit patches and additions to the project. He will limit others abilities and/or willingness to commit code to his project.

    The unfortunate aspect of an Ask Slashdot like this is we don't know the other developer's story. The developer has probably missed the point of open source and he's might even be a complete jackass but ultimately he's not here to defend himself. He may have some points missed by the author by mere nature of author's own subjectivity.

    That said, I'd keep on keepin' on. You are well within your rights to use code as long as it's credited. Furthermore, I think it's ethical and in keeping with the spirit of the GPL and open source culture to apply code that makes your application better. The point is to collaborate and make software that Sucks Less.