ChessUSA.com TalkChess.com
Hosted by Your Move Chess & Games
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Stockfish on github
Goto page 1, 2, 3  Next
 
Post new topic       TalkChess.com Forum Index -> Computer Chess Club: Programming and Technical Discussions Threaded
View previous topic :: View next topic  
Author Message
Marco Costalba



Joined: 14 Jun 2008
Posts: 2090

PostPosted: Sun Oct 02, 2011 11:07 am    Post subject: Stockfish on github Reply to topic Reply with quote

Me and Joona are fading out from this wonderful chess engine world.

I have recently changed my job and I have almost no more time to dedicate to this hobby and Joona is in a similar condition. This is a pity somewhat but, hey, it is how things go, nothing is forever. We will continue with Stockfish but at a much reduced effort. So we were wondering what we could do now. And we had the idea to push our private git repository to github, so that everybody is free and even encouraged to contribute with patches, like it is common practice in open source development. We think our git tree is very valuable, not only for contributors but also for all the developers, especially the ones of strong engines, that will see in great detail what has been done, what has been proven to work and why: our git tree is really a kind of detailed diary of more than 2 years of developing of a world class engine. In my opinion is more valuable than sources or documentation and is the best gift we can give to this community.

In our dreams maybe it will attract some talent and create a little developer community around SF. I don't know if this will turn real or is just wishful thinking, but anyway me and Joona will continue to maintain SF and will gladly apply the patches that we will receive.

The rule to apply patches are very simple:

- If a patch is a "non functional change", for instance a clean up or a code simplification (we care a lot about code cleanups) will be applied without testing, just after a quick scrutiny to verify that actually does not change functionality and is really a code improvement.

- If a patch is advertised as an ELO increase stuff, then should be backed up with serious testing data and anyhow will be tested again by us before to be applied.

- Patches that add big chunks of code will not be accepted, in particular I am not willing to add tablebase support Wink thank you.

- As common with git, patches will be applied with the author name of the submitter, that is the author of the patch.

Probably we will do a last release before pushing to github, so to avoid fostering wild compiles directly from the tree and also to have a clean starting point.

Now it's up to you, we'd really love to hear comments from you. If this idea can be interesting, there is someone wondering to contribute or is just business as usual.

Thanks
SF Team
Back to top
View user's profile Send private message
Rein Halbersma



Joined: 22 May 2007
Posts: 241

PostPosted: Mon Oct 03, 2011 6:20 am    Post subject: Re: Stockfish on github Reply to topic Reply with quote

This would be much, much appreciated! Christmas is coming early this year Smile I suppose the testing code itself is not included in your repo? Some sort of distributed testing (SF @ home) would be nice.
Back to top
View user's profile Send private message
Ilari Pihlajisto



Joined: 27 Mar 2006
Posts: 554
Location: Finland

PostPosted: Mon Oct 03, 2011 3:02 pm    Post subject: Re: Stockfish on github Reply to topic Reply with quote

It's very sad news that you guys now have something more important to do than developing a free chess engine. But it's great news that Stockfish's commit tree will be publicly available. That's really the way to go for open source projects, and it makes it a lot easier for third parties to contribute their commits to be merged in the master branch.

Things may not go as smoothly as I hope though, because chess engine developers are notorious for writing unreadable code, ignoring documentation and coding conventions, making way too big changes, publishing too early, and not using essential tools like diff and version control systems. It's also generally hard to find people who are willing to contribute to a project that's not their own, especially if they feel that the development of said project is stalling.

My suggestion to you and Joona is to list some tasks (fixes, cleanups, features, optimizations, etc.) that you would like to get done, and describe the tasks well. Then it would be easier for third party developers to just browse through your TODO list and see if there's anything they could do.

Thanks again for Stockfish, it's one of the very best engines out there, and not just in terms of playing strength.
Back to top
View user's profile Send private message Visit poster's website
Marco Costalba



Joined: 14 Jun 2008
Posts: 2090

PostPosted: Mon Oct 03, 2011 5:33 pm    Post subject: Re: Stockfish on github Reply to topic Reply with quote

I have pushed the master branch to github:

https://github.com/mcostalba/Stockfish

No release for now given that the increase in ELO terms from 2.1.1 is very small, especially for single core case (where Ingo tests Wink )

Thanks to Ilari and Rein for your words, incidentally you two are among the (few) very best coders I had the opportunity to know in this community and so your comment are even more appreciated.

@Rein: If with testing code you mean the autotuning tools we use to tweak parameters in SF, well, you are right these tools are not part of SF sources and are a separate stuff.

@Ilari: We don't have a detailed TODO list, an engine IMHO is a bit different from a GUI where you can add features almost endlessy. A chess engine, when mature, is an almost complete piece of software and you can further develop mainly along two lines: cleaning up and simplify code already in and/or adding stuff that increases ELO level. For both of these two directions it is difficult to write a TODO because mainly "you do once you realize you can do".


As a side note, the diff of current master from last released version 2.1.1 is:

33 files changed, 2519 insertions(+), 2994 deletions(-)
Back to top
View user's profile Send private message
Jon Dart



Joined: 10 Mar 2006
Posts: 1717
Location: http://www.arasanchess.org

PostPosted: Mon Oct 03, 2011 7:52 pm    Post subject: Re: Stockfish on github Reply to topic Reply with quote

IMO, you shouldn't accept any changes, even apparently trivial, w/o testing.

If possible you should include with the source a minimal set of tests you expect to pass before commits. Then the committers can run those

--Jon
Back to top
View user's profile Send private message
Ralph Stoesser



Joined: 06 Mar 2010
Posts: 294

PostPosted: Mon Oct 03, 2011 8:02 pm    Post subject: Re: Stockfish on github Reply to topic Reply with quote

@Marco
GL for your new job and thx for the git!
A very interesting read.
Back to top
View user's profile Send private message
Joerg Oster



Joined: 10 Mar 2006
Posts: 151
Location: Germany

PostPosted: Tue Oct 04, 2011 8:11 am    Post subject: Re: Stockfish on github Reply to topic Reply with quote

Hi Marco,

Stockfish gave me so much fun over the past few years and I learned at least a little bit from it. So many thanks for a wonderful engine to the whole SF Team!

And all the best to you and Joona in your new jobs. Very Happy

Joerg.
Back to top
View user's profile Send private message
Ingo Bauer



Joined: 09 Mar 2006
Posts: 1076
Location: Hamburg

PostPosted: Tue Oct 04, 2011 12:50 pm    Post subject: Re: Stockfish on github Reply to topic Reply with quote

Hi Marco,

mcostalba wrote:

...
No release for now given that the increase in ELO terms from 2.1.1 is very small, especially for single core case (where Ingo tests Wink ).
...


You (as a team) once expected nearly no increase and it was a big jump (on IPON and others) the other time you expected something and there was nearly nothing (on IPON and others). When the second thing happened you (team) questioned your testing methods ... maybe this time ... who knows.

As the current source is available do you mind to give it a release number (2.1.2?) as it is maybe the last one from you (team) alone?

Bye
Ingo

PS: Actually the german language is much more clear when talking about you (du) and you (ihr/euch). At least one advantage Smile
_________________
http://www.inwoba.de Latest IPON Rating List
Back to top
View user's profile Send private message Visit poster's website
Jouni Uski



Joined: 08 Mar 2006
Posts: 1166

PostPosted: Tue Oct 04, 2011 6:41 pm    Post subject: Re: Stockfish on github Reply to topic Reply with quote

I am curious: what is "Better naming borrowed from Critter" meaning, you have Critter source?

Jouni
Back to top
View user's profile Send private message
david nash



Joined: 30 Sep 2011
Posts: 153

PostPosted: Wed Oct 05, 2011 12:07 am    Post subject: Re: Stockfish on github Reply to topic Reply with quote

Thanks for the great engine, I hope future versions based on the github can improve the playing strength. I first downloaded Stockfish over a year ago and enjoyed reading the code. Are there any plans for a documentation wiki?
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic       TalkChess.com Forum Index -> Computer Chess Club: Programming and Technical Discussions All times are GMT
Goto page 1, 2, 3  Next
Threaded
Page 1 of 3

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum




Powered by phpBB © 2001, 2005 phpBB Group
Enhanced with Moby Threads