This document provides an introduction to computer programming. It defines computer programming as giving a set of instructions to a computer to perform a specific task. Programming involves encoding an algorithm into a programming language that can be executed by a computer. Analogously, a recipe provides instructions for a person to follow. The document outlines some key programming terminology like compilers, bugs, and debugging. It also presents examples of computer programs and sample salaries. Fundamental programming concepts of variables, data types, control structures and subroutines are introduced.