There’s a strong connection between being a good chess player and being a good programmer. Programming requires a similar level of studying, training, understanding, and hard work that is required to play chess.
Imagination and Visualization: Most chess players especially those with 1800+ Elo rating can play chess blindfold, recall most of their previous games, etc and this is a skill that comes from a good sense of imagination, visualization, and good memory.
Patience: A single game of chess can last beyond 6 hours and that requires a lot of patience. In programming there are times when you have to stay with one problem for long and keep on trying different approaches to solving it, this requires the kind of mindset and patience found in chess.
Paulius shares his insights about how his professional chess career started and benefited him as a software developer. He is really good, check it out.
I started playing chess at school when in 4th grade, so as a 10-year-old kid. There was a chess club not far from school and the trainer invited us to check out this hobby. So I with a couple of classmates gave it a go and quite liked it. Of course, most new recruits quit after a year or so, but I hadn’t lost my interest and continued to learn the secrets of this strategic game. One has to really enjoy this activity, otherwise, it’s just a chore.
I remember my first tournament in 1996, where I lost but also won some games. It was a unique experience when playing real and not training games. I managed to win 1st and later 3rd place of my age group (under 12, under 14) in Lithuanian chess championships and got a chance to compete in European chess championships of those age groups. Also, a memorable moment was when I got my first rating in 2003. Other milestones – winning against master and grandmaster level players for the first time. Not to mention countless rapid chess tournaments in Kaunas and Lithuania where I duked it out to become the prize winner.
As white nowadays I play all kinds of openings to be unpredictable and surprise the opponent. The game has advanced so much from chess engines, opening databases, and recently AI. Everyone is super prepared these days. But if a have to choose as white, then 1.e4 – the open game, as it gives rapid development, quick contact with possible initiative and attacking chances, though it depends which defense black chooses.
Speaking of defense, as black against 1.e4 I would most often go for the Sicilian defense, as it is considered one of the best fighting openings for black. Of course against other openings from white such as 1.d4, 1.c4, or 1.Nf3 I have various defensive systems and gambits as black.
As most chess players I use software like ChessBase and my own analysis from chess lectures/videos over the years. When it’s known who I’ll be playing, first I check the opponents’ games from the database and see which opening is most likely to happen, then try to find weaknesses and strengths of opponents’ play and decide my strategy. Also between tournaments, I have to invest time in middlegame and endgame study, tactics puzzles, and online play or training games to constantly improve or at least stay at the same level of play. Chess is like a language in this regard, if you don’t use it, you begin to forget it.
In programming, one might adapt chess skills when trying to find paths to solving the problem, being patient and not giving up, though I don’t see the big correlation. It mostly helps me with patience and concentration.
In my opinion, if a player likes to learn on their own then there are countless videos, courses online, it’s not that hard to learn the basics. But when you move from there, one needs a trainer or recommendations about what courses to take based on their level from experienced players. Like in any subject, if you wanna improve, you really need to enjoyment, motivation and practice it constantly.
Paulius ratings of International Chess Federation: https://ratings.fide.com/profile/12802247