Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
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.
A project that connects complex ideas in data with code and visual perception
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 1 pm and Wednesday 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: #ws-programming-data-viz in the CxD 2021 Slack Workspace
Documentation Link: Data Visualization Programming Exercises
Spreadsheets: Our examples will use Google Sheets
Python: We will use Google Colab to create a Python notebook in Google Drive.
Web Programming (HTML/CSS/JS): Replit.com is the recommended programming platform for web programming.
Zoom Video Conferences: A link will be provided on Slack
Recommended Programming Supplements: See the Skill Building section of this document.
All programming workshops will use the same warm up, linked below.
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 programming workshops we simply request that you submit the following two items.
A link to your working code (e.g. replit.com) that demonstrates completion and customization of tutorial material.
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?
Submit using the link below...
The code to submit will be provided in Slack.
While this workshop is focused on the programming aspect of project, you will want to review the full project guide book below to understand the context.
We offer three paths to work with data and present a visualization, each using a distinct programming language or platform. For your classroom you may choose one path for a single project, all three to provide to facilitate a sequence of projects, or provide students with a choice. Through your own review and work with this material you can determine a best path for your context.
Complete the web app sequence at a minimum, and then consider reviewing the spreadsheet and python exercises as well.
The web app applies HTML, CSS, and Javascript with a Spreadsheet (used simply for raw data) to support creating a data dashboard that works in a standard browser. This project is more popular and in depth that the other two options.
Complete each of the steps below to get started with a dashboard.
For your database consider looking for some freely online data available in a CSV file format from sites like Kaggle.com.
The spreadsheet path is a gentler approach to creating a data visualization using a tool that many are comfortable with.
Python is often the choice for professional data scientists and machine learning programmers, making it a great option to onboard students into high-demand disciplines. But this approach may prove to be more difficult to find entry-level coding material online, requiring a more adventurous perspective for beginner or novice programmers.
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?
If you are participating in the you will consider similar questions for broader project activities.
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/.