Programmed instruction is an individualized teaching method that breaks content into small steps and controls the learner's responses. It is based on operant conditioning theory and was popularized by B.F. Skinner in the 1950s. There are two main types: linear programming that presents content in a fixed order, and branching programming which allows learners to choose their own path through multiple choice questions. While programmed instruction aims to individualize learning, it also has limitations such as lacking creativity and social interaction.