# M2M Day 352: Challenging chess hustlers in NYC’s Bryant Park

This post is part of Month to Master, a 12-month accelerated learning project. For October, my goal is to defeat world champion Magnus Carlsen at a game of chess.

Today, I went into Manhattan, and, while I was there, I stopped by Bryant Park to play a few games against the chess hustlers.

I wanted to test out my chess skills in the wild, especially since I need more practice playing over an actual chess board.

Apparently, according to chess forums, etc., many players who practice exclusively online (on a digital board) struggle to play as effectively in the real-world (on a physical board). This mostly has to do with how the boards are visualized:

A digital board looks like this…

While a physical board looks like this…

I’m definitely getting used to the digital board, so today’s games in the park were a nice change.

I played three games against three different opponents, with 5 minutes on the clock for each. In all three cases, I was beaten handily. These guys were good.

After the games, now with extra motivation to improve my chess skills, I found a cafe and spent a few minutes working more on my chess algorithm.

In particular, I quickly wrote up the functions needed to convert the PGN chessboard representations into the desired bitboard representation.

`def convertLetterToNumber(letter): if letter == 'K':  return '100000000000' if letter == 'Q':  return '010000000000' if letter == 'R':  return '001000000000' if letter == 'B':  return '000100000000' if letter == 'N':  return '000010000000' if letter == 'P':  return '000001000000' if letter == 'k':  return '000000100000' if letter == 'q':  return '000000010000' if letter == 'r':  return '000000001000' if letter == 'b':  return '000000000100' if letter == 'n':  return '000000000010' if letter == 'p':  return '000000000001' if letter == '1':  return '000000000000' if letter == '2':  return '000000000000000000000000' if letter == '3':  return '000000000000000000000000000000000000' if letter == '4':  return '000000000000000000000000000000000000000000000000' if letter == '5':  return '000000000000000000000000000000000000000000000000000000000000' if letter == '6':  return '000000000000000000000000000000000000000000000000000000000000000000000000' if letter == '7':  return '000000000000000000000000000000000000000000000000000000000000000000000000000000000000' if letter == '8':  return '000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' if letter == '/':  return ''`
`def convertToBB(board): bitBoard = '' board = str(board.fen()).split(' ')[0] for letter in board:  bitBoard = bitBoard + convertLetterToNumber(letter) return bitBoard`
`print convertToBB(board)`

While I’m making some progress on the algorithm, since I’ve been in New York, I haven’t made quite as much progress as I hoped, only spending a few minutes here and there on it.

Let’s see if I can set aside a reasonable chunk of time tomorrow to make some substantial progress…