Only this pageAll pages
Powered by GitBook
1 of 35

CxD 2020 Summer Workshop

Loading...

Loading...

Loading...

Preparation

Loading...

Loading...

Modules

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Your Project Plan

Loading...

Loading...

Resources

About Us

Jim Lyst

Faculty at the School of Informatics and Computing at IUPUI

Drawing on 15 years of industry experience as an engineer and designer, plus over 8 years of teaching experience, Jim focuses on enhancing the continuity between learning experiences and industry practices to provide students a clear path to impactful work in STEM fields. He is a key contributor to the Computing by Design framework and project material. https://www.linkedin.com/in/jlyst/

Justin Smith

Computer Science Teacher at Pike High School / iDEW Teacher

With nine years of teaching experience, eight of those years in Computer Science, Justin strives to have authentic and engaging work for his students. He lets his students be creative and come up with their own project topics. He focuses on building students’ technical and soft skills. He is a contributor to the Computing by Design framework and project material. https://www.linkedin.com/in/justin-smith-1b611815b.

Vicki Daugherty

Program Manager and Diversity Coordinator

Joining IUPUI in 1995, Vicki Daugherty is the program manager for Informatics Diversity Enhanced Workforce (iDEW) and diversity coordinator at the IU School of Informatics and Computing at IUPUI. Computing by Design (CxD) is a product of the iDEW program. https://www.linkedin.com/in/vicki-daugherty-2b86308/

Dr. Mathew Palakal

Senior Executive Associate Dean of School of Informatics and Computing at IUPUI

Dr. Mathew Palakal is a professor of Informatics in the IU School of Informatics & Computing (SoIC) and Senior Executive Associate Dean of SoIC at IUPUI. His primary research is in artificial intelligence and machine learning. His passion is to bridge the gap of underserved-underrepresented minority populations in the IT workforce. He was a key architect of the Informatics Diversity Enhanced Workforce (iDEW) program that uses the Computing by Design (CxD) curriculum. iDEW was implemented five years ago in three Indianapolis high schools with 70 students, to broaden IT-workforce participation. Nearly 1,700 students have taken CxD courses in 100 classes at eight high schools to date. The iDEW program has received +$2.1 million in corporate/foundation funding, and a Skill-Up grant from the Indiana Dept. of Workforce Development.

Curtis Hagan

Mentor & Graduate of School of Informatics and Computing

Recent graduate of IUPUI with a Media Arts and Science degree and indie video game developer, Curtis loves to create and help others unlock their own potential in the media and technology field. He has been mentoring students as President of IUPUI's Game Developers' Group, Camp Instructor at iD Tech Summer Camps, and 3 years in high school classrooms as part of the iDEW program.

Define Problem & Propose Solution

Prompts for Discussion (on Slack #cohort*-module2-trivia)

  • What do you foresee as major hurdles in facilitating this phase of the project in the classroom?

  • What are the biggest opportunities to positively impact students in this phase of the project?

Material

Trivia Template Build Walkthrough

Quick Access to Workshop Google Drive Folder

Chatbot Project

The Chatbot Project challenges students to develop a conversational interface with a computer application, introducing them to concepts of artificial intelligence, decision logic, and natural language processing. We will review the tasks for each phase of the project allowing you to try some of the key activities as you consider your instructional approach.

Design & Build Solution (2/2)

Material

Design & Build Solution (1/2)

Prompt for Discussion (on Slack #cohort*-module3-chatbot)

  • What unique challenges do you foresee with the chatbot project that differs from the trivia project?

Material

Evaluate & Refine Solution

Material

A Teacher's Insight

The videos below give tips related to the flow of the iDEW projects, injecting supplemental work when needed, forming student teams, and using Google Drive to support your students.

Resources Mentioned:

  • Copies of Referenced Documents can be found on

Design & Build Solution (1/2)

Prompt for Discussion (on Slack #cohort*-module2-trivia)

  • How might you manage team member responsibilities with the design and build portion? (prototyping, evaluation, question bank content, trivia code, etc.)

Material

​​

Evaluate & Refine Solution

Material

Design & Build Solution (1/2)

Material

Design & Build Solution (2/2)

Material

IoT Project

The IoT project brings computing into the physical world where students imagine how computers may be embedded in everyday objects and use various input sensors and outputs to serve a valuable purpose. We will review the tasks for each phase of the project allowing you to try some the key activities as you consider your instructional approach.

Codepen
Khan Academy
Team Formation Survey
Google Drive
Quick Access to Workshop Google Drive Folder

The CxD Project Framework

We will go through the three phases of a standard project outline and discuss the primary activities in completing projects. We will review the important milestones of the public presentations and deliverables. We will consider how teams of students may progress through the project, sometimes in a linear series and other times in parallel tracks. Finally, we will see how students may develop a product feature map for organizing work and communicating progress.

Prompts for Discussion (on Slack #cohort*-module1-foundations)

  • What visual cues or weekly practices might you use to keep students and teams moving forward and aware of the broader context of their project work?

  • What industry or community organizations might partner with you and your students?

Material

More: Another Guide to User Story Mapping

Quick Access to Workshop Google Drive

Define Problem & Propose Solution

Prompt for Discussion (on Slack #cohort*-module3-chatbot)

  • What social topics might be engaged alongside the chatbot project, and how might you draw students into a topic? For example, "the social implications of advancing AI".

Material

Design & Build Solution (2/2)

Prompt for Discussion (on Slack #cohort*-module2-trivia)

  • Same prompt from previous section: How might you manage team member responsibilities with the design and build portion? (prototyping, evaluation, question bank content, trivia code, etc.)

Material

A Teacher's Insight

The videos below give tips related to getting started with code, helping students with soft skills, getting started on the trivia app project, and other things that come up during the project.

Resources Mentioned:

  • Intro to CS Pre-Test

  • Intro to Informatics (initial coding assignments)

  • Codepen

  • Khan Academy

  • Repl.it

  • Copies of Referenced Documents can be found on Google Drive

A Teacher's Insight

The video below give tips related to the Chatbot project. I include some info about specific assignments and how I've gotten past some challenges my students have had with the project.

Resources Mentioned:

  • Rivescript Tutorial Page

  • Copies of Referenced Documents can be found on Google Drive

Programming Prep

If you are new to programming with HTML, CSS, and JavaScript (or just need brushing up), we recommend you start with the following tutorials on Codecademy. We will reiterate some key concepts briefly in the Foundations module, but these tutorials provide an excellent skill base. Each of these are available with a free-tier account at https://codecademy.com.

HTML

CSS

JavaScript (Lessons 1 - 8)

Mapping Innovative Practices

We will map the thinking, doing, and interactions of innovation to provide perspective on the set of practices we want students to engage that provide a depth and breadth to their approach. We will investigate the Indiana standards in computer science, along with the national framework and PBLWorks guidance, to build confidence and comfort in covering a full spectrum of learning objectives.

Prompts for Discussion (on Slack #cohort*-module1-foundations)

  • How might you facilitate a reflective practice with students to intentionally apply the different modes of thinking, doing, and interacting?

  • Which of the practices discussed do you think will be most difficult to facilitate? Any potential ideas to improve outcomes?

Material

More:

Foundations

What is the big picture of the Computing by Design (CxD) framework? How is it connected to fundamental concepts in science, design, and innovation? How can we introduce industry practices in a classroom environment?

We will answer these questions and more through the following topics.

We will explore primary learning objectives for a computer science course and an achievable student profile that exhibits the attributes of a life-long learner and doer. We will consider the three threads of an innovator's work and how we can use the classroom as a bridge for students to participate in the modern world . We will review basic industry practices to manage project work and how to replicate them in an appropriate way for classrooms.

We will map the thinking, doing, and interactions of innovation to provide perspective on the set of practices we want students to engage that provide a depth and breadth to their approach. We will investigate the Indiana standards in computer science, along with the national framework and PBLWorks guidance, to build confidence and comfort in covering a full spectrum of learning objectives.

We will go through the three phases of a standard project outline and discuss the primary activities in completing projects. We will review the important milestones of the public presentations and deliverables. We will consider how teams of students may progress through the project, sometimes in a linear series and other times in parallel tracks. Finally, we will see how students may develop a product feature map for organizing work and communicating progress.

We will cover some basic concepts in programming with HTML and CSS that can provide a launching point into our projects.

Justin Smith will provide insight from experience on how to facilitate innovation in the classroom.

Define Problem & Propose Solution

Prompt for Discussion (on Slack #cohort*-module4-iot)

  • What process might you use to help teams select an appropriate topic and problem for a project?

Material

A Teacher's Insight

Resources Mentioned:

  • Copies of Referenced Documents can be found on

The CxD Approach
Mapping Innovative Practices
The CxD Project Framework
Programming Warm Up
A Teacher's Insight
CS Standards Spreadsheet
Quick Access to Workshop Google Drive
Google Drawings
Marvel
Sparkfun Experiment Guide
Sparkfun Extra Sensors Help
Images of Student Projects
Google Drive

The CxD Approach

We will explore primary learning objectives for a computer science course and an achievable student profile that exhibits the attributes of a life-long learner and doer. We will consider the three threads of an innovator's work and how we can use the classroom as a bridge for students to participate in the modern world . We will review basic industry practices to manage project work and how to replicate them in an appropriate way for classrooms.

Prompts for Discussion (on Slack #cohort*-module1-foundations)

  • What do you see as primary roadblocks and opportunities for students to engage CS?

  • How might you have students track project work? What methods have you used in the past?

  • What code tutorial resource might you use? (e.g. Codecademy, Khan Academy, W3Schools, Code.org, CodeHS)

Material

More: Live Teacher Task Board Example, Trello, Codecademy, Kahn Academy, W3Schools

Quick Access to Workshop Google Drive Folder

Evaluate & Refine Solution

Prompt for Discussion (on Slack #cohort*-module2-trivia)

  • How might you ensure that students see the value in, and engage, an evaluation and refinements phase of a project?

Material

Guide to Project Plan

Whether you are intending to run a single project as the main activity for a semester or inject a smaller project within another instructional context, you can use (embedded below) as a starting point. You may also want to use (or borrow ideas from) the .

If you are going to use a CxD project guidebook, a lot of the details are already prepared, but you definitely want to formulate the big-picture plan on you will facilitate the course in your context. Ultimately, make the project/course plan work for you and include the level of detail you need. We hope these resources are good starting points.

Recommendations on Template Sections

Description

Provide a rich description of the project challenge and some background. What is the challenge to students specifically? What technology or tools will be applied. What will be the make-up of student teams?

Primary Student Resources

List the primary material you will use (like a CxD project guidebook), along with programming environments and tools--like Google Drive, Prototyping Platforms, etc.

Time Allotments and Project Management Process

Describe the intended time allotments for the major activities. For example -- 70% Project, 20% Individual programming tutorials, 10% Topic Research. Also describe how you intend to manage team project progress, like with digital Kanban Boards.

Community Partners and Engagement Plan

Who in the community might be your partner? How do you intend the partners to engage with the students?

Assessment Plan

What will be your primary methods of formative and summative assessment?

Milestone: Date & Venue

What is your target date and place for student presentations?

Milestone: Publishing Channel

How might you make student artifacts available online for the community to see, either as a lead-up to a presentation or for those that can't physically attend?

Milestone: Standards

Summarize the learning objectives and standards met with the work that leads up to the milestone.

this template
PBLWorks project planner
Template Link

Trivia Project

The Trivia Project provides a great entry point for students to learn about web applications and experience the industry-aligned techniques and roles filled in innovative product development. We will review the tasks for each phase of the project allowing you to try some of the key activities as you consider your instructional approach.

The links below will lead you to the main page of the Trivia App Project guidebook. You can also browse the student work galleries to get a sense of what some of the major deliverables are for projects.

James Lyst, M.S.School of Informatics and Computing : IUPUI
Mathew Palakal, Ph.D.School of Informatics and Computing : IUPUI
https://www.linkedin.com/in/curtis-h-07a195b4/www.linkedin.com
Video from Code Mods in "Code: Chatbot" Documentation
1 DEFINE PROBLEM & VALUE PROPOSITIONProject: Trivia App

Schedule

The schedule below is a minimum pacing guide for our online experience, but you may choose an accelerated path over two or three weeks. We have attempted to provide flexibility while not making things too complex.

Most activities are asynchronous, where you can watch videos, read material, and post comments in Slack at times convenient for you. We will have weekly 2-hour Zoom sessions for live discussions, and we will organize sessions for side topics as needed. As a rough estimate, you might spend 6 to 8 hours on each of the modules.

Each module has content (videos and reading) to review and ends with a reflection survey. Your final product will be a project plan for your classroom context.

Week 1 (June 1 - 5)

Week 2 (June 8 - 12)

Week 3 (June 15 - 19)

Week 4 (June 22 - 26)

Week 5 (June 29 - July 2)

Computing by Design 2020

Preparing Innovators in Computing

Welcome!

Welcome to the Computing by Design (CxD) 2020 Summer Workshop! This year's online sessions include four modules that introduce the CxD framework and three practical projects that employ the framework. The sessions culminate with the development of an instructional plan for you to facilitate computer science learning in your context. The spans the month of June, but you may choose to accelerate through faster.

Most activities are asynchronous, where you can watch videos, read material, and post comments in Slack at times convenient for you. We will have weekly 2-hour Zoom sessions for live discussions, and we will organize sessions for side topics as needed. As a rough estimate, you might spend 6 to 8 hours on each of the modules.

Preparation List

  1. Review the primary

  2. Join and select a cohort

  3. Take a look at the .

  4. Join us in one of our welcome Zoom sessions: Monday, June 1, 9am or 3pm

Foundations
Live PBLWorks Project Slice Workshop
Trivia Project
Chatbot Project
IoT Project
Project Plan
Galleries
Chatbot IntroductionProject: Chatbot
Galleries
SparkFun Inventor's Kit for Photonsparkfun
Project IntroductionProject: Internet of Things
Galleries
Vicki DaughertySchool of Informatics and Computing : IUPUI
Logo
Logo
3 EVALUATE & REFINE SOLUTIONProject: Internet of Things
2 DESIGN & BUILD SOLUTIONProject: Chatbot
2 DESIGN & BUILD SOLUTIONProject: Chatbot
base schedule
workshop tools
our Slack workspace
programming preparation options

Workshop Tools

We strive to make learning accessible with free and browser-based tools whenever possible, and that goes for this workshop as well. Below are the primary tools we will be using along with pointers on particular features that will be useful for us.

** Each project may use additional tools, but we will provide guidance for those when the need arises.

Slack

Slack, an industry favorite, will support our daily communication during the workshop. If you are unfamiliar with Slack, take a look at their help pages on using slack, and review the "Send Messages" and "Share Files & Conversations" sections. Don't feel like you need to understand all the features. We will likely stick with the basics. The video below highlights some basic features that will be useful for the workshop.

Zoom

Zoom, a popular video conferencing platform, will be used for our live scheduled discussions and ad hoc discussions as needed. If you haven't used Zoom much take a look at getting setup on your desktop, testing audio, and testing video. The video tutorial below explains how to share your screen, which will come in handy to get feedback on something or to demonstrate something you have done.

Google Drive

Google Drive provides a suite of valuable tools that most are already familiar with. If you are new to Google Drive, consider this full tutorial. The short video below specifically demonstrates how to share a folder on Google Drive. Whether using link sharing or adding individuals by email, this is a very useful way for student teams to share folders with you, or vice versa.

Repl.it

Repl.it will be the go-to platform for most programming tasks. It is free, browser-based, and has a lot of useful features. If you already have some programming experience, go ahead and poke around a bit on the platform. As a teacher, you will likely want to get the free classroom plan that supports having private code, even if you don't use all the classroom features. Here is the link to apply, https://repl.it/k12-form.

If you have little or no experience programming, no problem, follow the quick start video below where you will 1) sign up, 2) make a copy (fork) of this program, and 3) click run to see the result. That's it for now. We'll dive deeper later.

2 DESIGN & BUILD SOLUTIONProject: Trivia App
Marvel - The design platform for digital products. Get started for free.
2 DESIGN & BUILD SOLUTIONProject: Trivia App
iDEW
2 DESIGN & BUILD SOLUTIONProject: Internet of Things
2 DESIGN & BUILD SOLUTIONProject: Internet of Things
Logo

Final Review of Project Plan

Sharing Your Plan

By sharing your semester plan for teaching a CS course with other workshop participants in Slack you can get valuable feedback -- and provide others feedback as well.

A Few Notes:

  • While your plan may not be complete and require more development this summer, provide enough detail to express the key elements of your plan that enables some discussion with others.

  • We understand that you may choose to use other CS material at varying degrees with the CxD material or another PBL experience to fit your students' needs. Please share that as part of your plan, as it doesn't need to be solely based on CxD material.

  • Even if you are not offering a CS course this fall, please consider posting an outline of how you might facilitate a class in the future.

Actions Between June 29 and July 10

Sometime between June 29 and July 10 please share your project plan in our Slack workspace in the #cohort*-your-plan channel to get feedback from other workshop participants. Include any to-do items that you know you have yet to complete, as well as any prompts you would like others to specifically give you feedback on.

Further Help

We can form Zoom sessions or side discussions on Slack as needed. Please don't hesitate asking us to facilitate a live discussion, whether one-on-one or in small groups.

Galleries
https://www.doe.in.gov/wf-stem/employability-skillswww.doe.in.gov
Computing by Design (CxD)Computing by Design
Student ProfileComputing by Design
Logo
Customers | ParticleParticle
3 EVALUATE & REFINE SOLUTIONProject: Chatbot
Agile Learning: Collaboration in the Classroom - Top HatTop Hat
Bringing the Community Into the ClassroomEdutopia
Video from Warm-Up Project in "Code: Chatbot" Documentation
1 DEFINE PROBLEM & VALUE PROPOSITIONProject: Chatbot
Video from Getting Started in "Code: Chatbot" Documentation
Planning with pseudo-code | Becoming a better programmer | Intro to JS: Drawing & Animation | Computer programming | Computing | Khan AcademyKhan Academy
Project Plannerpblworks
https://www.doe.in.gov/wf-stem/computer-sciencewww.doe.in.gov
Replacement Video
Logo
CSS Tutorial: Learn CSS For Free | CodecademyCodecademy
JavaScript Tutorial: Learn JavaScript For Free | CodecademyCodecademy
A Quick Guide on User Story Mappinglucidchart
1 DEFINE PROBLEM & VALUE PROPOSITIONProject: Internet of Things
Gold Standard PBL: Essential Project Design Elementspblworks
Unanticipated and Undesirable Consequences of InnovationTeamViima
The Fallacy of the Aha Moment & Overnight Success in InnovationTeamViima
Market Projections: The Future Of Jobs Report 2018 Summary - GQRGQR
Manifesto for Agile Software Development
The Agile Classroom: Embracing an Agile Mindset In EducationMedium
This Teachable Moment: How PBL Can Shift the Future of EducationPBLWorks
Challenge & BackgroundProject: Trivia App
https://youtu.be/YA6SGQlVmcAyoutu.be
Logo
The Ultimate Team Work Management Tool: Kanban BoardsPBLWorks
Logo
Logo
Logo
Logo

Programming Warm Up

For our programming warm up we will use CodePen, because it is quick and easy to startup in the browser. For our projects, we will use repl.it, which is similar but provides many more features.

HTML Basics

HTML provides the structure for web pages and uses elements with tag names to differentiate items on the page. For example, <h1>...</h1> is a large heading element. Notice the opening tag <h1> and closing tag </h1> that indicates the beginning and end of the element. "h1" is the tag name in this case.

<h1>Favorite Technology Sites</h1>
<h3>MIT Technology Review</h3>
<p>The <a href="https://www.technologyreview.com/">MIT Technology Review</a> keeps me up to date on innovation.</p>

Try it out

  1. Copy and past the HTML above into a new CodePen and notice how the browser preview looks.

  2. Read these explanations on W3schools.com. Headings, Paragraphs, and Links

  3. Add two more sites to the list with each having it's own "h3", "p", and "a" elements.

Using CSS to Add Style

CSS stands for cascading stylesheets and allows us to modify the appearance of HTML elements in a browser. Study this W3schools page to understand the syntax of CSS. It is important to understand the concepts of a selector, property, and value.

h1 {
  color: red;
}
h3 {
  background-color: black;
  color: white;
}
p {
  font-size: 20px;
}

Try it out

  1. Copy the CSS code above and add it to your CodePen from the HTML Exercise, and notice how the browser preview has changed.

  2. Modify the CSS by changing colors and font-size.

  3. Customize your look by adding the style properties below on the HTML elements you choose.

  • Border

  • Margin

  • Padding

  • Box-shadow - This one is cool.

Target Content with Classes and Id

By assigning a class or id to an HTML element you can apply specific styles in a targeted way.

HTML
<div class="card" id="jill-card">Jill - Data Scientist</div>
<div class="card">Johnny - UX Designer</div>
<div class="card">Mia - Software Developer</div>
<div>Patrick - Business Analyst</div>
CSS
.card {
  padding: 5px;
  margin: 20px;
  background-color: lightgray;
  box-shadow: 2px 2px 3px;
}
#jill-card {
  background: yellow;
}

Try it out

  1. Copy the HTML and CSS above and paste it in a new CodePen.

  2. Take a look at the browser preview and try to decipher what is going on.

  3. Notice how assigning id="jill-card" in the HTML allows the element to be "targeted" with the CSS selector #jill-card.

  4. Notice how assigning class="card" in the HTML allows several elements to be "targeted" with the CSS selector .card.

  5. Go ahead and give Patrick's text a class of "card" and then add a unique id to his HTML element and some CSS to make his card stand out from all the others.

id - An HTML id is selected in CSS with a # prefix and should be used to target a single element on a page.

class - An HTML class is selected in CSS with a . prefix and can be used to select several elements that will share a common style.

Hierarchy in HTML

Look at the HTML below. Do you see how the container could be called the parent of the three cards? The cards are then children of the container. This is an example of nested HTML.

HTML
<div class="container">
  <div class="card">Jill - Data Scientist</div>
  <div class="card">Johnny - UX Designer</div>
  <div class="card">Mia - Software Developer</div>
</div>
CSS
.container {
  border: 1px dotted black;
  padding: 5px;
  background-color: lightyellow;
}
.card {
  padding: 5px;
  margin: 20px;
  background-color: lightgray;
  box-shadow: 2px 2px 3px;
}

Try it out

  1. Copy the HTML and CSS above into a new CodePen.

  2. Notice in the browser preview how the nesting becomes visually apparent.

  3. Also, notice how the indentation in the HTML is really helpful to see the proper structure. Technically the indentation does not need to be there, but it is a good programming practice.

  4. Add a parent <div> element with a class of "outer-container" to the container and style it with a solid border line. Use good indentation in your HTML.

SparkFun Inventor's Kit for Photon Experiment Guide - learn.sparkfun.com
3 EVALUATE & REFINE SOLUTIONProject: Trivia App
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Elements and Structure | CodecademyCodecademy
Logo
Logo
Logo
Logo