In this article we focus on algorithms for solving simple bilevel programming problems. Simple bilevel problems consist of minimizing a convex function over the solution set of another convex optimization problem. Though the problem is convex the bilevel structure prevents the direct application of the standard methods of convex optimization. Hence several algorithms have been developed in the literature to tackle this problem. In this article we discuss several such algorithms including recent ones. © 2020, Springer Nature Switzerland AG.