Skip to content

Latest commit

 

History

History
32 lines (20 loc) · 2.82 KB

ClassIntroduction.md

File metadata and controls

32 lines (20 loc) · 2.82 KB

Important Reminders

Here are a few of the most important things to remember about the course:

  1. Always ask questions: I expect that you will ask questions as soon as you have them. The class' ability to be able to understand the material depends on everyone being willing to ask questions. If you have a question, there is almost surely someone else wondering the same thing. Take control of your learning and be the one to ask the question. Your classmates will thank you!
  2. Your health is a priority: If you suspect that you are physically sick or have been exposed to someone who is physically sick, please take care of yourself. I will never hold it against you for missing a class because of illness. I consider health a holistic measure -- please use the resources available on campus to make sure that you take care of yourself.
  3. Everyone is welcome in the classroom: If I notice that any behavior or statements are affecting anyone's ability to meaningfully participate in class, I will address the situation immediately. Please reach out to me immediately if you feel that there is something I could do to make the classroom more inclusive.
  4. I will adjust: If there is anything that I can change (about lectures, labs, assignments, etc) that will help you learn, please let tell me.

What is Computer Programming?

After we addressed the course details, we began with a broad discussion of the purpose of the computer:

  • perform calculations,
  • make human life better,
  • store data,
  • perform complex tasks,
  • communication and connection,
  • entertainment, among others.

Each of those is a way of describing the fundamental purpose of the computer: to compute. To respond to the question, "What is the purpose of the computer?" with the answer, "To compute." only raises another question: "To compute what?" Sadly, there are too many reasonable response to that question to list here. We can summarize the responses by saying, "Anything."

How to Compute Anything

Just how, then, are we able to specify that we can compute anything? By programming with a programming language, obviously. Programming is

... an enabling technology for those computer and information fields of science and engineering, as well as for physics, biology, medicine, history, literature, and any other academic or research field. (Stroustrup, B. (2014). Programming: Principles and practice using C++ (2nd ed.). Addison Wesley Educational.)

Unfortunately, though, the computer is nothing more than a "nitpicking, unforgiving, dumb beast[]" according to the inventor of the C++ programming language, Bjarne Stroustrup.

In the next class we will begin our discussion of the architecture of the computer, how a program written in a language like C++ gets converted into something that the computer can execute and the fundamental components of a C++ program.