oW should coded communication be approached? Is it about prob- H ability theorems and bounds, or about algorithms and structures? The traditional course in information theory and coding teaches these together in one course in which the Shannon theory, a probabilistic the- ory of information, dominates. The theory's predictions and bounds to performance are valuable to the coding engineer, but coding today is mostly about structures and algorithms...