The World of Programming.- Programming Languages.- Programming Paradigms.- The Zoo of Programming Languages.- How Programming Languages are Implemented.- How a Program gets "written".- Meet Python.- Further Reading.- Exercises.- The First Ingredient of a Program.- What is Data?.- What is Structured Data?.- Basic Data Types.- Basic Organization of Containers.- Accessing Data or Containers by Names : Variables.- Further Reading.- Exercises.- the 2nd Ingredient of a Program.- Purpose and Scope of Actions.- Action Types.- Controlling Conditionals.- Reusable Functions.- Functional Programming Tools in Python.- Further Reading.- Exercises.- Managing the Size of a Problem.- An Action Recursion.- Iteration.- Recursion versus Iteration.- Further Reading.- Exercises.- Complexity.- Time and Memory Complexity.- Further Reading.- Exercises.- Organizing Data.- Primitive and Composite Data Types.- Abstract Data Types.- Abstract Data Types in Python.- Further Reading.- Exercises.- Reunion of Data and Action.- The Idea behind the Object-Oriented Paradigm (OOP).- Properties of Object-Oriented Programming.- Object-Oriented Programming in Python.- Further Reading.