On a late winter night, I have decided to watch some YouTube videos on chess for no reason. After watching a few hours of chess video, I have decided to pick up chess as my new hobby. I've tried to be good at many kinds of chess game before, such as Go and Chinese chess, but I've never mastered any of them.
One of my former colleagues suggested me to take a look at chess.com and play some chess over there. Chess.com has a lot of resources and tutorial to help beginners like to me to master this game. I really liked their tutorials and exercises and I would spend at least half an hour a day working on their tactics problems.
I thought I would become reasonably well at chess after a few days of practice, but I was wrong. I get pwned by computer chess engines and other players all the time. As a programmer, the idea of writing a program to play chess and solve all the tactics problems I was working came to my mind. After a some research, I found out that programming a chess engine isn't that hard.
I've decided to start writing a chess engine, so I can practice programming, be a better chess player and learn some AI. This blog shall document this project and my other side projects.
Some milestones for my chess engine:
1) Write an engine that can play chess. Doesn't have to be smart, but just need to be able to generate some moves that don't violate the rules.
2) Improve the engine so that it can beat me in chess.
3) ??? => Profit?