The book is an introductory textbook mainly for students of computer science and mathematics. Our guiding phrase is 'what every theoretical computer scientist should know about linear programming'. A major focus is on applications of linear programming, both in practice and in theory. The book is concise, but at the same time, the main results are covered with complete proofs and in sufficient detail, ready for presentation in class. The book does not require more prerequisites than basic linear algebra, which is summarized in an appendix. One of its main goals is to help the reader to see linear programming 'behind the scenes'.