Home›Lesson Plans›Computer Science›Algorithms · Grade 11

Making Programs Faster

Eleventh graders learn how programmers make slow code faster — not by guessing, but by measuring to find the bottleneck, optimizing that part, and measuring again. Efficiency matters as data and users grow. They order the process, then reason about what makes code slow.

Grade 11Program Efficiency55 minutes1 class periodCSTA / ISTEExplicit teaching4 StandardsCSTA
Start the Lesson
Assign or share this lesson

Copy link works with Canvas, Schoology, Moodle and any other LMS — paste it in as a resource or assignment.

Lesson at a Glance

Everything you need before the bell rings

Learning Objectives

Students will be able to…

  • ✓Explain efficiency.
  • ✓Find the bottleneck.
  • ✓Measure, then optimize.
  • ✓Think about scale.
Essential Question

How do you make a slow program faster — without just guessing?

0
Lesson Phases
0
Vocabulary Terms
0
Standards Aligned
0
Interactive Task
Put in Order · Interactive

Order the Optimization Steps

Project this and have students put the steps for speeding up code in order.

⚡ Put the optimization steps in orderTry it
Tap the first step to speed up slow code!
The Lesson · Explicit teaching

55 minutes, five moves

Tap any phase to open the teacher moves and student actions.

1

Hook — Why So Slow?

6 min

An app lags with lots of data — where do you even start?

👩‍🏫 Teacher Moves

  • Pose the question.
  • Share ideas.
  • Set the goal.

🎒 Student Actions

  • Think.
  • Share.
  • Get ready.
2

Use — Program Efficiency

13 min

Students learn.

👩‍🏫 Teacher Moves

  • Send students to Order the Optimization Steps.
  • Order the steps.
  • Note measure before optimizing.

🎒 Student Actions

  • Order.
  • Say.
  • Note it.
3

Modify — Trace It

14 min

Students practice.

👩‍🏫 Teacher Moves

  • Say why we measure first.
  • Define a bottleneck.
  • Name a way code gets slow.

🎒 Student Actions

  • Say.
  • Define.
  • Name.
4

Create — Reason It

15 min

Students apply.

👩‍🏫 Teacher Moves

  • Pick a slow task.
  • Guess its bottleneck.
  • Suggest a faster approach.

🎒 Student Actions

  • Pick.
  • Guess.
  • Suggest.
5

Reflect — Reflect

7 min

Students close.

👩‍🏫 Teacher Moves

  • Say the first step.
  • Define a bottleneck.
  • Complete the exit ticket.

🎒 Student Actions

  • Say it.
  • Say it.
  • Complete the exit ticket.
Standards Alignment

Built to the standards you report on

Aligned to the CSTA K-12 Computer Science Standards and the ISTE Standards for Students.

CSTA
3B-AP-11

Evaluate algorithms for efficiency and correctness.

CSTA
3A-AP-21

Evaluate and refine solutions for performance.

CSTA
3B-AP-10

Use and adapt algorithms for a problem.

ISTE
5c

Reason about efficiency and scale.

Differentiation

One lesson, every learner

Multilingual Learners

ELL / EMERGING READERS
  • Optimization-step cards.
  • Frame: "first measure, then ___."
  • Use a slow-vs-fast example.

Support & Access

IEP / 504
  • Use 3 core steps.
  • Use a visual.
  • One concrete example.

Stretch & Extend

GIFTED / EARLY FINISHERS
  • Compare two algorithms’ speed.
  • Intro Big-O notation.
  • Profile a real program.
Materials

What to gather

  • 📽️Screen / board
  • ⚡Optimization cards
  • 💻Order the Optimization Steps
  • 📊Timing sheet
  • 📓Notebooks
  • 🎫Exit-ticket slips
Vocabulary

Key terms — hover for a quick definition

efficiencyhow well a program uses time/spacebottleneckthe slowest partoptimizemake faster or leanermeasuretime how long it takesprofilefind where time is spentscalehandle more data/usersalgorithma step-by-step methodperformancehow fast it runs
Evaluate

Exit Ticket

Preview the three formative checks. Tap “Sample answer” to see what mastery looks like — hide them before you print for students.

QUESTION 1
What is the first step to speed up code?
Measure how slow it really is.
QUESTION 2
What is a bottleneck?
The slowest part of the program.
QUESTION 3
Why measure before optimizing?
So you fix the real slow part, not a guess.

Reflect: making programs faster.

Have students pick a slow task and suggest a faster approach. A printable timing sheet is in the CS library.

Study · Flashcards

Study the key terms

Tap a card to flip it, then rate whether you knew it. Built from this lesson’s vocabulary.

🃏 Making Programs FasterFlip
Card 1
Term
Tap to flip →
Meaning
0

Nice work!

Practice · Quiz

Check your understanding

A quick self-check with instant feedback, drawn from this lesson’s key terms.

📝 Making Programs FasterQuiz
Score: 0
1 / 6
Question 1
0%

Nice work!

Practice · Worksheet

Printable worksheet

A print-and-go review sheet with a built-in answer key. Tap “Show answer key” to reveal answers, or print the clean version for students.

🖨️ Making Programs FasterPrint
Name: ________________________
Date: ____________

Part A · Write the word that matches each meaning

Word bank: algorithm, bottleneck, efficiency, measure, optimize, performance, profile, scale
  1. make faster or leaner
  2. how fast it runs
  3. find where time is spent
  4. time how long it takes
  5. the slowest part
  6. how well a program uses time/space
  7. handle more data/users
  8. a step-by-step method

Part B · Show what you learned

  1. What is the first step to speed up code?
  2. What is a bottleneck?
  3. Why measure before optimizing?
Answer key — Part A: 1) optimize · 2) performance · 3) profile · 4) measure · 5) bottleneck · 6) efficiency · 7) scale · 8) algorithm
Part B: 1) Measure how slow it really is. 2) The slowest part of the program. 3) So you fix the real slow part, not a guess.