This paper introduces the LMS algorithm for optimizing finite impulse response (FIR) filters. Practical considerations are explored regarding initial filter settings, determining target values, and selecting the adaptation step size. Requirements on the input signal spectrum and aspects of constrained adaptation are also discussed.