I'm a big fan of the board game Go. It's a game that I learned how to play from my father many years ago. Like Chess, Checkers, etc. there's no element of chance in the game so it's entirely about strategy and skill. Go has very simple rules but an incredibly high level of open-endedness (Wikipedia's Go page estimates there being about 10^[number of possible Chess games] possible Go games). The level of incredible open-endedness and abstract nature of the game makes it very hard to write computer programs capable of playing Go any better than an amateur (as opposed to Chess programs, which are comparable to grandmasters). However, the inability of people to make good Go playing programs doesn't bug me much because I am an amateur and so it serves as a good way for me to practice. One such Go playing program is the freely available GNU Go. GNU Go is currently better than me by a decent bit but I'm slowly working down my handicap and increasing the board size. GNU Go is text based, so if you prefer graphics, you might want to get PANDA-glGo, which can be used as a GNU Go frontend or an internet Go program. Anyway, Go is an excellent game and GNU Go is a decent program.