cs4all-logo

Computer Science Perspectives

The perspectives below are four approaches to teaching computer science (CS) practices and concepts. These perspectives draw on the imperatives behind the CS4ALL initiative in New York City, as well as research from the the ScratchEd team and the CSed Visions research project, a collaboration between between New York University, Indiana University and the City University of New York.

These perspectives aim to provide school leaders, teachers, and students a lens to frame their computer science teaching methodology. Schools should consider fostering perspectives that:

  • Fit students’ prior experience with computer science
  • Support students’ evolving ideas about computer science
  • Reflect the values of the school community; principals, teachers and parents

Perspectives describe how and why students can learn computer science

Ideally, a teacher and school are able to identify how students can move from one CS perspective to the next by the end of a unit, course, or multi-year sequence. However, a single classroom or school can employ multiple perspectives to scaffold student learning.

These perspectives are:

  • Explorer: “I can play with computing practices and concepts.”
  • Creator: “I can express myself with computing practices and concepts.”
  • Innovator: “I can connect to the work of others using computing practices and concepts.”
  • Citizen: “I can question how computing practices and concepts affect my community.”

Educators should use formal or informal pre-assessment to map out from which perspective to begin their CS unit and plan the perspective they'd like their students to develop. Furthermore, educators should use formative assessment to guide when and how they introduce a new perspective.

We’ve defined these Perspectives in detail below. Each definition addresses how each perspective interacts with the three required practices and with a subset of relevant concepts.

Explorer (E)

Students begin their CS journey as Explorers playing with computing. To make CS real to them[a], Explorers manipulate computing applications, problems, and topics with physical or visual models or representations.

Explorers + Practices

Even though they are just at the beginning of their CS journey, Explorers can still use all three practices in a single meaningful CS unit.

  • Analyze: Explorers analyze computing applications that they can see, touch, and hear.
  • Prototype: Explorers prototype computing artifacts by building in closed-ended or puzzle-based environments, remixing/reusing projects, and with teacher guidance.
  • Communicate: Explorers communicate the results of their exploration in a way that highlights the connections they made between their lives and computer science concepts.

Explorers + Concepts

Concept

Subconcepts

Example

Abstraction

  • Decomposition (AB.D)
  • Pattern Recognition (AB.PR)
  • Generalization and Detail Removal (AB.GDR)

Working with routines or tasks of a visual or physical nature, Explorers can break down the task into steps, notice patterns such as repetitions, and can find similarities between different steps or even entire tasks.

Algorithms

  • Algorithm Design (AL.AD)

Explorers can design simple sequences and series of actions for routines or physical tasks.

Programming

  • Syntax (P.S)

Explorers can interact with visual syntax in an unplugged lesson where they give or receive commands from peers to complete a task.

Data

  • Sensors and Datasets (D.SD)

Explorers can take measurements in their classroom or school using simple sensors to collect data for a purpose (i.e. digital rainfall meter, learning station check-in, etc.)

Networks

  • Physical Internet (N.PI)

Physically manipulating connections between objects, Explorers can begin to build an understanding of how they and others are able to connect to the Internet.

Creator (C)

Students continue their CS journey as Creators expressing their ideas through computing. Intrigued by the possibilities of computing, Creators use computing to represent their ideas, thoughts, or interests.

Creators + Practices

Creators are making things, but still engage in all three practices to ensure authentic, meaningful CS learning.

In this context, Creators:

  • Analyze: Categories of computing applications that intrigue them, or that they use daily.
  • Prototype: Computing artifacts in open-ended, scaffolded environments by remixing/reusing theirs or other projects.
  • Communicate: The connections they made between computing applications they analyzed, the artifacts they created, and the choices they made while building those artifacts.

Creators + Concepts

Concept

Subconcept

Example

Abstraction

  • Decomposition (AB.D)
  • Pattern Recognition (AB.PR)
  • Generalization and Detail Removal (AB.GDR)

Working with written tasks or multi-step projects, Creators can break down projects into components, as well as find patterns and similarities between components of a project.

Algorithms

  • Algorithm Design (AL.AD)
  • Control Flow (AL.CF)

Creators can design and implement multi-step processes that use loops, parallelism, and conditionals that leverage patterns and characteristics.

Programming

  • Syntax (P.S)
  • Development Environments (P.DE)

Creators can implement algorithms in development environments that offer open-ended possibilities with visual programming languages.

Data

  • Sensors and Datasets (D.SD)

Creators can interpret a dataset provided by a teacher to inform the design a prototype, such as using rainfall data to ensure a digital rain meter has a large enough reservoir.

Networks

  • Trust (N.T)
  • Physical Internet (N.PI)
  • Markup (N.M)

Creators can communicate the types of information they want to share on a network, given the people on that network.

Innovator (I)

Innovators engage with open-ended topics connected to the work of individuals in public, private and open-source domains of CS practice.

Innovators + Practices

  • Analyze: Computer science in practice by looking at the purpose, the features, and the designs of different computing applications created by domains of CS practice.
  • Prototype: Projects around open-ended problems under constraints,utilizing tools and structures used by individuals in CS practice domains..
  • Communicate: Their work analyzing and prototyping applications, with a focus on the connections to CS practice domains.

Innovators + Concepts

Concept

Subconcept

Example

Abstraction

  • Decomposition (AB.D)
  • Pattern Recognition (AB.PR)
  • Generalization and Detail Removal (AB.GDR)
  • Interfaces (AB.I)

Innovators can break down computing applications or problems; find patterns in how applications are used, designed, or implemented, understand how to focus on components that can be addressed with computing, and consider how others use their applications.

Algorithms

  • Algorithm Design (AL.AD)
  • Control Flow (AL.CF)
  • Inputs, Variables, Outputs (AL.IVO)

Innovators can design algorithms that can be applied to an open-ended process. They can consider the inputs that such algorithms might need, the values in the algorithm that may change based on inputs, and how the algorithm can be designed to provide different outputs.

Programming

  • Languages (P.L)
  • Syntax (P.S)
  • Development Environments (P.DE)
  • Collaboration (P.C)

Innovators can work in development environments similar or the same as the environments used in CS practice domains, while effectively collaborating with others to build a single prototype -- by using versions, roles, and methods for merging work done separately.[b]

Data

  • Sensors & Datasets (D.SD)
  • Data Abstraction & Storage (D.DAS)
  • Transformation and Visualization (D.TV)

Innovators can reflect on data about open-ended issues collected by sensors and datasets by storing, organizing, and mapping it to contextual data like user, time, or other datasets. Innovators can tell stories with data by presenting more than one meaningful view.

Networks

  • Trust (N.T)
  • Physical Internet (N.PI)
  • Markup (N.M)

Innovators can share analyses and prototypes on a network using markup/markdown protocols, while keeping privacy, security and consent in mind.

Citizen(Z)

Citizens examine and try to influence the intersection of computing with social, economic and political systems[c].

Citizens + Practices

  • Analyze:Trends and patterns that illuminate who is impacted, how they are affected, and what might be done to mitigate or improve these experiences.
  • Prototype: Citizens prototype computing applications that tackle systemic issues that are not only open-ended, but require consideration of related ethical, social and economic consequences.
  • Communicate: Their work as arguments, proposals, and rationale of the explicit and implicit impact of computing to relevant social systems.[d]

Citizens + Concepts

Concept

Subconcept

Example

Abstraction

  • Decomposition (AB.D)
  • Pattern Recognition (AB.PR)
  • Generalization and Detail Removal (AB.GDR)
  • Modularity (AB.M)
  • Interfaces (AB.I)

Citizens can effectively represent a problem, identify the role computing may play, and map out how computing fits or interacts with a system -- while taking into account different use cases.

Algorithms

  • Algorithm Design (AL.AD)
  • Control Flow (AL.CF)
  • Inputs, Variables, Outputs (AL.IVO)
  • Application (AL.A)

Citizens can evaluate the design of an algorithm given the constraints, goals, and history of a systemic issue by examining inputs and outputs, and investigating the intent behind the algorithm’s decision-making.

Programming

  • Languages (P.L)
  • Syntax (P.S)
  • Development Environments (P.DE)
  • Collaboration (P.C)

Citizens can identify the right programming languages, environments, or collaborations for a specific systemic issue, and explain their thinking.[e]

Data

  • Sensors and Datasets (D.SD),
  • Data Abstraction & Storage (D.DAS)
  • Transformation & Visualization (D.TV)
  • Feedback Loops & Automation (D.FLA)

Citizens can identify, examine, and evaluate different sources of data[f] created by a system for its relevance, potential uses, and potential misuses; putting emphasis on evaluating the feedback loops that use the data, or could use the data.

Networks

  • Trust (N.T),
  • Protocols (N.PRO),
  • Physical Internet (N.PI),
  • Markup (N.M)

Citizens can engage with the community of other citizens that actively shape the protocols and infrastructure that govern and shape the Internet.