Brief history of the evolution of programming languages; algorithms and their description (pseudo code, flowchart); problem understanding; algorithm development; program development and testing; basic elements of a programming language; simple data types; basic statements; structured data types; modular programming; file management;