We examine the computer science concept of how a single-threaded, sequential program flows in Arduino.
This week, we examine a slightly different type of science: computer science! We will cover concepts like what a compiler does (in a broad scope), what is meant by sequential programming, and how to use a flow chart to diagram a program.
I found it difficult to discuss many of these concepts without showing examples, which meant picking a programming language. Given the popularity of Arduino with beginners and our audience (especially as an introduction to embedded systems), the Arduino language (OK, it's really C and C++ inside a framework) seemed like a good fit.
In the video, I go over how an Arduino program executes sequentially and how it can be visualized in flowchart form. My hope is that these programming videos can be used as supplemental material in a student's computer science class or by people learning on their own.
If you would like to follow along, here is an in-depth guide on installing the Arduino integrated development environment (IDE):
I know that many of you are likely well-versed in programming, so the video will be a rehashing of the absolute basics. Do you have any suggestions for teaching computer science concepts to beginners? Which terms are important to be defined, and what analogies would you use?