This document provides an introduction to programming including defining programming as a set of step-by-step instructions that direct the computer, explaining reasons for learning to program such as enhancing problem solving skills and career opportunities. It then describes interactive programming tools including block-based, visual, and script-based tools. Finally, it lists important links for learning programming online.