RMS seems to endorse a stance against authorship in free software and he seems to have a problem with the "advertisement clause" in BSD. However, a recent lamer attack against me forces me to revise this issue.
RMS seems to endorse a stance against authorship in free software and he seems to have a problem with the "advertisement clause" in BSD. However, a recent lamer attack against me forces me to revise this issue.
Here is the deal. I have contributed a whole lot (most of the code) to a GPL'd project. There were author comments all around the source that I wrote, and I tried to give credit to everyone who contributed in detail. However, after I left the project, I looked and just a month later, the fucking idiots have removed author comments from the source, hiding just how much I contributed. I consider this a form of plagiarism, and ask you people what you would do. It was the package manager of Pardus Linux, and I am really aggravated about what they have done.
Well within the spirit of the GPL, the spirit of sharing code without responsibility or demands.
It is a double-edged sword: the very thing that allows the science to advance is that same thing that seperates the dependence on egos; as with science, there is no need to cite your sources although doing so is strongly encouraged but it is an honour thing, not a thing carved in the word of law.
The important detail is not whether the future reveres you for your self-less contribution. The important detail is that there will be a future, and you know your part in it, so you have that. More than the ego-satisfaction of knowing your part in that future, dig this: You know that your got your own value from that code as you wrote it, and that is the true value of the software.
Forget posterity and fame. The true purpose is to get the code you need now while freely leveraging prior work, standing on the shoulders of all who went before you, Turing, Lovelace, Babbage, Dykstra, Knuth, everyone. It is nice if that prior art is recognized, and as we see with serious music and art and scientific invention, even when popular culture misplaces honours on the Yuri Gagarin for decades, things have a way of ironing themselves out. So you need not worry, if you contributed astounding innovation, history will probably dig you out and correct the record, but dig this too: Fame is not a good motivation for writing free software so if a slam to your ego stops you, then you really need to re-evaluate why you are in this game in the first place.
And if that bugs you, then maybe you should have gone with the BSD licensing.
if all mention of the ownership of the code has been removed, then that is nothing to do with GPL, it is a straight copyright violation, and, if it is in america, and you have obtained a 'copyright registration certificate', then you are entitled to sue for a hell of a lot of money.
1) I don't believe RMS has a problem with "authorship" depending on how you define it, certainly he is very protective of Emacs (wrt XEmacs) and GNU (wrt the Linux distributions).
2) The problem with the advertising clause are practical, it doesn't scale to many contributors. Imagine an advertisement for SUSE if all the code had advertisements clauses, and they were actually obeyed.
3) If you really wrote author comments "all around the code" I understand why they were removed. A block in the start of the file, plus perhaps a seperate file for the project, should be enough to provide "authorship". The comments in the code should explain how the code works, not who wrote what.
man, of course author comments were only in the beginning of the file!!!!
there is in fact a need to cite your sources, if you don't, it's called plagiarism. this is only half-plagiarism, because it was done to conceal the amount of my contribution. the AUTHORS file is all that remains, but one cannot see what I contributed through that. who knows, maybe in the near future, they remove that too, and then erase the svn logs as well. :(
probably an act of jealousy or something, but the thing is i have never seen something quite like this in my life, nor have i ever done that to anybody, and i find this behavior highly unacceptable. only lamers would do such a thing, and i find it unpleasant that there are so many lamers in the free software scene.
about the contributions inherent, yes i think there are some quite nice codes in there, shows what you can do with python, including some algorithms that i designed.
there should be copyright notices at the top of each file. especially if there are hundreds of files.
it is an unacceptable breach of copyright for such notices to be removed.
i recommend that you threaten to and then initiate legal proceedings against this group.
I don't think that kind of modification is disallowed. Removing references to the software being licensed under the GPL is disallowed, but not removing comments about authorship.
That being said, it's still pretty annoying. Though largely I just trust the version control system to do all of the documenting of who contributed what for me. :-)
One thing you could try pointing out is that their actions make it less likely that others will contribute to the project. One motiviation for contributing is recognition, and when you strip that people have less motivation to do so. So, quite apart from your bruised ego, they are hurting the project.
...but GPL v2 does require putting copyright notices:
1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy <u>an appropriate copyright notice</u> and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
exa: this happens all the time. all I can say is get used to it. The way I deal with it is that people who take the code invariably end up hitting issues that I fixed years ago and I watch and smile as they figure out how to deal with it. Not particularly productive, but it's the best way I've found to relieve the tension.
Some mostly-LGPL project has been using GPL code I wrote as a compile-time option. The project has a few commercial users and have been mentionning now and then that they'd sometime do an LGPL reimplementation. This summer they sponsored a summer-of-code project to reimplement the code as well as a pretty major extension as LGPL. The student is pretty open that he's been looking at my code as a reference, but he never got as far as implementing the major extension. Do I think its a coincidence ? no. Is this plagiarism then ? probably.
The best you can do is to just fart in their general direction. I've had a five-minute look at the code and found two minor issues. I don't feel like sending patches.
I've been more lucky in other projects, so I suppose you win some and lose some.
Well, the thing is, it is really absurd to remove Author: lines from code.
They are about 1) acknowledgement of credit 2) getting in touch with the right guy about the features/bugs in the code.
Some of the code that I contributed to FOSS is unattributed (they stripped my name out entirely). That bugs me. However, I find that code with lots and lots of verbiage is quite annoying. I don't mind if they remove my revision history and just say 'from code by ...' or something like that.
The problem with tons (the majority in my opinion) of FOSS code is that it is shot through (including front material) with text that just interferes with the use of the code. Even in the stuff that I have published as 'stand-alone' examples, I would remove most of the text at the front when using in larger bodies of code.
I have contributed the odd patch to things and not been acknowledged at all in the code. However, I have no problem with that. It's just a little patch and dumping my name in there would just clutter up the code.
I really think that common-sense should prevail. Egos cause all sorts of ridiculous problems in FOSS. I mean that on both sides of the debate. People who have made significant contributions should be acknowledged somewhere prominently enough. There has been more than one example of someone a little creepy shifting credit to the wrong place.
I think that if you could post a link to the before/after thing about which you are complaining it would be more helpful in rendering a judgement. This might be anywhere on the spectrum from legitimate cleanup to preparation to hijack copyright.
just put original sources somewhere .. all other will do Code Search
I don't think you have to assume malice. There are various legitimate reasons to do this. I don't like @author tags in big projects - I think they're perceived more like @owner and that they discourage new people from making any changes to that code, and certainly from putting a lot of effort of their own into it. This is especially bad when it's an outsider contributor or former developer who probably won't continue to maintain the work.
Have you spoken with them about this? Do they know that they've offended you and that you want more recognition than a line in a CREDITS file for all your hard work? I bet they're totally unaware. Maybe if you say it in the right way, they'll add them back.
The notion that RMS is against authors having credit is definitely nonsense. The subsequent GNU FDL expressly mentions, in its preamble, that it "preserves for the author and publisher a way to get credit for their work".
It sounds as though the individuals who have taken over are, after a fashion, scoundrels that you'd not want to deal with. And while they may get away with this for a while, it will presumably cause hurt, eventually.
You'll probably sleep better if you try to forgive them in advance... Living as a victim is never much fun...
We are a government research instute. The project Eray talks about is part of our Pardus GNU/Linux distribution aimed at government institutions, schools and Turkish computer users. All the code we wrote for this project is licensed and published under GPL.
Eray was our employee, and now claiming that we stole his code by removing his comments. First of all, since instute was paying him to develop that code under a written contract, all the copyright for the code he wrote is owned by instute. Second, most of the removed comments contain swearing and unuseful stuff. As in our coding standart, we put author names in AUTHORS file and source code itself only contain standart instute copyright, and GPL license clause. This can be verified by browsing the code.
Eray should do legal action if he doesn't agree with that. Publishing false accusations would only harm his reputation and damages Turkish free software community in general.
I don't claim that anybody stole the code, but I do mean that you are being a fucker by trying to make it look as if I were not the first author. Now the AUTHORS file has been changed, too, making it look as if I made a small contribution, "inactive contributor", and listed as last. I wrote more than half the code. I bet, after I write this, you are also going to remove my name completely, right?????
Why the fuck is this hostility??? Why the fuck did you remove Author: lines then? Who are you fooling?????
you forgot to remove author names from the docs. please do that, too.
contributor means not-author, there, just a fix or maybe some translation. was that what i did, how many of the modules do you think were written from scratch by me??????? look at the svn logs for a change, to see who wrote what!!!!!
i don't care if you don't like me. i don't like you as a person, either. but i will not take any of my words back if you don't credit my contributions properly. as i see it, this is clearly plagiarism, or at least a false attribution to somebody's contributions. you are trying to make me look as just a guy who fixed a bug or two. you are clearly trying to show me as if I am not an author. do you have any idea how long i've worked my ass off for that code?????
unfortunately, because of the nature of GPL, I can't prevent you from making these kinds of changes, but i must say that i am really at a loss about this unprofessional behavior!!!
now, will you credit me PROPERLY???
is to publish the source code somewhere else :(
1) Did you form any kind of understanding written or unwritten between you and the other party?
2) Did you agree to an exchange in which you agree you will provide?
3) Did you turn over your rights based on your work to the other party?
If you answered yes to all of above, then you're screwed. Simple as that.
Eray: If you consider amount of work done in Pardus project, you were a mere contributor, so get over your ego.
You dont have to host source anywhere, our tagged releases contain full release history in an easily accessible fashion.
Pisi is constantly improving, having wrote a few Klines of code once before doesn't give you any right over many other hardworking developers.
In fact, the GPL does not sanction removal of notices. You might examine the section that relates to the terms and conditions for copying, distribution, and modification:
1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
I believe all you need do is place the indication of authorship within a notice that refers to the GPL. The very first major condition for distributing software under the GPL is that the entirety of such notices be kept intact.
Removal or destruction of any part of the notice, means the recipient in effect has no permission from copyright holder to distribute. The GPL does not state you only have to keep merely the reference to the GPL intact, it infact states that the condition is that all notices that happen to refer to the GPL be kept intact (nothing to imply that it is sufficient to keep intact only the specific line or sentence that references the GPL); it would seem, the right to modify only applies fully to the code, and there are significant limits regarding modification or removal of certain notices.
Of course, if you ARE the sole copyright holder for the file in which the notice appears, you can always remove the notice, and still exercise your rights -- choosing to still license under the GPL.
The question of legality for copyright purposes and the ethical question of always attributing all authorship fairly are separate issues.
The GPL doesn't currently force the issue of ethics -- it's always the ethical responsibility of the maintainers and distributors to properly attribute authors and accurately represent their contributions.
At least in the US, if an employee produces a work as part of his employment, the employer owns the copyright. The GPL requirements for notices to be kept intact are part of the license for people who do not own the code. There's nothing to stop your employer from modifying your code, or using it in ways that otherwise are not permitted under the GPL. Now, I do not know if "work made for hire" rules apply in this case.
Unfortunately, many companies do their best to pretend that former employees are non-persons. I don't think it's honest or ethical, but it doesn't appear that there's anything in the GPL (or any possible software license) that can stop it when the people who paid you to write the code take your credit away. Unfortunately, the copyright belongs to them, so they can, license or no license.
In the European community, intellectual property is different from the copyright. If you write some code for a company, the intellectual property still belongs to you (authorship has to be preserved) even if the code is integrated into another development which is sold to another company.
In one of the (many) recent changes to Danish copyright law, a special clause was added so program developed "for hire" is now owned by the employer. This is only true for us programmers, for all other creators the old rules continue to apply: When you create something for hire, the employer has an exclusive license to use it for the purpose for which it was created. The creator maintains all other rights.
I don't know why programmers are treated like second class citizens, or why we put up with it.
Another recent change is that you can now sign away all rights ("ownership"). Earlier you could only sign away specific rights, and any contract that was too broad would not hold in court.
I don't know how much of this has been part of an European "homogenization", and how much is specific to Denmark.
it's not about getting over my ego. having written a few klines amount to more than half of the source code. easily proven from logs. i didn't care to elaborate on the actual figures, but i had arranged that AUTHORS file exactly in the order of contributions. by objective measures. not subjective. if you wonder, the svn logs showed about 45% of all activity by me, the next was something like 15-20% or so, i don't remember who it was, probably baris. anyway, i bet the figures would have changed only slightly by now.
the only thing i know is, i would never do this to anyone. we are all supposed to be brothers in this open source thing, and you are giving me this. again, i am not a "contributor", i am the *first author*.
by this action, whoever did it is really doing great disrespect and I do think it is a very unethical kind of behavior, at least it is nothing of the sort like paying tribute to developers, don't play it down here. :(
i can't imagine how it would be like for new maintainers of a large piece of sofware like kdevelop or noatun to remove the name of the first author who no more wishes to contribute/develop. as i know kde, it would never happen.
so as i said, i don't need a check on my ego. but you need a check on your practice of ethics. please, do it!
OK, I think the case is about: (1) Eray sends out an appeal to retain author section for each program file in the project. (2) Madcat counters stating institute policy of moving attributions to AUTHOR file, leaving only GPL license text for every program file in the project.
Does Eray have the right to protect in order to retain the comment written in the program file?
In my opinion, I think a summary judgment will be handed down right away.
institute policy cannot also be falsely attributing contributions, by saying "inactive contributor", whereas I was an author, not a contributor.
i cannot have any legal recourse, nor do i wish to. i am simply amazed that just because people can do it, will do it.
again there is no legal argument here. my complaint is ethical, and i am feeling really stupid that i am complaining because people (madcat & co) who ought to listen seem to take me for a fool by interjecting bogus arguments :( it is not easy to argue in this case! so let me show you some more.
i just found this attitude unbelievable. can you imagine how it would turn out if it were common practice. write off the names of previous authors. who gives a damn about them anyway? that was my main amazement. i thought, after all, maybe it is just *wrong* to allow any kind of modification in a source code. i am personally considering not using GPL for any public releases from now on. in this case, even if it were another license, it would have no use for me of course, since i don't hold the copyright.
but note, GPL is the exact opposite of holding copyright. the copyright holder simply ensures that GPL is enforced. so in this case, who holds the copyright? is obviously a redundant question. anyone can distribute the source code, and anybody who has the source code is equivalent with respect to mods and distro. but what would happen if everybody started erasing comments from the source code? deleting AUTHORS files? writing them over with junk to hide contributions (namely who wrote what, how much, etc.)??
now if it were another license, it would be a routine violation of programmer ethics. :) but in an open source project, i believe it is important that the contributions of individuals are known. so you know who gave what. and second, you know who to turn to when some major problem occurs, etc. this is my point of view, but as indicated free software bigshots themselves seem to make a big issue out of this, but i wonder how much thought have they given to it?
so, i am hoping that when i distribute a project where madcat was the first author (just a few klines of code, who cares?), with his name removed from the sources, and written as "inactive contributor", he will be fine with it :) don't worry, i can also invent bogus explanations for such unethical acts. and yeah, i'll tell him to get over his ego, too.
the bottom line: especially for intellectually valuable programs (i.e. contains an algorithm/design of your own that you feel is important), I strongly advise AGAINST using GPL if you can!!!
a more technical comment: GPL does NOT prevent the modifiers from obscuring the code, or removing comments. it says nothing about the comprehensibility of the source code, or the completeness of comments or credits. i find these to be MAJOR weaknesses. and i think they may be problematic in some cases.
note: i don't claim to have a general solution. i am simply bothered very much in this case and i hope none of you experience such a thing.
best regards and thanks everyone for their thoughtful comments!!!
Eray, yes you were the author (actually even maintainer) of the Pisi at some point. But that pisi was slow and buggy program which doesnt even work half of the time. You quit the project by not even coming to office, and instead of working the issues, doing flame wars on our bugzilla. As I said in previous message, that version of code is tagged as-is and kept in our svn tree.
Have you ever checked recent code? Probably only code of yours that still remain is the database code. Only reason that is still there is we have to make a release soon. We'll change it after the release asap, because it works even slower than parsing XML data themselves (that is your great algorithm you have designed i guess), and blocks two pisi from running at the same time (a feature which almost all package managers have).
Reason that your code is changing is not that plagiarism, but that it was slow and buggy. Just look at a recent change I did for example: http://liste.pardus.org.tr/uludag-commits/2006-November/008343.html
See the lowly_python function there? It wasn't even working at all (because of silly return c, and wrong if clause, and that it isnt even necessary) but just causing unnecessary operations. And the comment blames Python locale module authors for being fools.
If you act like that, only recognition you will get is just another Eray award.
you are such a lowlife madcat. the only code that remains is the database code, yeah, sure :)
madcat, you are a complete asshole.
i looked at the code. there is no major change in the code. all the modules and packages that i wrote are there with only slight mods.
you probably don't know which modules were written by scratch from me. more than half of the modules there are completely coded by me, you asshole. example in point: atomicoperations, dependency, index, operations, the list goes on and on. you are a fucking liar.
i was telling the truth about the 43% svn activity but that alone doesn't explain how much of the actual code.
the algorithms that i designed pertained to minimal database access and dependency analysis and online upgrades, etc.
basically ALL the non-trivial parts of the program are my code. i deliberately left the slightly more obvious parts to other coders to minimize risk. basically because they were lazy people and/or didn't know enough about algorithms to write those parts. but the real reason is they didn't care!
and my name is nowhere in the files that I CODED.
i used to think you are a douchebag, but now you have proven yourself to be a motherfucker since you are completely misrepresenting the situation.
in response to your fucked up way of distorting the truth here, i will think of writing a tool that extracts the weight of *novel* contributions by each svn committer. if i have time, that is, not so hard since there is already a tool that does the appropriate filtering.
and yeah, why don't you side yourself with an asshole from debian, that would fit yourself. and get your ad hominem argument with you motherfucker.
you probably don't know which modules i wrote from scratch!!!
no, you don't because you motherfuckers removed the author comments, and the author comments were not even complete! i was trying to track down who wrote which part and document that properly. do you even think there is a chance that any other person would be able to write a graph module or anything like that? idiot.
and since there is no major change, how can there be a notable improvement, anyway fucking liar, were you the one who vandalized the author comments or was it some other idiot as yourself???
Yeah, when you call pisi.api.init, every possible database file is opened just for sure. I mean, how minimal can you get than that :)
do you even think there is a chance that any other person would be able to write a graph module or anything like that? idiot.
No chance indeed, you are probably the only person in the world who can write a graph module ;)
It is really your code though, but I still fail to see how it isn't just a contribution. Even your comment claims it is "the most simple minded digraph class ever" :)
why don't you side yourself with an asshole from debian
This isn't ad hominem here. Because your personal character involves this discussion. We have recently found out this Eray award thing, and after reading that irc log I noticed how similar your position was with us.
You join a project with some contribution, then act like a dictator where his opinions are always true, think others are merely workers whose purpose is to serve you, and you are the only one capable to do real work. When people notice your attitude change, and found out that you dont do any work anymore, they throw you out of their project, then you become angry and use every chance to blame them.
And this happened twice! Since you established that Debian and Pardus is full of motherfuckers, I wonder where this story will follow :)
none of what you write above, that is continuation of your ad hominem arguments, changes the fact that you LIED to make it look that your UNETHICAL behavior is reasonable. for instance that i "flamed" other people in bugzilla. what the fuck does that have to do with the issue. i don't mind my words when somebody doesn't pay attention to bug reports... i fixed like 300 bugs (great many of them wishlists), and the other developers would make a big fuss when they fixed a single! that was something that i still do not appreciate. laziness that is.
about the graph class. that comment was just a funny remark, it is obvious that you cannot discern humor. the labelled graph class is all right for a small-scale python implementation. and the graph algorithms were tested for the kind of inputs that required performance. but that module is what, about 1/20 of my contribution or less. of course every contribution is "just contribution", but authorship usually means having written full chunks of those contributions, like the graph module and many other modules, like the api module and countless other things. do i have to count them all???
i told you before that i don't like you in person. i didn't say anything about someone else, of course, except whoever did the aforementioned changes. i will happily call that person a motherfucker, as well.
you need to know that there are many people from the team that i appreciate, but the sleazy and backstabbing behavior of a few among you really gained my hatred. i am not the kind of guy who can live with insects.
you really don't get it do you? i wrote more than half of the code. that part of the code is still in there, and there is no major change as you claimed. if this does not mean that i am not the first author than i really wonder what does.
as for your lowly personality, i will speak no more.
what the hell does this have to do with debian either?
on the other hand i must admit that it is true that i see you (as a programmer and as a person) inferior. i see no need to apologize for that. that is why it is wrong that i communicate this issue with yourself. also, it is clear that it is no use arguing with idiots. idiots will always say 100 foolish things to lock up a simple issue. i don't know how many silly arguments of yours i already answered, swaying away from the main issue.
but you got to know that i would treat you with respect if you did not lie about this issue. policy, just contributor, my ass. how low can you get? enough of this shit. so shut the fuck up you fucking liar.
be honest for a change... but you can't. your actions are so predictable.
i am not answering to various silly-isms of yours. the particulars of the code are not in question and i will not educate you about that.
i would not mention the name of the project. i should have kept it completely abstract. it was completely a mistake to slip away the name of the project. sorry for that. i am terribly sorry that i had to get into an ugly argument.
i looked at whether it was an institute policy and though i find it hard to believe, i saw that they removed author comments everywhere or didn't write. this seems a silly thing so i say it's not an institute policy but a decision that somebody made. it is quite wrong to exclude revision history and author names from open sources. has nothing to do with practicality. look at free software codes, you'll see who did what. my guess is that it was the decision of an inexperienced programmer.
but this does not mean i am sympathetic towards the lie that i didn't write most of the code. you have to give the credit where it is due, where is your integrity as a programmer?
for the record, madcat had promulgated the same lie (that somebody else was the first author, who was actually the third or fourth author) on a public mailing list. that was a big lie, and i simply said that it was a lie, condemned him politely and after that point i removed all of my connections with the project because he didn't come under fire for saying such a blatant lie. i was also going through a hard time during that period, so i simply stopped caring. however, it seems that the right action would be to aggressively show what a big lie it was as i am now doing.
it wasn't just another project for me. i spent an inordinate amount of time on this, much more than what would be expected of me under normal conditions, so i am frustrated that i had to argue with the same maniac who attempted at defamation.
New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.
Keep up with the latest Advogato features by reading the Advogato status blog.
If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!