Preface

Hi there. Nice of you to hang around. I'm Marcel, the author of the chess engine Rustic, and the writer of this text. You're about to step into the wonderful and sometimes aggravating world of chess programming. This can be a rewarding endavour... but maybe addictive is the better word. There will be lots of challenges, but with perseverance you'll be able to overcome them one at a time. When you reach the point where your chess engine is capable of playing its first full game against yourself or another engine, you will have created something to be proud of.

"But... wait", I hear you asking, "hasn't this chess programming thing been done before?" You're right. It has been done before. If you write your own chess engine from scratch, you become part of a long history and tradition, which already started at the dawn of the computer age in the early 1950's. Many chess programmers came before you, and many will come after. Even though at the time of this writing in 2021 there are hundreds of chess engines available, there is still merit in writing your own. The reasons why people write their own chess engine are extensive. Some of them can be:

  1. Studying computer science concepts.
  2. Learning a new programming language.
  3. To have their own engine to play against.
  4. As a prelude to get into machine learning.
  5. To compete with other engines and authors.
  6. And many others.

During the writing of a chess engine there is always something new to learn, one more feature to add, or another bug to fix. Some engines have been in development for 25 years or more, and they are still improving. This does not have to be a project you just start, plan, create and finish like any other; it can be a journey and a hobby that can last for decades, if you want it to.

Welcome on the long road towards your own chess engine, and good luck!

Have fun,
Marcel