rodolfoleoni wrote:I wish to spend my two cents here: one cent to say I agree with ICGA panel sentence and the last cent to put a question.
Let us assume I want to build my first chess program, so I take the good old TSCP and I start making experiments to learn how the whole stuff works. At a point I'm able to improve it and I call it kkk v. 0.x. I build as many 0.x versions as I can, until I decided I learned enough from it and I build my engine kkk v. 1.0, with 0% code from the original TSCP. Should it be considered a derivative?
Of course, I could keep all 0.x versions private, so nobody would never say anything about cloning, copying, etc... But, what if I release all of them? Is the only difference between an honest and a dishonest work the fact of releasing all versions?
Thanks for opinions... :)
There are two things.
TSCP is of is of a different order of magnitude than Fruit. In running a marathon, it matters if you cheat with a foot step at the start of the race or if you take a taxi for the first 10 km.
Second, in making a chess engine, you make a lot of micro-decisions in your game playing code that are rather arbitrary. In the end your program may have 40,000 lines of code, and it might contains maybe 250 chess-domain ideas that affect strength. But in those 40k lines of code, you make a lot of choices that affect strength not at all, or below 0.1 elo. And you make these decisions every 50 lines of code or so. That gives you 800 arbitrary choices in a normal program.
Now, anyone who writes a chess engine from scratch, the 250 ideas will overlap a lot, but the micro-dicisions will be more more or less made at random. One programmer uses A and another one uses B. They are at least as random such that they correlate with nobody else's engine. Now if a lot of those micro-decisions turn out to be the same as somebody else's, then that is very strong evidence that you didn't do a cleanroom reimplementation of ideas, but that you took somebody's else's implementation to built your own program by copying step by step of it. And that is plagiarism.
Whether or not such practice is acceptable or not depends on the culture that you live in. I have a nice Chinese painting on my wall here with huge red name stamps on it representing the emperors who once 'owned' the painting. On the other side of the spectrum, in ICGA tournaments the originality requirement is relatively high, maybe even surpassing those of the Berne convention. If you don't agree with them, then don't join their tournaments (or become a member and try to change their rules from within)