Aluminum Foil Boats – CS Problem Solving

ENGINEERING – Try this experiment that can be used for science, engineering, or technology, but here we discuss how it is related to computer science. Scroll to the bottom to find out how other teachers adapted this lesson for their classrooms.


Students will be able to:

  • Communicate and collaborate with classmates in order to solve a problem
  • Iteratively improve a solution to a problem
  • Identify different strategies used to solve a problem


For each group

  • 2 sheets of aluminum foil, 5×5 inches in length each
  • 1 container that can hold 3-5 inches of water
  • Several paper towels or rags that can be placed under the container
  • 15 pennies
  • One copy of the Aluminum Boats – Activity Guide

For the teacher

  • 1 container that can hold 3-5 inches of water
  • 50 pennies
  • Extra paper towels or rags


The aluminum boats problem could easily be substituted out for any number of other problems that require students to define their goals, devise a plan, try a solution, evaluate their results, and then iteratively improve. The problem chosen is intentionally “non-computational”. Computer science is fundamentally a problem-solving discipline and staying away from traditional computer science problems at this points helps to frame it as one about problem-solving more generally with computer science being a new “tool” to help attack certain types of problems.

Group: Put students in groups of 2 or 3.

Support: Give students a couple minutes to discuss in groups the approach they will take with this first boat. Once groups have recorded their ideas and some possible weaknesses, they can come to you to get their aluminum foil and begin building their boats.

Once groups are ready, have them test their boats by dropping individual pennies into the boat. Remind them of the rules, specifically that they can’t touch or adjust the boats once they’re in the water. Have them record the total number of pennies held on their activity guides.

Iterative Improvement

Share: Have students share the results of their first run with neighboring groups. Ask groups to focus particularly on what the eventual failure of their boat was (e.g. it wasn’t deep enough, it was unstable, etc.) and brainstorm ways to get around those problems.

Teaching Tip – While some students will view this portion as a competition, emphasize that each group is looking to improve its own design, not competing against others. You are appealing for each student to challenge themselves first, not others.

Prompt: Now that you’ve had a chance to learn from the first round of boatmaking, let’s run the same activity again. First, your group will develop a new plan. Just as before, record it on your activity guide, and once you’re ready I’ll come around and give you a new piece of foil.

Support: As you circulate from group to group, ask questions about the group’s focus in redesign. EX: “What aspect of your boat needed the most improvement?” “What ideas from other groups did you want to incorporate to yours?” “Did you feel the need to completely restructure your boat, or make minor modifications?”

Once groups have prepared their new plans give them a new piece of foil and have them each build a new boat.

Groups can test their designs just as before and record the results on their activity guides.

Transition: Ask class to return to their own seats to reflect on the activity.

Wrap Up (10 mins)

Discuss the Challenge

Prompt: What was your favorite part of this activity? What was most challenging?

Discuss: Allow students time to share thoughts with the class.

Discussion Goal – This should be a fairly open-ended discussion of the different components of the activity. Feel free to ask follow up questions if you like but the main goal is just to kick off the later conversation.

Prompt: Since you are in a computer science class, you also may be wondering, “What in the world did that have to do with computer science?” Find another partner and talk about what you think this activity has to do with computer science.

Discuss: Allow students an opportunity to share their responses with the class.

Although there are no right or wrong answers for this discussion, for our purposes, the main point is that students solved a problem. They had to define the problem, plan a solution, try a solution, and evaluate it.

Adapted Lessons:

STEM Boat Challenge – View how Timothy Baszak used this lesson in his STEM class for grades 5-8 at Waypoint Academy.

Education Standards

CSTA K-12 Computer Science Standards

AP – Algorithms & Programming

Next Generation Science Standards

5.B – Use mathematical, computational, and/or algorithmic representations of phenomena or design solutions to describe and/or support claims and/or explanations

For more Computer Science lessons, check out