This document discusses finite difference methods for solving differential equations. It begins by introducing grid-based computation and finite difference approximations of derivatives. It then provides examples of solving differential equations using explicit and implicit finite difference schemes. The document discusses various approaches to implementing finite difference methods in code, including defining the domain, discretization, boundary conditions, and iteration procedures. It also gives examples of applying finite difference methods to problems in math, physics, and heat conduction.