This document provides an overview of computer programming and programming languages. It discusses why programming is useful, the programming process which involves defining problems, planning solutions, coding, testing and documenting programs. It also outlines common programming career paths and different levels of programming languages from machine language to very high-level and natural languages. The levels of languages make programming more accessible to humans by moving from numeric codes to English-like syntax.