What are some good resources for writing a chess engine? [closed]

From my archives:

  • This is a useful chess programming wiki.
  • This is a simple introduction to chess programming.
  • This is a (free) book on chess algorithms.
  • This contains several easy step-by-step YouTube tutorial series' ranging from beginner to advanced level.
  • This is a more advanced introduction.
  • This is Adam Berent's interesting computer chess blog.
  • This is a good analysis of MTD(f), an interesting search algorithm.
  • This is a good guide to validation of move generation.
  • This is lots of good information on the Rebel chess engine.
  • This is lots of good information on the Dark Thought chess engine.
  • Good information and source code for the Monsoon chess engine.
  • These are more notes on chess programming.
  • A reasonable introduction to rotated bitboards.
  • A reasonable introduction to magic bitboards.
  • A reasonable introduction to late move reductions.
  • A look at null-move pruning.
  • A collection of position sets for testing purposes.
  • Here is an old report from 2 students who wrote a chess program.
  • A bunch of miscellaneous chess programming links.
  • Finally, here is Wikipedia's take on computer chess.

When creating my chess engine I spent months trying to collect good resources that describe some of the harder aspects of creating a chess game. Here is a list of the ones I found most useful:

Chess Programming by François Dominic Laramée

This is the article that got me into computer chess, It is a great overview of how computers play chess. It is extremely easy to read and it will introduce you to all the terms and keywords.

http://www.gamedev.net/page/resources/_/technical/artificial-intelligence/chess-programming-part-i-getting-started-r1014

Computer chess wiki, this has really expanded over the last few months. It is an excellent resource for reference material.

https://www.chessprogramming.org/Main_Page

Louis Kessler's Computer Chess Links

Once you go through the above resources the remainder can be found at the following links page.

http://www.lkessler.com/cclinks.shtml

Last but not least I write a Computer Chess Blog that takes you through all the steps of writing a chess engine in C# from scratch, it includes a computer chess links section and a chess game starter kit.

http://www.chessbin.com

Adam Berent