Google

Computer Science for High School

Curriculum Guide

We recommend integrating at least some of each of the following topics into your workshop or program. Keep in mind that the more "plug and play" materials you give to teachers to use in their classroom, the better they will be able to share the workshop learnings with their students. Click on a topic to see example curriculum below

  • Attracting Students to CS/Diversity - careers available, what is computer science, day in the life of a computer scientist.
  • CS Fundamentals - the basics of computing, including computational thinking, which is needed to lay the foundation of computer science and which we find lacking in many high school curriculum today.
  • Community Building - how can teachers work with their administrators, CSTA chapters, other CS teachers, and local community. Networking and community building is an important part of CS4HS.
  • CS Education Tools - what are the biggest trends in both industry and education, includes special topics of interest, changes in the CS AP.

If you are interested in submitting a CS4HS workshop module to post on this website, please contact cs4hs@google.com. Select by:

  • Subject: Computational Representation of Ants Foraging

    CS Education Tools

    Written By: Clayton Lewis

    A computer program can represent interesting aspects of how ants find and collect food. By exploring variations on the program one can explore such matters as how the nature of the food supply affects how long the ants' trail pheromone, a chemical used to help locate food sources, should last. The example illustrates how computational thinking patterns are useful in modelling real-world phenomena.

    View the Slides

  • Subject: Computational Thinking and Representations

    CS Fundamentals

    Written By: Clayton Lewis

    Computers are used for more and more things, because they are excellent tools for representing all kinds of things. But how does representation work? And how does 'computational thinking' relate to representation?

    View the Slides

  • Subject: Pecha Kucha

    Community Building

    Written By: Christopher Starr, PhD

    A Pecha Kucha is a format for content delivery from one speaker to an audience of students. Pecha Kucha (Japanese for “chit chat” or “small talk”) originated in Tokyo in 2003 as a mechanism for moving a meeting along by limiting speakers to 20 slides or images with 20 seconds per slide. A 20x20 presentation will finish in exactly 6 minutes 40 seconds. In computer science a Pecka Kucha is an interesting format to deliver short talks (typically 8 to 12) topics in rapid fire sequence. Most students in high schools and colleges have never experienced a Pecha Kucha. Often they have seen and know about TED Talks (www.ted.com), thus they are aware of the high impact a talk can potentially have to motivate and inspire. Consider using a Pecha Kucha to expose a group of teachers to an array of topics across a collection of dynamic speakers

    View the Outline

  • Subject: CS Unplugged

    CS Fundamentals

    Written By: RoxAnn H. Stalvey

    Computer Science Unplugged, CS Unplugged, is a collection of computer science activities that are designed to introduce students to computing concepts without using a computer. Most, if not all, of the activities involve student participation through kinetic learning experiences. Activities generally take 5 – 20 minutes to deliver and offer an exciting way to engage students, from kindergartners up to senior citizens, in interactive introductions to difficult computing topics. The purpose of this module is to emphasize that computer science is not about the hardware, it is about the computational thinking.

    View the Outline

  • Subject: Barcamp

    CS Fundamentals

    Written By: RoxAnn H. Stalvey and Christopher W. Starr PhD

    A BarCamp is touted as being an “unconference” conference. It is an event where people of varied interests gather, generate ideas for presentations and deliver these presentations. At a BarCamp, there is no preselected program agenda or list of speakers; these are chosen at the start of the meeting by the participants from among the participants. This exciting format allows for varying topics of immediate interest to the group to be dynamically selected, presented and discussed. The value of a CS4HS BarCamp is to engage the expertise and willingness of participants to share what they know with the rest of the group. With a BarCamp the CS4HS will not be a passive experience or just a lab experience. BarCamp is the module that allows participants to plug in.

    View the Outline

  • Subject: Hardware and Ubuntu

    CS Fundamentals

    Written By: Clayton McCauley

    The x86 revolution has been marked by the availability of a wide range of cheap, compatible microprocessors that has brought the power of the computer to the masses. Linux and Free/Open Source Software build on that platform to make a wide range of operating system and application software freely available to the public. This module explains the basic concepts of modern PC architecture and demonstrates how to obtain and use Linux and Open Source software in the classroom. The emphasis of this module is awareness of a viable, consumer grade, open-source operating system that will breathe new life into nearly any Intel box.

    View the Outline

  • Subject: Python Tutorial

    CS Fundamentals

    Written By: James Heliotis

    "This module presents an overview of the Python programming language. It should be used to help secondary school and possibly college-level educators in choosing a language appropriate for their curricula. Python's advantages are (1) a completely interactive programming mode for experimentation and discovery, (2) dynamic type checking which obviates the need for learning about type declarations prior to commencing exercises, and (3) near universal availability on all common computing platforms. If presented in its entirety at a reasonable pace, the presentation of the provided slides with exercises will take a day. It can be cut back to a few hours by leaving out some exercises and skipping the less necessary slides, which are marked with X's instead of page numbers. "

    View the Outline

  • Subject: Software Engineering Unplugged

    CS Fundamentals

    Written By: Stephanie Ludi

    "This set of activities shows students different aspects of software development without the need for a computer. Students will work in small groups for most activities, and all activities require problem-solving and critical thinking."

    View the Outline

  • Subject: Computational Thinking across the Curriculum

    CS Education Tools

    Written By: Ljubomir Perkovic, DePaul University, Amber Settle

    We describe a framework for implementing computational thinking in a broad variety of general education courses. The framework is designed to be used by faculty without formal training in information technology in order to understand and integrate computational thinking into their own general education courses. The framework includes examples of computational thinking in a variety of general education courses, as well as sample in-class activities, assignments, and other assessments for the courses.

    View the Slides

  • Subject: Why Choose Computer Science

    Attracting Students/Diversity

    Written By: University of Washington Computer Science and Engineering

    Why do students choose computer science and computer engineering as their field? What are some of the diverse career paths that they pursue with their CSE degrees? For those who enter the software industry, what's a day in their life like? Three videos from University of Washington Computer Science & Engineering address these questions. Take a look! Get a taste of what CSE holds in store for you! Learn more about this exciting field!

    View the Videos

  • Subject: Strategies for Inclusion in Robotics

    Attracting Students/Diversity

    Written By: Stephanie Ludi

    "Robotics has become popular as a tangible means of engaging students in technology and engineering skills. This presentation provides an overview of technologies and strategies for inclusive robotics, in order to engage disabled students in the classroom."

    View the Outline

  • Subject: Computing for Everyone

    Attracting Students/Diversity

    Written By: Richard Ladner

    We start with an introduction to successful computer scientists with disabilities. Then we review various access technologies that permit students with disabilities to participate in the classroom and lab. We summarize the trends in accessibility research which will open up even more avenues for students to fully participate in class. We review some strategies for universal design of curriculum and activities that allow all students to participate regardless of disability. We introduce the Access Computing Alliance that has the goal of increasing the participation and success of students with disabilities in computing fields.

    View the Slides

  • Subject: Computability: Tractable, Intractable and Non-computable functions

    CS Fundamentals

    Written By: Thomas J Cortina

    Can a computer compute anything and everything? Believe it or not, no! In this module, we show a little of the "deeper" side of computer science and look at computability itself. This module reviews how to express how efficient a computation is using big O notation. It moves into decision problems that are intractable. It finishes with a brief look at non-computability by discussing what's being the halting problem at a general level without getting into details.

    View the Slides

No results were found. Please make another selection and try again.