The way I feel about it is that it's ok to work on some common code base, even fun. However, you should then be considered part of a larger team.mjlef wrote:There is a growing community of programmers that like the idea of public sources they can modify and improve. But I do not think we want to see a bunch of nearly identical programs competing against each other. As Don states, since tournaments cannot have a large number of rounds, multiple entries of nearly identical programs greatly increases the chance that one of the nearly identical programs will win. So, how do we deal with the open source issue?
I propose each program must reveal the code base used in their program (either original, or based on program X). if more than one program based on X enters the tournament, a pre-tournament must be held with a few games between each of the programs based on X. Only the winner of this pre-tournament would be allowed to compete in the final tournament. Also, derivatives would have to follow the GPL or other licence conditions, of course, which might disallow this.
This does not deal with the issue of clones who hide the origin. And it would probably annoy the original authors if their program gets surpassed by a derivative. If this is the set rule, it might make people think twice before releasing code. But it does have the nice feature of increasing the likelihood that the strongest derivatives will play, and seems like a fair way to proceed.
Mark
Each potential author needs to make the decision - does he want to write his own original program and take full credit for how weak or how strong it is, or does he want to work on somebody else's program and be part of a much larger team effort?
Another way to go is to start with the strongest open source code in order to move immediately to the front of the line and start working from there, while representing this as your own original program with closed sources.