The purpose of this text is to show how to calculate programs. Describing an algebraic approach based on a categorical calculus of relations. Algebra of Programming is suitable for the derivation of individual programs and the study of programming principles in general.[...]