Convex Analysis may be considered as a refinement of standard calculus, with equalities and approximations replaced by inequalities. Minimization algorithms, more specifically those adapted to non-differentiable functions, provide an immediate application of convex analysis to various fields related to optimization and operations research. The emphasis of the book is on introducing readers in a gradual and digestible manner to the concepts of convex analysis, their interlinking and their implications, with algorithmic ideas worked in. Theory is interspersed with application and vice versa; illustrative numerical results are given , and over 170 pictures illustrate and support geometric intuition. Part I can be used as an introductory textbook; Part II continues this at a higher technical level and is addressed more to specialists, collecting results that so far have not appeared in books.