there are two types of chess programs. one plays against a human opponent; the other helps the user become a better player. the two types can be made to work together, though they have different functions and work in different ways.