Re-activation Programmer Code of Honor

Discussion of chess software programming and technical issues.

Moderator: Ras

AndrewGrant
Posts: 1964
Joined: Tue Apr 19, 2016 6:08 am
Location: U.S.A
Full name: Andrew Grant

Re: Re-activation Programmer Code of Honor

Post by AndrewGrant »

smatovic wrote: Mon Sep 28, 2020 9:02 am Ah, okay, I missed the imaginary * - the white knight is allowed to reverse... ;-P
To each his own. If you would like to argue about Fire, there is a nice thread for that.

Otherwise, I would like to see discussion of Rebel's postings. I'm interested to see if other developers, both new and old, have a similar vision, or if they have different ones.
User avatar
maksimKorzh
Posts: 775
Joined: Sat Sep 08, 2018 5:37 pm
Location: Ukraine
Full name: Maksim Korzh

Re: Re-activation Programmer Code of Honor

Post by maksimKorzh »

Thanks for adding me, Ed!
User avatar
Rebel
Posts: 7449
Joined: Thu Aug 18, 2011 12:04 pm
Full name: Ed Schröder

Re: Re-activation Programmer Code of Honor

Post by Rebel »

I think it's oke to RE a suspect engine, not to steal ideas, we have github for that :D
90% of coding is debugging, the other 10% is writing bugs.
User avatar
Rebel
Posts: 7449
Joined: Thu Aug 18, 2011 12:04 pm
Full name: Ed Schröder

Re: Re-activation Programmer Code of Honor

Post by Rebel »

AndrewGrant wrote: Mon Sep 28, 2020 9:08 am
smatovic wrote: Mon Sep 28, 2020 9:02 am Ah, okay, I missed the imaginary * - the white knight is allowed to reverse... ;-P
To each his own. If you would like to argue about Fire, there is a nice thread for that.

Otherwise, I would like to see discussion of Rebel's postings. I'm interested to see if other developers, both new and old, have a similar vision, or if they have different ones.
In the past (2012) several programmers (I won't call names) had a problem with the RE stipulation and did not subscribe because of that. Note that in the EU it's (already) illegal. As far as I know not in the US.
90% of coding is debugging, the other 10% is writing bugs.
User avatar
mvanthoor
Posts: 1784
Joined: Wed Jul 03, 2019 4:42 pm
Location: Netherlands
Full name: Marcel Vanthoor

Re: Re-activation Programmer Code of Honor

Post by mvanthoor »

It's hard to know when you'd select "original", or "inspired".

My own engine was certainly "inspired" by VICE. Tt actually started out as a cleaner re-implementation of VICE, in Rust instead of C, while I was (re)learning about chess programming concepts. However, since then, the engine has changed a great deal:

1. Vice uses mailbox, Rustic evolved to magic bitboards
2. Because of 1, Rustic obviously has a completely different move generator
3. Some things such as Zobrist randoms and keeping history are implemented very differently.
4. Vice is monolithic, Rustic is completely modular with threaded active objects for communication, search, and search workers.

Therefore I have chosen "original", even though the engine was certainly "inspired" by VICE (or more accurate, its tutorials).
Author of Rustic, an engine written in Rust.
Releases | Code | Docs | Progress | CCRL
User avatar
xr_a_y
Posts: 1872
Joined: Sat Nov 25, 2017 2:28 pm
Location: France

Re: Re-activation Programmer Code of Honor

Post by xr_a_y »

mvanthoor wrote: Mon Sep 28, 2020 12:16 pm It's hard to know when you'd select "original", or "inspired".
I personally choose "inspired" for Minic as a sign of respect for the work done in other engines and great resources available (this forum, CPW, ...).
User avatar
mvanthoor
Posts: 1784
Joined: Wed Jul 03, 2019 4:42 pm
Location: Netherlands
Full name: Marcel Vanthoor

Re: Re-activation Programmer Code of Honor

Post by mvanthoor »

xr_a_y wrote: Mon Sep 28, 2020 12:58 pm I personally choose "inspired" for Minic as a sign of respect for the work done in other engines and great resources available (this forum, CPW, ...).
In that case, every engine is inspired by every other engine that came before it.

It's almost impossible to build something 100% original; maybe Leela may qualify, but even that engine uses techniques that were first theoretically explored in the 80's already, but couldn't be put into practice because the computers were too slow.
Author of Rustic, an engine written in Rust.
Releases | Code | Docs | Progress | CCRL
User avatar
xr_a_y
Posts: 1872
Joined: Sat Nov 25, 2017 2:28 pm
Location: France

Re: Re-activation Programmer Code of Honor

Post by xr_a_y »

mvanthoor wrote: Mon Sep 28, 2020 1:07 pm
xr_a_y wrote: Mon Sep 28, 2020 12:58 pm I personally choose "inspired" for Minic as a sign of respect for the work done in other engines and great resources available (this forum, CPW, ...).
In that case, every engine is inspired by every other engine that came before it.

It's almost impossible to build something 100% original; maybe Leela may qualify, but even that engine uses techniques that were first theoretically explored in the 80's already, but couldn't be put into practice because the computers were too slow.
Indeed, that was just my mood at this moment that led to that choice. Not putting pressure on others.
User avatar
Rebel
Posts: 7449
Joined: Thu Aug 18, 2011 12:04 pm
Full name: Ed Schröder

Re: Re-activation Programmer Code of Honor

Post by Rebel »

mvanthoor wrote: Mon Sep 28, 2020 12:16 pm It's hard to know when you'd select "original", or "inspired".
Living in a github era and all the other online info it's hard not to start as "inspired", but I suppose that sooner or later "original" fits better.
90% of coding is debugging, the other 10% is writing bugs.
AndrewGrant
Posts: 1964
Joined: Tue Apr 19, 2016 6:08 am
Location: U.S.A
Full name: Andrew Grant

Re: Re-activation Programmer Code of Honor

Post by AndrewGrant »

xr_a_y wrote: Mon Sep 28, 2020 12:58 pm
mvanthoor wrote: Mon Sep 28, 2020 12:16 pm It's hard to know when you'd select "original", or "inspired".
I personally choose "inspired" for Minic as a sign of respect for the work done in other engines and great resources available (this forum, CPW, ...).
Likewise here. The original Ethereal release credited Fruit, Crafty, and MadChess, as sources of inspiration and knowledge. Of course now, you likely cannot find anything that resembles either of those three engines, but I want to give credit where credit was due.

It may be impossible now to call a work _completely_ "original", in the pure sense that it would have been 20 years ago. But thats not a bad thing. I'm happy that all engines employ LMR, and NMP, and a TT with Pawn hashes.