Jogo xadrez esporadicamente desde os meus 11 anos; aprendi a jogar com um livro para crianças.

Depois de alguns anos sem tocar no tabuleiro, resolvi recentemente me aventurar pelo "Yahoo! Games" (br.games.yahoo.com), e vi que não é fácil subir na classificação por lá, pelo menos para um jogador do meu nível e que nunca estudou xadrez a fundo. Percebi qe precisava estudar aberturas se quisesse melhorar meu 'score'.

Mesmo apanhando um bocado, algumas partidas eu joguei "magistralmente", e estas eu queria guardar para a posteridade. O Yahoo permite que o jogador envie pelo email em um formato como o que segue:

1. e2-e4 e7-e5
2. g1-f3 d7-d6
3. f1-b5+ b8-c6
4. b5xc6+ b7xc6
5. d2-d3 g8-f6

	

Salvei então as partidas que mais orulho me deram, mas não encontrei um software que lesse um jogo salvo nesse formato. Talvez não tenha mesmo procurado direito, mas o fato é que acabei fazendo um pequenho programa em python que me exibisse a partida em um terminal texto:

marcos@debian:~/xadrez$./lexadrez.py partida_1.txt 0 6 2 5 0 t ° b d r b · t 1 p · p · ° p p p 2 · ° p p · c · ° 3 ° · ° · p · ° · 4 · ° · ° P ° · ° 5 ° · ° P ° C ° · 6 P P P ° · P P P 7 T C B D R · ° T preta g8-f6 movimento normal

Eu já programava em python, mas no modo procedural. Já estava há um bom tempo querendo aprender a utilizar o objeto gtk.DrawingArea do pygtk, e comecei a pesquisar enquanto testava fazer um tabuleiro e suas peças com pygtk. Dias depois, fui fazer um curso de Java, e fiquei 5 dias pensando OOP. Então juntei tudo e fiz este programa:

Oras... Mas esse programa poderia me ajudar a estudar aberturas! Basta criar uma biblioteca de aberturas o mais completa possível!

Desde então, nunca mais joguei xadrez, nem estudei aberturas... Programar em python é muito mais legal!