This document provides an introduction to computer programming skills for civil engineering students. It discusses why engineers need programming abilities and how computer modeling is important for engineering problems. The lecture covers algorithms, finite element analysis, and examples of programming applications in areas like fluid dynamics, geotechnics, and groundwater flow. Limitations of models and the importance of verification and validation are also addressed. An example algorithm for extracting annual maximum river discharge data from daily records is presented to illustrate programming concepts.