We now live in a time where everything is digitalized - almost nobody can live with computers and internet. In the age of computers, coding becomes a basic skill for the new generation. Therefore, we may ask two fundamental questions about computer programing: why do we code and how do we code? In this course, we will spend time seeking rough and partial answers to these two questions. We will first briefly review the history of the development of computers: for what purpose do we invent them and what we can do with a computer? Then, we will dive into the introduction to a specific subset of computer programming for the starters - the basic level coding with simple form of input and output. We will first focus on the basic language structures and then introduce some generic data structures and basic algorithms. In this course, we will mainly use C++, which is a very popular and powerful language. We will only use a small subset of its functions, (because otherwise it will be to much for an introductory level course) but for starters, this will be a very useful and handy tool. Noticing that learning computer programing by memorizing all the rules are boring, this course will introduce concepts in computer programing mainly by experimenting and finding the intuition behind it.