This document discusses programmed instruction, which is an individualized, step-by-step self-instructional method for teaching content broken into small units. It defines programmed instruction, outlines its key characteristics like breaking content into small frames and eliciting frequent student response. The principles of small steps, active learning, immediate confirmation, self-pacing, and student evaluation are explained. The two main types - linear and branched programming - are described along with their characteristics and techniques. Finally, the advantages of active learning and self-pacing and limitations like time consumption are summarized.