This document compares procedural programming and object-oriented programming (OOP). It states that procedural programming focuses on functions as the basic unit and emphasizes how tasks are accomplished, while OOP focuses on objects and events that occur to objects. It also notes that procedural programming separates data from operations, can be more complex, and changes may affect the whole program, whereas OOP encapsulates data and functions together in classes, allows easier management of complexity, and changes can be made without affecting the rest of the program.