1 Introduction.- 2 Mathematical Methods.- 3 Design Principles.- 4. Lyapunov stability tools for sliding modes.- 5 SM observers.- 6 Chattering Problem.- 7 High Order Sliding Mode Control.- 8 Discrete-Time Systems.- 9 Adaptive SMC.- 10 SMC in Infinite-dimensional Systems.- 11 Open Problems in SMC.- 12 Conclusions.