Fabien's open letter to the community

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Harvey Williamson, bob

bob
Posts: 20340
Joined: Mon Feb 27, 2006 6:30 pm
Location: Birmingham, AL

Re: Fabien's open letter to the community

Post by bob » Tue Feb 01, 2011 1:48 am

Dann Corbit wrote:
bob wrote:
Dann Corbit wrote:
Don wrote:
Houdini wrote:
Don wrote:I think you are correct. I personally AM a fan of rewrites but I think there are many chess authors that don't ever rewrite, or have only done so once in years.
Rewriting for the sake of rewriting doesn't serve any purpose at all.
Software with a good architecture will survive many years and many changes.

Robert
I don't rewrite just for the sake of it.

Don
Typical reasons for rewriting:
1. Change of language (e.g. C to C++)
2. Change of underlying data structures (e.g. mailbox to bitboard)
3. Increased programming ability (every decade, my programming skills increase quite a bit, so the code I wrote 20 years ago will benefit considerably from a rewrite).
4. Lost code (yes, it does happen -- I have sent code back to chess authors who lost their original code and who had also sent their code to me on several occasions, for instance).
I don't agree with those.

(1) can be solved via translation. A good program can be translated to a new language without rewriting a thing...
Basic to C++?
Pascal to Java?
Fortran to C?
I have seen the latter two. And Zortech used to sell the Fortran to C translator. I probably still have a copy in my office. I used it to make the original translation of the CB source to C back in 1994. The code was not very clean looking, because it was just a one-for-one translation to C. And since FORTRAN didn't have pointers in the f77 standard, the resulting C code did not use pointers. So it needed a lot of cleaning up to become "decent C". But the output of the translator would compile and run and produce identical results to the original FORTRAN program.

I think there is even a GNU fortran to C translator. I have not used it, but have noticed it in installing several different Linux distros. Something like f2c or something. But no info on how well it works...


(2) I did the mailbox-to-bitboard translation with Crafty. It only affects a part of the code. Search is unchanged. Move ordering is unchanged. Several other things are completely board representation independent.
Crafty is a giant machine with nearly 40K lines of code. At ten lines per hour and $100/hour that would translate to $400,000 worth of work. It would be a titanic effort, therefore, to rewrite crafty. Smaller programs of a few hundred lines would be far more likely candidates for such an effort.
I can't speak for everyone, but I produce a lot more than 10 lines per hour. Don't forget, half of those 40K + lines of code are simply comments that don't need translation, and also help in understanding... I would suspect it would take a year of solid work to rewrite Crafty from scratch, assuming I could access the comments but not the source instructions, to get it back to something close to the current state. Might take longer to get the speed back to where it is...


(3) I don't think is that common. One does not rewrite _everything_ just because they are a better programmer now than 10 years ago. you might rewrite _parts_. But not the whole thing. That is a huge waste of time and effort.
I have done it, but typically with small projects. TSCP needs a complete rewrite, for instance.
(4) Never had that happen to the current version of code since I always keep duplicates and backups scattered around.
It is the result of carelessness when code is lost, but it does happen. I suspect that you have lost at least one or more snapshot of a released version of Cray Blitz or Crafty (at least in the early stages) because with hobby projects that are not producing revenue we sometimes are not quite as careful as when a big pile of money is at stake.
I lost about 80% of everything in 1995. Not the current version as it is always kept in multiple locations such as my office box, my laptop, and a central NFS file server on top of that. But old versions I kept only on my office box and a disk crash and later discovery that all backups were unreadable lost a lot of old stuff. I now have everything stored in three places, with a simple mechanism to scatter the duplicates to the right places after a change is made...

playjunior
Posts: 338
Joined: Thu Jun 21, 2007 10:53 pm

Re: Fabien's open letter to the community

Post by playjunior » Tue Feb 01, 2011 8:13 am

Bob, a big difference between 1995 and now is that now you can encrypt, zip and email the source to yourself and it will take you 3 minutes. It is that simple.

I read long time ago when Strelka came out someone asked Vasik whether it might be possible that his code got stolen, he said no, because he keeps it a dedicated computer with no internet connection.

A person who takes such precautions would surely take a minute or two to take care he has a backup copy.

Sven
Posts: 3549
Joined: Thu May 15, 2008 7:57 pm
Location: Berlin, Germany

Re: Fabien's open letter to the community

Post by Sven » Tue Feb 01, 2011 8:39 am

playjunior wrote:Bob, a big difference between 1995 and now is that now you can encrypt, zip and email the source to

yourself and it will take you 3 minutes. It is that simple.

I read long time ago when Strelka came out someone asked Vasik whether it might be possible that his code got stolen, he said

no, because he keeps it a dedicated computer with no internet connection.

A person who takes such precautions would surely take a minute or two to take care he has a backup copy.
But not necessarily of each single version you create. And with some bad luck you miss to make that backup copy for a while.

Sven

playjunior
Posts: 338
Joined: Thu Jun 21, 2007 10:53 pm

Re: Fabien's open letter to the community

Post by playjunior » Tue Feb 01, 2011 9:54 am

Sven Schüle wrote:
playjunior wrote:Bob, a big difference between 1995 and now is that now you can encrypt, zip and email the source to

yourself and it will take you 3 minutes. It is that simple.

I read long time ago when Strelka came out someone asked Vasik whether it might be possible that his code got stolen, he said

no, because he keeps it a dedicated computer with no internet connection.

A person who takes such precautions would surely take a minute or two to take care he has a backup copy.
But not necessarily of each single version you create. And with some bad luck you miss to make that backup copy for a while.

Sven
Neh. They had Rybka 3 beta available for some time, they were testing/tuning it, for what, months? Not a single backup copy in that timeframe? Who does that?

Edit: And then you make the release version and start selling it without bothering to take a backup.

Gian-Carlo Pascutto
Posts: 1063
Joined: Sat Dec 13, 2008 6:00 pm
Contact:

Re: Fabien's open letter to the community

Post by Gian-Carlo Pascutto » Tue Feb 01, 2011 10:26 am

playjunior wrote: Neh. They had Rybka 3 beta available for some time, they were testing/tuning it, for what, months? Not a single backup copy in that timeframe? Who does that?
They might very well have the source for some of the betas. I think what was said was that the exact one that became the release wasn't saved. Sloppy, but by no means impossible.

playjunior
Posts: 338
Joined: Thu Jun 21, 2007 10:53 pm

Re: Fabien's open letter to the community

Post by playjunior » Tue Feb 01, 2011 10:43 am

Gian-Carlo Pascutto wrote:
playjunior wrote: Neh. They had Rybka 3 beta available for some time, they were testing/tuning it, for what, months? Not a single backup copy in that timeframe? Who does that?
They might very well have the source for some of the betas. I think what was said was that the exact one that became the release wasn't saved. Sloppy, but by no means impossible.
I don't remember the story exactly, but weren't they saying they don't have anything resembling Rybka 3 source left? Can someone refresh us?

And wasn't it 'lost' long after the release?

I just refuse to believe something like this can happen. To Vas, who used a dedicated computer so that no one has access to code, who obfuscated search info so that the competitors could not guess what is going on under the hood. People who are so concerned about their code/security/whatever backup every day. Automated. And then do it by hand from time to time to be sure.

It just does not compute.

Gian-Carlo Pascutto
Posts: 1063
Joined: Sat Dec 13, 2008 6:00 pm
Contact:

Re: Fabien's open letter to the community

Post by Gian-Carlo Pascutto » Tue Feb 01, 2011 10:52 am

playjunior wrote: People who are so concerned about their code/security/whatever backup every day. Automated. And then do it by hand from time to time to be sure.
I have to admit I have no argument against clairvoyance.

User avatar
JuLieN
Posts: 2945
Joined: Mon May 05, 2008 10:16 am
Location: Nantes (France)
Contact:

Re: Fabien's open letter to the community

Post by JuLieN » Tue Feb 01, 2011 1:56 pm

I think this quite recent (september 2009) jurisprudence of the Cour d'Appel de Paris (Paris' court of appeal) will be an interesting addendum to this debate :

Code: Select all

Paris Court of Appeals condemns Edu4 for violating the GNU General Public License

PARIS, France -- Tuesday, September 22, 2009 -- In a landmark ruling that will set legal precedent, the Paris Court of Appeals decided last week that the company Edu4 violated the terms of the GNU General Public License (GPL) when it distributed binary copies of the remote desktop access software VNC but denied users access to its corresponding source code. The suit was filed by Association pour la formation professionnelle des adultes (AFPA), a French education organization.

"This decision should raise awareness about free software licensing for everyone involved with it," said Olivier Hugot, attorney of Free Software Foundation France. "Companies distributing the software have been given a strong reminder that the license's terms are enforceable under French law. And users in France can rest assured that, if need be, they can avail themselves of the legal system to see violations addressed and their rights respected."

The events of the case go back to early 2000, when Edu4 was hired to provide new computer equipment in AFPA's classrooms. Shortly thereafter, AFPA discovered that VNC was distributed with this equipment. Despite repeated requests, with mediation from the Free Software Foundation France, Edu4 refused to provide AFPA with the source code to this version of VNC. Furthermore, FSF France later discovered that Edu4 had removed copyright and license notices in the software. All of these activities violate the terms of the GNU GPL. AFPA filed suit in 2002 to protect its rights and obtain the source code.

"We've long said the GNU GPL is enforceable, and of course we're pleased to see another court reaffirm that fact," said Loic Dachary, president of FSF France. "But what makes this ruling unique is the fact that the suit was filed by a user of the software, instead of a copyright holder. It's a commonly held belief that only the copyright holder of a work can enforce the license's terms - but that's not true in France. People who received software under the GNU GPL can also request compliance, since the license grants them rights from the authors."

The Court's ruling is available on the web at http://fsffrance.org/news/arret-ca-paris-16.09.2009.pdf.

Media contact

Loïc Dachary, FSF France president. E-mail : loic@dachary.org Phone : +33 6 64 03 29 07

About Free Software Foundation France

The FSF France (http://www.fsffrance.org/) is a non-profit organization dedicated to all aspects of Free Software. Access to software determines who may participate in a digital society. Therefore the freedoms to use, copy, modify and redistribute software - as described in the Free Software definition - allow equal participation in the information age. Creating awareness for these issues, securing Free Software politically and legally, and giving people freedom by supporting development of Free Software are central issues of the FSF France.
Let me single out the most important part of this decision :

Code: Select all

"We've long said the GNU GPL is enforceable, and of course we're pleased to see another court reaffirm that fact," said Loic Dachary, president of FSF France. "But what makes this ruling unique is the fact that the suit was filed by a user of the software, instead of a copyright holder. It's a commonly held belief that only the copyright holder of a work can enforce the license's terms - but that's not true in France. People who received software under the GNU GPL can also request compliance, since the license grants them rights from the authors."
Source : http://fsffrance.org/news/article2009-09-22.en.html
And a slightly more detailed explanation for those who understand french : http://fsffrance.org/news/article2009-09-22.fr.html
"The only good bug is a dead bug." (Don Dailey)
Image [Blog: http://tinyurl.com/predateur ] [Facebook: http://tinyurl.com/fbpredateur ] [MacEngines: http://tinyurl.com/macengines ]

User avatar
Dr.Wael Deeb
Posts: 9635
Joined: Wed Mar 08, 2006 7:44 pm
Location: Amman,Jordan

Re: Fabien's open letter to the community

Post by Dr.Wael Deeb » Tue Feb 01, 2011 3:47 pm

playjunior wrote:Bob, a big difference between 1995 and now is that now you can encrypt, zip and email the source to yourself and it will take you 3 minutes. It is that simple.

I read long time ago when Strelka came out someone asked Vasik whether it might be possible that his code got stolen, he said no, because he keeps it a dedicated computer with no internet connection.

A person who takes such precautions would surely take a minute or two to take care he has a backup copy.
Vasik is a proffesional liar....
Dr.D
_No one can hit as hard as life.But it ain’t about how hard you can hit.It’s about how hard you can get hit and keep moving forward.How much you can take and keep moving forward….

rbarreira
Posts: 900
Joined: Tue Apr 27, 2010 1:48 pm

Re: Fabien's open letter to the community

Post by rbarreira » Tue Feb 01, 2011 5:01 pm

JuLieN wrote: Let me single out the most important part of this decision :

Code: Select all

"We've long said the GNU GPL is enforceable, and of course we're pleased to see another court reaffirm that fact," said Loic Dachary, president of FSF France. "But what makes this ruling unique is the fact that the suit was filed by a user of the software, instead of a copyright holder. It's a commonly held belief that only the copyright holder of a work can enforce the license's terms - but that's not true in France. People who received software under the GNU GPL can also request compliance, since the license grants them rights from the authors."
Well in that case Rybka's author may never have to worry about losing his source code again. If he has to send his source code to every Rybka user that asks for it, there will be tons of backups stored in France :P

Post Reply