This spring, we taught a class with new experimental methods of teaching programming to non-CS majors. The class started with a Scratch module, then 4 weeks of Python, and after that a choice of Arduinos and Databases, GIS, robots, drones or virtual reality.
Katie Manzo, my CLA (computing learning assistant), and I oversaw the Arduino and Database group. Everyone received an Arduino starter kit, and worked their way through different circuit tutorials. We integrated sensor streaming from Arduino boards sensors to Python programs and SQL databases.
The group had 2 final projects: building a zeotrope regulated by a soft potentiometer, and a live streaming sensor station visualizing live data.
Here are some snapshots from the class.
The class material (for self study) is available at this link.