Lesson Plan

Lesson Plan
Grade: Date: 25/02/2026
Subject: Computer Science
Lesson Topic: Understand how and why a computer represents text and the use of character sets, including ASCII and Unicode
Learning Objective/s:
  • Describe how characters are converted to binary using character sets.
  • Compare ASCII and Unicode in terms of capacity, language coverage, and encoding complexity.
  • Explain the main Unicode encoding forms (UTF‑8, UTF‑16, UTF‑32) and their storage implications.
  • Apply the correct encoding when reading or writing text files in a programming language.
  • Analyse a short code snippet to demonstrate Unicode‑aware string handling.
Materials Needed:
  • Projector or interactive whiteboard
  • Slide deck with ASCII table excerpt and Unicode plane diagram
  • Printed handout summarising ASCII vs Unicode
  • Computers with Python (or another IDE) installed
  • Sample UTF‑8 encoded text files
  • Worksheet for encoding conversion exercises
Introduction:

Begin with a quick poll: “What happens behind the scenes when you type an emoji?” Connect this to students’ prior experience with text files and highlight the need for a common binary language. Explain that today’s success criteria are to identify how text is stored, differentiate ASCII from Unicode, and choose the right encoding in code.

Lesson Structure:
  1. Do‑Now (5'): Students write the binary representation of the letter “A” using an 8‑bit pattern; discuss why a fixed number of bits is needed.
  2. Mini‑lecture (10'): Overview of character sets, focusing on ASCII structure and limitations.
  3. Interactive demo (10'): Show an ASCII table slide, then introduce Unicode, planes, and code points; compare with a visual diagram.
  4. Encoding deep‑dive (10'): Explain UTF‑8, UTF‑16, UTF‑32 with examples (e.g., Euro sign); students convert a given code point to each encoding on paper.
  5. Hands‑on coding (10'): In Python, students encode and decode a string containing English, Chinese characters, and an emoji; observe byte output.
  6. Check for understanding (5'): Quick quiz via Kahoot or exit ticket asking which encoding is compatible with ASCII and how many bytes “€” uses in UTF‑8.
Conclusion:

Recap the journey from simple 7‑bit ASCII to the global Unicode system and why proper encoding matters in real‑world programming. Students complete an exit ticket: write one advantage of UTF‑8 over ASCII and one scenario requiring UTF‑16. For homework, they will research a non‑Latin script (e.g., Arabic) and note its Unicode range.