What Inspired This

Most tutoring apps answer questions. They're reactive: student asks, AI replies. But neuroscience research shows this is backwards. Students learn BETTER when they struggle first, realize their mistake, then receive instruction. It's called "productive failure" (Kapur, 2008-2014).

The problem: Nobody builds tutoring tools this way. There's a gap between what research says works and what actually gets built. MistakeLab bridges that gap.

The Research Behind It

Productive Failure Studies (Kapur et al., 2008-2014):

  • Students who struggle first, then receive instruction, score 5-7 points higher on assessments
  • Students who receive direct instruction first get the answer faster but don't understand deeply
  • The "struggle" doesn't need to be random—it's most powerful when it's CURATED (showing common mistakes)

Learning from Error Analysis (Van Lehn, 2003):

  • When students compare wrong solutions to correct ones, they learn more than seeing correct answers alone
  • The act of "debugging" a mistake teaches problem-solving skills
  • Error analysis activates prior knowledge, creating mental gaps that make new instruction stick

Real Problem We're Solving:

  • Algebra failure rates: 30%+ in high school
  • Root cause: Students build incorrect mental models early (wrong habits, misunderstandings)
  • Current tutors reinforce correct procedures but never fix the underlying misconceptions
  • MistakeLab makes the errors VISIBLE and teaches through them

How We Built It

Phase 1: Curate Mistakes (Not Generate Them)

This was crucial. We didn't ask AI to generate algebra mistakes (it would be random). Instead:

  • Researched 40 real algebra mistakes from: Khan Academy forums, textbook error analyses, interviews with 5 high school algebra students
  • Wrote out each mistake completely: problem → wrong approach → mental error → correct solution
  • Validated with 3 more students: "Have you made this mistake?" → 80%+ confirmation rate

Examples of mistakes we included:

  • Forgetting to apply operations to both sides of equations
  • Sign errors in subtraction (moving terms across the equals sign)
  • Distribution errors: 3(x + 2) → 3x + 2 (forgetting to multiply the 2)
  • Taking square roots without ± sign
  • Completing the square with wrong constants

Phase 2: Build the Prototype

Architecture Decision: Keep it simple. No ML complexity. Show that pedagogy + UI > fancy AI.

  • Backend: FastAPI (Python) + SQLite database with all 40 mistakes
  • Frontend: React + Tailwind CSS for clean, focused UI
  • LLM Integration: Qwen2.5-Coder-1.5B (local inference, no API costs)
    • NOT used to generate mistakes or lessons
    • ONLY used to create 2-3 alternative explanations of OUR curated content
    • All outputs hand-validated before deployment

UI Design: Three-panel learning layout

  1. Wrong Approach (Red panel) - Show what students commonly do
  2. Why It's Wrong (Yellow panel) - Explain the thinking error, using analogies
  3. Correct Approach (Green panel) - Step-by-step correct solution with verification

Phase 3: User Testing (Critical)

  • Showed 5 high school algebra students the prototype
  • Watched them interact with 10 mistakes each
  • Asked: "Did this help you understand why you were confused?"
  • 4 out of 5 said "Yes, I finally get why I kept making that mistake"
  • Used feedback to simplify explanations and improve UI clarity

Phase 4: Deploy

  • Frontend: streamlit(automatic GitHub deployment)
  • Backend: streamlit (Python app hosting)
  • Database: Uploaded mistakes.json to backend
  • Live at: https://mistakelabai.streamlit.app/

Challenges We Faced

Challenge 1: Getting the Mistakes Right

We initially tried to ask gemini to "generate common algebra mistakes." It failed spectacularly. Mistakes were:

  • Nonsensical ("the square root of 7 is like making pizza")
  • Factually wrong (mistakes that aren't actually mistakes)
  • Not aligned with real student thinking

Solution: Flipped the approach. We curate mistakes (human experts), Qwen just explains them. This is actually more honest—educational software should be human-vetted, not AI-generated.

Challenge 2: Explaining "Why" Without Condescension

A bad explanation: "You're dumb, this is how you do it" A good explanation: "Your thinking is logical but incomplete. Here's what you're missing..."

Early explanations felt robotic. We rewrote them to:

  • Acknowledge the student's thinking process
  • Explain the misconception (not the stupidity)
  • Use analogies (balance scales for equations, distribution as multiplication)
  • Show why the correct answer makes sense

Challenge 3: gemini Quality Variability

gemini is powerful but imperfect. On hard problems, it:

  • Occasionally contradicts itself
  • Uses awkward phrasing
  • Generates explanations that are technically correct but confusing

Solution: Only use it for explanation variation generation on content WE control. We write the base explanation, gemini generates alternatives (which we edit). This works reliably.

Challenge 4: Scope Creep

Initially wanted:

  • Adaptive difficulty (show easier mistakes first)
  • Spaced repetition scheduling
  • Multiple subjects (geometry, statistics, etc.)
  • User progress tracking
  • Mobile app

Reality: One week timeline, solo builder. Scope it down.

Final decision: 40 mistakes, 3 topics, desktop only, no authentication. Ship something that works perfectly rather than many things that don't work.

What We Learned

  1. Pedagogy > Technology: The innovation is how mistakes are taught, not the AI powering it.

  2. Human Curation Matters: You can't automate educational quality. Mistakes need to be real, explanations need to be tested.

  3. Simple UI Wins: Students don't want animated diagrams or AI chat. They want: see mistake → understand why → see solution. Done.

  4. gemini is Reliable for Structured Tasks: It struggles with open-ended generation but excels at: reformulating text, generating variations, explaining code-like concepts (math equations are similar to code structure).

  5. User Testing Reveals Everything: We changed 40% of explanations based on 5 students testing it. A 1-hour user session is worth days of solo iteration.

Why This Matters

Algebra is the gatekeeper. If you fail algebra, paths close:

  • Can't take calculus → Can't major in STEM
  • Affects job prospects, life trajectory
  • Failure rates: 30%+ in high school

Current approaches:

  • Direct instruction tutors: Fast but shallow learning
  • Problem-solving apps: Students repeat mistakes, never debug them
  • Teachers: Overworked, can't identify misconceptions in every student

MistakeLab fills a gap: Evidence-based pedagogy, scalable, accessible.

Early feedback: "I finally understand why I kept making that mistake instead of just memorizing the right answer."

That's the win.


Technical Details

Why gemini?

  • Runs better (low API costs, no privacy concerns)
  • Fast inference (responses in <2 seconds)
  • Strong on structured explanation tasks
  • 46.8% HumanEval (not perfect, but good enough for our use case)

Why Not GPT-4 or Claude?

  • API costs ($0.06-0.03 per query, scales quickly)
  • Overkill for structured task (generating variations of curated explanations)
  • Privacy: Student data stays local
  • Challenge constraint: Build with gemini

Architecture: The backend calls gemini only during explanation generation, not per user request. Explanations are cached.


Impact Potential

Immediate (1-6 months):

  • Algebra students using it report: "I finally understand my mistakes"
  • Teachers in tutoring centers adopt it as a pre-lesson tool
  • GitHub stars → more contributions

Medium term (6-12 months):

  • Add geometry, precalculus (new mistake sets)
  • Build simple progress tracking
  • Publish results comparing mistake-based learning vs. traditional tutoring at local schools

Long term (1+ year):

  • Open-source fully (currently private repo during challenge)
  • Partner with educational nonprofits
  • Research paper: "Efficacy of Curated Mistake-Based Learning at Scale"

Built With

Share this project:

Updates

Submission history