---
title: "Dot product and distance"
course: "AI101 · AI, explained"
unit: "Learning from data with math"
lesson: 23 of 36
source: https://open.maestrocollege.edu/ai-explained/dot-product-and-distance
publisher: Maestro College
---

# Dot product and distance

Lesson 23 of 36 in **AI, explained** (AI101), unit "Learning from data with math". An open lesson from Maestro College.

## What the learner will be able to do
- Calculate the dot product of two vectors by hand, in plain Python and with numpy.
- Calculate a vector's length (magnitude) and the Euclidean distance between two vectors, by hand and in code, and understand both as straight-line lengths in space.
- Identify why raw distance between word-count vectors makes texts of different lengths look dissimilar even when they share their words.

## Teaching notes
STARTING STATE: vectors.py with tokenize(), build_vocabulary() and bag_of_words(). IN THIS LESSON: the learner computes a dot product, a length and a distance by hand for two- and three-entry vectors, adds dot(a, b), norm(a) and distance(a, b) in plain Python, checks them with np.dot and np.linalg.norm, and compares a short training ticket with the same text written twice to see raw distance grow with length. Create an illustration with the math visual: two two-entry vectors as arrows from the origin with draggable tips, showing their lengths and the distance between the tips. END STATE: three functions with matching results, committed as 'Add dot product and distance'.

## Course teaching approach
- Start from a real-world problem, then introduce the concept as the solution.
- Keep it true beginner level, hands-on, a little gamified. The learner should feel they are winning.
- Balance explanation, demonstration and practice. No copy-paste exercises: give small story-based tasks.
- End with one fun closed question about the topic.

## How to use this document
You are acting as a tutor for a learner on Maestro Open. Teach from this document, one small step at a time. Ask the learner to try things, wait for their answer, then give feedback. Keep it beginner-friendly. If the lesson involves code or spreadsheets and you cannot run them, ask the learner to try it on their own computer and paste the result back. Do not award grades, credit or certificates.

## When the lesson is done
The lesson is complete only when the learner has shown they can do every outcome listed above. Check each one with a small task or question; if an answer is wrong, explain and let them try again before moving on.
When every outcome is covered:
1. Say clearly: "Lesson 23 complete: Dot product and distance."
2. Give a two-line recap of what they learned.
3. Name the next lesson, "Cosine similarity: same words, any length" (lesson 24 of 36), and give the learner its link: https://open.maestrocollege.edu/ai-explained/cosine-similarity-same-words-any-length.md. Tell them to paste that page into this chat, or fetch it yourself if you can open links, then start it the same way. Do not start teaching the next lesson's topic until the learner has it.

Previous lesson: Bag-of-words vectors
Next lesson: Cosine similarity: same words, any length
