53733 - CODING AND INTERACTIVE COMPUTING: A PROJECT-BASED APPROACH
Instructor: George Meadows, gmeadows@umw.edu
Course Description
Physical computing is the term used to describe computing systems that interact with the world around them. The basic components of a physical computing system include a sensor for input, a computer for processing/evaluating that input, and a device for output. A simple example of such a system would be an automated plant watering device. The system would measure soil moisture in a flowerpot (input), evaluate the level of soil moisture (computer processing), and when needed, add water to the pot (output). We use coding to connect the pieces of the system.
In this class we will be working with the BBC Micro:bit, a very small, inexpensive microcomputer. The Micro:bit works with several input and output devices and can be programmed using a no-experience-required block coding language or the Python text-based language. No prior experience in coding or working with microcomputers is needed.
Learner Outcomes
During this class we will be using hands-on practice to learn about:
- The BBC Micro:bit and its sensors and output devices
- The online coding environment for the Micro:bit
- Developing and building a simple physical computing system
Materials
Friday – a computer and access to the internet
Saturday – a computer (If you don’t have a laptop I’ll have a couple of Chromebooks available.)
Friday
- Watch these brief videos introducing the Micro:bit and demonstrating an interactive computing system project using the micro:bit
- Visit the Microbit site: https://microbit.org/ There are lots of resources here, projects, links to educational resources, and so on. We’ll talk about this in class Saturday, but for now choose the Let’s Code option from the Menu bar, then choose the MakeCode Editor under the Quick Links tab. That should take you here: https://makecode.microbit.org/ You’ll see lots of examples of programs for the Micro:bit as well as a number of tutorials.
A good place to start would be with the Name Tags tutorial. Click on that and you’ll have the option to watch a video or do a tutorial with one of the programming languages. Choose the Blocks Tutorial. There is a Play Video Option, but I found it a bit difficult to watch. You can also go through more tutorials or look at some examples.
This should give you a good idea of what the programming environment looks like and a quick look at just how it works. We’ll be reviewing this in class on Saturday.
Saturday
- Hands-on introduction to the Micro:bit (I will provide the Micro:bits and related materials)
- Coding with MakeCode blocks – writing a simple program and downloading the program to the Micro:bit
- Exploring the MakeCode code blocks, adding extensions
- Interactive systems
- Examples - robots, climate stations, plant watering devices
- Planning and building an interactive system
- Resources for going further with the Micro:bit
You might also want to visit these three posts from an earlier, week-long Micro:bit course. They provide a further introduction to the Micro:bit and using the Makecode coding environment:
- https://intro2microbots.blogspot.com/p/coding-makecode-blocks.html
- https://intro2microbots.blogspot.com/p/the-microbit-website-and-coding.html
- https://intro2microbots.blogspot.com/p/the-bbc-microbit.html
The SOLs can be found here and downloaded as a PDF or Word document: https://doe.virginia.gov/testing/sol/standards_docs/computer-science/index.shtml
The VDOE Computer Science Standards for K - 12 are organized into six strands: Algorithms and Programming, Computing Systems, Cybersecurity, Data and Analysis, Impacts of Computing, and Networks and the Internet. For this class we will focus on the Algorithms and Programming strand. VDOE describes this strand as follows:
“Algorithms and Programming involves the use of algorithms. An algorithm is a sequence of steps designed to accomplish a specific task. Algorithms are translated into programs, or code, to provide instructions for computing devices. Algorithms and programming control all computing systems, empowering people to communicate with the world in new ways and solve compelling problems. The development process to create meaningful and efficient programs involves choosing which information to use and how to process and store it, breaking apart large problems into smaller ones, recombining existing solutions, and analyzing different solutions.”
From the VDOE Computer Science Standards of Learning, p. 8


Comments
Post a Comment