This document provides an introduction to PLC programming and ladder logic. It discusses the most common programming languages for PLCs, with ladder logic being the dominant method as it was developed to mimic relay logic. Ladder logic uses graphic symbols of rungs and contacts to represent circuit diagrams. The document also briefly outlines other programming methods for PLCs such as sequential function charts, structured text, and function block diagrams.