Computers are no longer strictly for computation. Now they are primarily used for communication. It is not enough that a program be correct in its own right. It must also be correct within a network of machines. The theory of distributed computing helps us to understand and reason about the behavior of networked systems.