Onno Chess Software : Author

Onno Garms - Chess Program Author

In Short


I was very enthusiastic about chess in my youth.

It must have been at the age of about seven when I was fascinated by my father's chess computer (a Commodore Chessmate) which announced every move with four notes (indicating from-square and to-square) and played three different melodies for check, winning checkmate and losing checkmate. The computer played weakly, but so I did, and it was a good mate for learning the game, giving me the feeling of success soon. I also played with my father. He was a good teacher and never let me win.

Later I learnt to defeat my father and also his new chess computer, a Mephisto II. At the age of 13, I used savings of several years to buy a Mephisto MM IV and spent days with nothing but playing with it.

At the age of 14 I joined a chess club, the Bremer Schachgesellschaft. In team play I made it into the first adult team of our club. In my age class I was among the best in Bremen. In 1989 I won the inofficial northern German championship of "C-Jugend" (below 15) which gave me Ingo 94 (equates to Elo 2088) as first rating.

In the following years I was less successful and saw my rating dropping. Also school left less spare time then in younger years and I discovered mathematics and computers as new hobbies. So I visited the chess club less often and eventually stopped to play entirely at the age of 18.

Mathematics, Computer Science, and Programming

I taught myself computer programming at the age of 16 in BASIC on a C64. The idea of writing a chess playing program was tempting soon, but beyond my skills at those days. Later I learnt PASCAL and tried to write a program for Connect Four. Having no game specific instructions on programming I failed miserably. I did invent min-max myself, but this is clearly not enough for a program to play well. So I put the idea of writing a chess program aside and focused on other programs.

After school I studied Mathematics. I started in Bremen and changed to Bonn in my third year. I graduated with a work that involved implementation of number theoretic algorithms in C.

After university I was lucky to find a job where I could continue to implement algorithms, now for discrete optimization. Directly after I finished my doctor (also with algorithms for real-world problems) I decided to use my newly gained skills to resume chess and take it to a competitive level once more.