Structure of this talk Part 1 - Introduction Part 2 - Example: Echo server Part 3 - Dealing with asynchrony Part 4 - Example: Kitchen sink finger