Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Here you will find various insights from teachers and programmers on how to approach teaching in computer science and a project-based perspective. Borrow, adapt and curate the ideas presented to help you develop your unique approach. Don't hesitate asking question in Slack on any of these ideas.
Angela is the CT Instructional Coach at Arsenal Tech High School in Indianapolis and an experienced Computing by Design teacher as part of the iDEW program.
For the IoT programming workshop we simply request that you submit the following three items in a document.
A link to your working web app code (e.g. replit.com) that connects to your IoT board.
A copy of your Particle Build code.
A summary of your classroom plan
Consider how you will approach classroom management when students are completing a tutorial like this one.
What will be your expectations?
How much will be individual work versus team work?
Will you assign any code champions to help you support students with questions?
How will you supplement it with other programming content or experiences?
Will you use any online tutorials?
Will you supplement with any CS unplugged activities?
Will you create any custom programming exercises yourself?
All programming workshops will use the same warm up, linked below.
This workshop is largely asynchronous, providing you flexibility to complete things on a schedule that works for you. Below you will find the sequence of events and videos for the workshop. Notice the two live Zoom sessions on Monday at 2:30 pm and Thursday at 2:30 pm. Otherwise we will use Slack for discussions and impromptu Zoom meetings as needed. Please don't hesitate posting a message on Slack for help.
Slack Channel: #programming-iot in the CxD 2022 Slack Workspace
Programming Platforms
Particle Build is the recommended programming platform for the IoT Board.
Replit.com is the recommended platform for web app programming.
Zoom Video Conferences: A link will be provided on Slack
Here is the link to the original Code Reference that uses the no longer available Sparkfun Inventor's Kit. You may find this useful as the documentation is being updated for the new IoT kit. https://docs.idew.org/code-internet-of-things/
This workshop is focused squarely on the programming component of a CxD Project. For a little bit of background, you will find that the Computing by Design framework is project-centric in the approach.
Each project has three phases, where programming is a very important component of all three. Our Innovation Workshop covers the breadth of the Computing by Design framework. We have found that the programming in any project presents a fine line between a wonderfully empowering experience (when students struggle and get things working) and a sometimes frustrating experience that becomes a missed opportunity. Therefore we are offering these programming workshops to provide a solid foundation on building the applications.
We encourage you to offer students a two-pronged approach to learning to program. Computing by Design projects provide an "application first" approach to programming where students are provided direct guidance on creating a specific type of application through templates and tutorials -- like with trivia , a chatbot, IoT etc. This approach complements the many great tutorials available online that provide a "concept first" approach by stepping through concepts in programming. Facilitating both approaches for students provides a varied experience -- strengthening knowledge and offering more opportunities to ignite interests.
Identify an online tutorial site that you can use in your classroom to supplement any project work. Over the course of the workshop try out a few basic online programming tutorials from popular sites to facilitate this "concept first" approach, and consider how you might manage a self-paced assignment based on milestones. How might you use these self-guided tutorials as "filler time" or dedicate scheduled time to their completion?
Slack will be our primary communication platform for the workshop. The video above provides a brief introduction on the features of Slack, but more help and tutorials can be found at https://slack.com/help.
Replit is the recommended programming environment for many of our projects. The video above provides a brief introduction on the features of Replit, but more help and tutorials can be found at https://docs.replit.com/.
Particle offers a web-based editor (https://build.particle.io/build/) that makes programming a device pretty easy. To prepare for the workshop you will want to create a Particle account and know how to access the programming environment. We will get to actually programming a little bit later.
Documentation Link: IoT Code Reference and Tutorials 2.0 (Under Development in Summer 2022) Note: The CxD IoT project provides two online documents. One document for the broader project instructions that include things like research, design and implementation. The second document is a code reference for programming. In this workshop we will focus on the programming and use the code reference document.
Getting Started with Programming the IoT Device
We will use the Particle tutorial for the IoT kit linked below to guide us, but the videos will deviate a bit to demonstrate things using the web programming environment. Ultimately we want to get familiar with the hardware, inputs, sensors, and programming. ★ Post questions and successes in our Slack channel as you move along.
5. Save, Verify, and Flash the code to the Argon board.
6. Open the Console from particle build, select "my devices", and select your Argon.
7. Get the temp and humidity variables to check if all is working.
Instructions coming soon...
5. Save, Verify, and Flash the code to the Argon board.
Getting Started with a Web Interface to the IoT Device
5. Save, Verify, and Flash the code to the Argon board.
6. Open the Console from particle build, select "my devices", and select your Argon.
7. Get the temp and humidity variables to check if all is working. Call the "toggleLed" function to ensure the light toggles.
This video steps you through claiming a particle device and setting up WIFI. You will want your mobile phone to complete this with the Particle App installed. Apple: Android:
This link comes in very handy for interpreting the different status LED signals you may get from time to time.
We are covering concepts from the Particle Variables: measure temperature & humidity section of the tutorial.
We are covering concepts from the Particle Functions: controlling a Chainable LED section of the tutorial.
Experimenting with a Custom Project
After completing the particle tutorials, develop a custom application with a subset of the provided hardware that solves a problem with web-enabled features. Simple examples (Thermostat and Door Bell) will be posted as we progress. Again, let's share successes and roadblocks liberally in Slack to help each other and inspire ideas.
Example code coming soon...
Example code coming soon...
Now that you have experience with programming for this project...
Consider how you will approach classroom management when students are completing a tutorial like this one.
What will be your expectations?
How much will be individual work versus team work?
Will you assign any code champions to help you support students with questions?
How will you supplement it with other programming content or experiences?
Will you use any online tutorials?
Will you supplement with any CS unplugged activities?
Will you create any custom programming exercises yourself?
Welcome and Introductions
Quick Survey
Review of Workshop Format and Sequence
Key Pointers
Sharing Code via Slack
Searching the Internet for Code Help
Online Tutorials and Other Resources
Look for Patterns and Analogies You Can Identify With
Information on School of Informatics and Computing Degrees
Open Discussion and Wrap Up
The Zoom link will be posted in Slack workshop channel.