“Make it matter” by addressing misconceptions students have about the field that may prevent them from taking computing courses or pursuing a career in computer science. Many students have overly narrow ideas of what computing is about, what the work is like, and the kinds of people who typically do it. Address these misconceptions by illustrating the diversity and breadth of work a computer scientist can do--and who can do it--and emphasizing that success comes from practice. Discuss the advantages and rewards of computing careers.

Some suggestions

Show how computer scientists make a difference. Many students want careers where they can "make a difference." Help your students see that the problems computer scientists tackle can have important social, economic, and cultural impacts.

Show the diversity of work that computer scientists do. Talk to students about the range of jobs they can find in computing, including the diversity they will find in the type of environment, job tasks, required skills, and the level of collaboration needed.

Show the diversity of who computer scientists are. Expand students' ideas about who does computer science by using examples that include diverse people doing computing, and bring in speakers or use videos that show diverse people in computing.

Examples from the collection

Problem Set 5: Forensics

In this assignment, students create two programs to experiment with image representation as bitmaps or JPEGs. The activity involves creating a program that 'recovers' images by identifying image headers in a long string and then saving these files appropriately. The goal of this resource is to demonstrate how data is represented and stored in memory. This resource is most appropriate for students who are comfortable working with sizable bodies of code.

Searching in Hi-Lo - CS1 First Day on Algorithm Design & Analysis

This is a team-based classroom activity using Process-Oriented Guided Inquiry Learning. I use this the first day of CS1, and sometimes the first week of CS2 (depending on students). Teams of 3-4 students work together to identify and evaluate several strategies (algorithms) to solve a Hi-Lo number guessing game. In doing so, they learn about tradeoffs between difficulty and efficiency, and are introduced to complexity analysis, although the activity does not use O() notation.

Day One Ice Breakers

This a set of "icebreaker" activities are used on the first day of an introductory programming class to help create a welcoming learning environment for students and to lay the groundwork for discussions about how to be successful in Introductory Computing. I have included student-facing slides, a sign-in handout, and a short paper with tips for implementing these activities.