Fabien's open letter to the community

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

Moderators: hgm, Rebel, chrisw

bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Fabien's open letter to the community

Post by bob »

playjunior wrote:
bob wrote:
Milos wrote:
bob wrote:I have also seen where those public machines have been broken into, and files copied (including 100Ks of credit card numbers). IMAP won't help you one bit there...
It's rather simple.
Take all your programs zip it in a file (I seriously doubt there would be more than 100MB size in total) and encrypt with like AES256 and then send it to yourself on IMAP account (divide a file if necessary and test everything if it works).

I really don't see how that is unreliably or breakable or hackable (unless you lose the key, but that's another issue)...
The issue is, "where is that file stored?" If it is on my office box, I have complete control, and my office machine has never been broken into. If it is on gmail, there is no guarantee of any such protection for privacy, which is a requirement for my email account due to FIRPA, HIPA and such. So gmail is out. And the machine in my office is the same machine where the program copies exist.

BTW, each version of Crafty is maybe a meg. There are thousands of intermediate versions, or gigabytes of data...
Bob if you have encrypted it properly why would you care if you lose control?

I have 2.5 GB of mails on Gmail, which is 33% of allowed free limit in the moment. Not a single mail lost or deleted for like 5 years. All attachments there etc.
We're not suggesting you migrate your mail to "public" places, but for backup it's perfect. My initial point was that today its much easier to do it, because, em, in 1995 you couldn't have 7.5 GB free mailbox with 25MB attachments.
That's a lousy backup mechanism. It is quite similar to what we did in 1995 when I lost everything, because there is no verification that the backup copy is good, until you need it. I've had lots of disk crashes since, and have lost nothing, because I use the 3-way backup + regular dumps to DVD to boot...

Going off-campus is problematic for reasons I have mentioned previously. FERPA/HIPA being big ones...
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Fabien's open letter to the community

Post by bob »

gerold wrote:
rodolfoleoni wrote:Lots of posts, I just cannot read all of them. But I noticed Mr. Letouzey "disappeared" from discussion. What if he'll do nothing about all that stuff?
All this infor or most of it has been beaten to death before. What can
he do. Its about 5 years to late.
These posts were fun to read. They have done more to promote
IH and Houdini than anything else. Now Houdini is on more rating list
and on Playchess. Also top GM are now using Houdini.

Best,
Gerold
And if houdini is a derivative, which it almost certainly is? Can it play in tournaments? There is still much to be answered. People should feel free to rate what they want, or exclude what they want. I'm more interested in the CCT/ACCA/ICGA events and what happens there.
LucenaTheLucid
Posts: 197
Joined: Mon Jul 13, 2009 2:16 am

Re: Fabien's open letter to the community

Post by LucenaTheLucid »

I think since the since the Fruit->Rybka issue is basically agreed upon, then the next obvious thing would be to decide what exactly Ippo is? Then once Ippo is decided upon then possibly Houdini.
rodolfoleoni
Posts: 263
Joined: Mon Nov 29, 2010 9:16 pm

Re: Fabien's open letter to the community

Post by rodolfoleoni »

bob wrote:
gerold wrote:
rodolfoleoni wrote:Lots of posts, I just cannot read all of them. But I noticed Mr. Letouzey "disappeared" from discussion. What if he'll do nothing about all that stuff?
All this infor or most of it has been beaten to death before. What can
he do. Its about 5 years to late.
These posts were fun to read. They have done more to promote
IH and Houdini than anything else. Now Houdini is on more rating list
and on Playchess. Also top GM are now using Houdini.

Best,
Gerold
And if houdini is a derivative, which it almost certainly is? Can it play in tournaments? There is still much to be answered. People should feel free to rate what they want, or exclude what they want. I'm more interested in the CCT/ACCA/ICGA events and what happens there.
Just my opinion. Official tourneys are competitions. It means chess programmers worked hard to get their engines performing at their best. It's be a lack of respect to let derivative engines partecipate.
Rodolfo (The Baron Team)
Robert Flesher
Posts: 1280
Joined: Tue Aug 18, 2009 3:06 am

Re: Fabien's open letter to the community

Post by Robert Flesher »

Tord Romstad wrote:My good friend Fabien Letouzey, author of Fruit, asked me to post the following message for him:
Hello,

Long time no see.

First, I am not back to computer chess, sorry about that. I just want to clarify a few things. Sorry if that's old but there is some misunderstanding I need to fix, and I found out only yesterday. Bear in mind that I am mostly unaware of what has happened for five years though.

First there was the Strelka case. Dann approached me with some "Strelka" source code for me to check. I had never heard of it. I assumed it was some closed-source free engine and that people wanted to know whether it was based on the Fruit source code.

The short answer was "no", it was not a verbatim copy of the source code. All the code had been typed (can't say "designed" though, see below) by an individual. So legally there was no issue that I knew of. It was however a whole re-write (copy with different words if you like, similar to a translation) of the algorithms. Not just an extraction of a couple of ideas as is common, and normal.

That being said, some original changes and ideas were also included in the program. So it was, as has since been stated many times in fora I suppose, a bitboard re-write of Fruit with some personal (or otherwise) ideas. Also note that the source code Dann sent me might not be the from the 2.0 version.

Edit: I've just had a look at the 2.0 sources. On top of what I said above, there are many constant and function names that are identical to Fruit's. I remember noticing it back then as well.

Hope it helps, because my email answer to Dann was unusually short and cryptic even by my standards. And Dann, please next time make it clear when you want a public statement instead of a private opinion, thanks.

I want to point out something immediately: there was no mention of Rybka whatsoever. Indeed I was unaware of any relation between Strelka and Rybka, this is precisely what I learned only yesterday. I insist because it seems I have often been quoted about "not caring" about the (possible) Fruit/Rybka relationship, but this is not so. Strelka did not look like a problem because I assumed it was free.

Next, I was approached by Ryan (I think) and Christophe Theron about whether I could help with some "possible Fruit code inside Rybka" issues. I answered "yes, but how?", but did not get a reply. This did not make me really aware of a clone possibility however because I thought they were talking about some insignificant UCI-handling code or whatnot. Also this was several years after the initial Rybka release, and I guess quite a few people had a close look at it. Apparently Chrilly did?

Now if someone could tell me a bit more about the major events last five years and the current state of affairs, I'd be much obliged.

A few things I noticed yesterday, can you confirm?
- Rybka search info was obfuscated in some way (like displaying depth-3 or something), any pointers on details please?
- Vasik claimed that Strelka 2.0 is a clone of Rybka 1.0 (and you know what that would imply!)
- Zach Wegner found many Fruit ideas (and nearly identical code) in Rybka 1.0; I think someone else did, too
- Some even stronger open-source program appeared as a decompilation of Rybka (with own ideas, sounds familiar), what came up of looking at those?

Any questions, now is the one time to ask.

Thanks for your attention,

Fabien Letouzey.

For those who did not see the Vas video interview. I believe it will be of great interest to some at 9:28 Vas is asked, "What chess engines in public domain, when you got started, had the biggest influence on the earliest versions of Rybka?" Nothing "Fruity" about his reply.

http://chessok.com/download/A%20Convers ... ajlich.wmv
Robert Flesher
Posts: 1280
Joined: Tue Aug 18, 2009 3:06 am

Re: Fabien's open letter to the community

Post by Robert Flesher »

Robert Flesher wrote:
Tord Romstad wrote:My good friend Fabien Letouzey, author of Fruit, asked me to post the following message for him:
Hello,

Long time no see.

First, I am not back to computer chess, sorry about that. I just want to clarify a few things. Sorry if that's old but there is some misunderstanding I need to fix, and I found out only yesterday. Bear in mind that I am mostly unaware of what has happened for five years though.

First there was the Strelka case. Dann approached me with some "Strelka" source code for me to check. I had never heard of it. I assumed it was some closed-source free engine and that people wanted to know whether it was based on the Fruit source code.

The short answer was "no", it was not a verbatim copy of the source code. All the code had been typed (can't say "designed" though, see below) by an individual. So legally there was no issue that I knew of. It was however a whole re-write (copy with different words if you like, similar to a translation) of the algorithms. Not just an extraction of a couple of ideas as is common, and normal.

That being said, some original changes and ideas were also included in the program. So it was, as has since been stated many times in fora I suppose, a bitboard re-write of Fruit with some personal (or otherwise) ideas. Also note that the source code Dann sent me might not be the from the 2.0 version.

Edit: I've just had a look at the 2.0 sources. On top of what I said above, there are many constant and function names that are identical to Fruit's. I remember noticing it back then as well.

Hope it helps, because my email answer to Dann was unusually short and cryptic even by my standards. And Dann, please next time make it clear when you want a public statement instead of a private opinion, thanks.

I want to point out something immediately: there was no mention of Rybka whatsoever. Indeed I was unaware of any relation between Strelka and Rybka, this is precisely what I learned only yesterday. I insist because it seems I have often been quoted about "not caring" about the (possible) Fruit/Rybka relationship, but this is not so. Strelka did not look like a problem because I assumed it was free.

Next, I was approached by Ryan (I think) and Christophe Theron about whether I could help with some "possible Fruit code inside Rybka" issues. I answered "yes, but how?", but did not get a reply. This did not make me really aware of a clone possibility however because I thought they were talking about some insignificant UCI-handling code or whatnot. Also this was several years after the initial Rybka release, and I guess quite a few people had a close look at it. Apparently Chrilly did?

Now if someone could tell me a bit more about the major events last five years and the current state of affairs, I'd be much obliged.

A few things I noticed yesterday, can you confirm?
- Rybka search info was obfuscated in some way (like displaying depth-3 or something), any pointers on details please?
- Vasik claimed that Strelka 2.0 is a clone of Rybka 1.0 (and you know what that would imply!)
- Zach Wegner found many Fruit ideas (and nearly identical code) in Rybka 1.0; I think someone else did, too
- Some even stronger open-source program appeared as a decompilation of Rybka (with own ideas, sounds familiar), what came up of looking at those?

Any questions, now is the one time to ask.

Thanks for your attention,

Fabien Letouzey.

For those who did not see the Vas video interview. I believe it will be of great interest to some at 9:28 Vas is asked, "What chess engines in public domain, when you got started, had the biggest influence on the earliest versions of Rybka?" Nothing "Fruity" about his reply.

http://chessok.com/download/A%20Convers ... th%20Vasik%
20Rajlich.wmv
The next Vas interview?

Image
User avatar
Dr.Wael Deeb
Posts: 9773
Joined: Wed Mar 08, 2006 8:44 pm
Location: Amman,Jordan

Re: Fabien's open letter to the community

Post by Dr.Wael Deeb »

Robert Flesher wrote:
Robert Flesher wrote:
Tord Romstad wrote:My good friend Fabien Letouzey, author of Fruit, asked me to post the following message for him:
Hello,

Long time no see.

First, I am not back to computer chess, sorry about that. I just want to clarify a few things. Sorry if that's old but there is some misunderstanding I need to fix, and I found out only yesterday. Bear in mind that I am mostly unaware of what has happened for five years though.

First there was the Strelka case. Dann approached me with some "Strelka" source code for me to check. I had never heard of it. I assumed it was some closed-source free engine and that people wanted to know whether it was based on the Fruit source code.

The short answer was "no", it was not a verbatim copy of the source code. All the code had been typed (can't say "designed" though, see below) by an individual. So legally there was no issue that I knew of. It was however a whole re-write (copy with different words if you like, similar to a translation) of the algorithms. Not just an extraction of a couple of ideas as is common, and normal.

That being said, some original changes and ideas were also included in the program. So it was, as has since been stated many times in fora I suppose, a bitboard re-write of Fruit with some personal (or otherwise) ideas. Also note that the source code Dann sent me might not be the from the 2.0 version.

Edit: I've just had a look at the 2.0 sources. On top of what I said above, there are many constant and function names that are identical to Fruit's. I remember noticing it back then as well.

Hope it helps, because my email answer to Dann was unusually short and cryptic even by my standards. And Dann, please next time make it clear when you want a public statement instead of a private opinion, thanks.

I want to point out something immediately: there was no mention of Rybka whatsoever. Indeed I was unaware of any relation between Strelka and Rybka, this is precisely what I learned only yesterday. I insist because it seems I have often been quoted about "not caring" about the (possible) Fruit/Rybka relationship, but this is not so. Strelka did not look like a problem because I assumed it was free.

Next, I was approached by Ryan (I think) and Christophe Theron about whether I could help with some "possible Fruit code inside Rybka" issues. I answered "yes, but how?", but did not get a reply. This did not make me really aware of a clone possibility however because I thought they were talking about some insignificant UCI-handling code or whatnot. Also this was several years after the initial Rybka release, and I guess quite a few people had a close look at it. Apparently Chrilly did?

Now if someone could tell me a bit more about the major events last five years and the current state of affairs, I'd be much obliged.

A few things I noticed yesterday, can you confirm?
- Rybka search info was obfuscated in some way (like displaying depth-3 or something), any pointers on details please?
- Vasik claimed that Strelka 2.0 is a clone of Rybka 1.0 (and you know what that would imply!)
- Zach Wegner found many Fruit ideas (and nearly identical code) in Rybka 1.0; I think someone else did, too
- Some even stronger open-source program appeared as a decompilation of Rybka (with own ideas, sounds familiar), what came up of looking at those?

Any questions, now is the one time to ask.

Thanks for your attention,

Fabien Letouzey.

For those who did not see the Vas video interview. I believe it will be of great interest to some at 9:28 Vas is asked, "What chess engines in public domain, when you got started, had the biggest influence on the earliest versions of Rybka?" Nothing "Fruity" about his reply.

http://chessok.com/download/A%20Convers ... th%20Vasik%
20Rajlich.wmv
The next Vas interview?

Image
You show a moderate level of lying here....
If Vas is attached,the machine will simply blow off to pieces :lol:

:wink:
_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….
Robert Flesher
Posts: 1280
Joined: Tue Aug 18, 2009 3:06 am

Re: Fabien's open letter to the community

Post by Robert Flesher »

Dr.Wael Deeb wrote:
Robert Flesher wrote:
Robert Flesher wrote:
Tord Romstad wrote:My good friend Fabien Letouzey, author of Fruit, asked me to post the following message for him:
Hello,

Long time no see.

First, I am not back to computer chess, sorry about that. I just want to clarify a few things. Sorry if that's old but there is some misunderstanding I need to fix, and I found out only yesterday. Bear in mind that I am mostly unaware of what has happened for five years though.

First there was the Strelka case. Dann approached me with some "Strelka" source code for me to check. I had never heard of it. I assumed it was some closed-source free engine and that people wanted to know whether it was based on the Fruit source code.

The short answer was "no", it was not a verbatim copy of the source code. All the code had been typed (can't say "designed" though, see below) by an individual. So legally there was no issue that I knew of. It was however a whole re-write (copy with different words if you like, similar to a translation) of the algorithms. Not just an extraction of a couple of ideas as is common, and normal.

That being said, some original changes and ideas were also included in the program. So it was, as has since been stated many times in fora I suppose, a bitboard re-write of Fruit with some personal (or otherwise) ideas. Also note that the source code Dann sent me might not be the from the 2.0 version.

Edit: I've just had a look at the 2.0 sources. On top of what I said above, there are many constant and function names that are identical to Fruit's. I remember noticing it back then as well.

Hope it helps, because my email answer to Dann was unusually short and cryptic even by my standards. And Dann, please next time make it clear when you want a public statement instead of a private opinion, thanks.

I want to point out something immediately: there was no mention of Rybka whatsoever. Indeed I was unaware of any relation between Strelka and Rybka, this is precisely what I learned only yesterday. I insist because it seems I have often been quoted about "not caring" about the (possible) Fruit/Rybka relationship, but this is not so. Strelka did not look like a problem because I assumed it was free.

Next, I was approached by Ryan (I think) and Christophe Theron about whether I could help with some "possible Fruit code inside Rybka" issues. I answered "yes, but how?", but did not get a reply. This did not make me really aware of a clone possibility however because I thought they were talking about some insignificant UCI-handling code or whatnot. Also this was several years after the initial Rybka release, and I guess quite a few people had a close look at it. Apparently Chrilly did?

Now if someone could tell me a bit more about the major events last five years and the current state of affairs, I'd be much obliged.

A few things I noticed yesterday, can you confirm?
- Rybka search info was obfuscated in some way (like displaying depth-3 or something), any pointers on details please?
- Vasik claimed that Strelka 2.0 is a clone of Rybka 1.0 (and you know what that would imply!)
- Zach Wegner found many Fruit ideas (and nearly identical code) in Rybka 1.0; I think someone else did, too
- Some even stronger open-source program appeared as a decompilation of Rybka (with own ideas, sounds familiar), what came up of looking at those?

Any questions, now is the one time to ask.

Thanks for your attention,

Fabien Letouzey.

For those who did not see the Vas video interview. I believe it will be of great interest to some at 9:28 Vas is asked, "What chess engines in public domain, when you got started, had the biggest influence on the earliest versions of Rybka?" Nothing "Fruity" about his reply.

http://chessok.com/download/A%20Convers ... th%20Vasik%
20Rajlich.wmv
The next Vas interview?

Image
You show a moderate level of lying here....
If Vas is attached,the machine will simply blow off to pieces :lol:

:wink:


Teasing and kidding aside, as some people may be offended, that was not my intent. I was implying that the aforementioned interview may have included different, and perhaps more truthful information if conducted as shown in the satirical image shown above.
diep
Posts: 1822
Joined: Thu Mar 09, 2006 11:54 pm
Location: The Netherlands

Re: Fabien's open letter to the community

Post by diep »

I have problems believing you Bob.

If you wuold rewrite crafty yourself assuming you don't get informed of newer developments where others profitted from:

You seriously underestimate the positive things that others have brought to you into crafty.

a) it would take 10 years
b) it would play 500 elo weaker at the same hardware
c) it would be 2x slower in nps
d) you would again have a testing problem as someone needs to write that code to automatically test. We are still awaiting the 'few scripts' that you use to automatically test crafty and modify its parameters with those scripts.

When you used to edit in crafty source code yourself, 2 bytes got changed, boom new version. No serious testing. Your current helpdesk moves forward so fast that others in CCC, such as Uri Blass, must explain to you, very painful, what the current crafty is actually doing.

Doing a simple compare of version 22.x with 23.x shows the huge number of changes done to crafty.

You wouldn't manage those changes yourself in a 100 years.

Vincent

bob wrote:
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...
diep
Posts: 1822
Joined: Thu Mar 09, 2006 11:54 pm
Location: The Netherlands

Re: Fabien's open letter to the community

Post by diep »

playjunior wrote:
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.
You are treating the 'see you' guys far too serious. When i read it, i was laughing, together with a bunch of other programmers, so loud, that i still can hear the echoes :)

Now i'm waiting for the fantastic story making it more plausible he lost the code. Lemme see. His house in Poland caught fire meanwhile at same time he fell, dropped thereby his laptop, causing it to get underneath an Abrams M1A1 tank, when he visited a very public manifestation. He could not reach out for that laptop, as he was busy rescuing a small boy from getting underneath that tank, earning him a congressional medal - oh no sorry that one already was reserved for Peter Skinner :)

Vincent