MIRA Lab

Platforms / Introductory Python

MIRA-Py

A mastery-based Python platform that opens each task only after the student states the concept in their own words.

Domain
Introductory Python programming
Learners
Undergraduate students
Shared with instructors
Completion certificate only
Theoretical basis
Productive friction and epistemic ownership

Why it exists

A student using a capable AI assistant can produce correct code without having understood it. The code runs and the assignment is complete, but nothing in the artifact records whether the student could have produced it alone. MIRA-Py asks whether requiring a student to state a concept before the platform runs their code changes what the student ends up owning.

Each assignment has six tasks in a fixed order. A task opens only after a concept check in the student’s own words and a code check on the actual output, and some tasks add a dry run prediction. The platform sends the instructor no behavioral data. Instructors receive a signed completion certificate, because a platform that reports a student’s working pattern to the grader would change the behavior it measures. The same perception and reflection questions appear in every assignment, so the unit of analysis is each student’s trajectory across the semester.

What students see, and what the platform records

MIRA asks a concept question before the student writes code

Concept check. Before writing code, students answer MIRA’s question about the concept in their own words. The Run button unlocks after they pass.

Concept check

Before writing code, students answer MIRA’s question about the concept in their own words. The Run button unlocks after they pass.

Records each answer and how much support MIRA gave before the check opened.

Dry run prompt beside the chat, asking the student to predict what the code prints

Dry run. On selected tasks, students predict what the code will print before they run it. The gate opens after three attempts either way.

Dry run

On selected tasks, students predict what the code will print before they run it. The gate opens after three attempts either way.

Records each prediction and whether it matched the output.

Learning profile with Planning, Understanding, and Code Change as a triangle and Implementation Fluency as a separate pointExplanation of Implementation Fluency shown when the student opens its information icon

Learning profile. Students can open their profile at any time. Planning, Understanding, and Code Change form a triangle, and Implementation Fluency is shown as a separate point. Each label explains how its value is computed.

Learning profile

Students can open their profile at any time. Planning, Understanding, and Code Change form a triangle, and Implementation Fluency is shown as a separate point. Each label explains how its value is computed.

Records the profile values after each interaction.

Reflection prompt asking the student to compare the profile with how the assignment felt

Reflection. At the end of each assignment, students compare the profile with how the work felt to them and describe where the two differ.

Reflection

At the end of each assignment, students compare the profile with how the work felt to them and describe where the two differ.

Records the same reflection prompts in every assignment, so each student’s answers can be compared across the semester.

What it measures

Students see three views of epistemic ownership as a profile shape, with Implementation Fluency drawn as a separate point.

Planning

Conceptual independence

How much support the student needed before the concept check opened.

Understanding

Trace accuracy

Whether the student can predict what code will print before running it, and whether that model holds on the quiz.

Code Change

Explanatory ownership

How much of the solution was built inside the session rather than arriving from outside it.

Implementation Fluency

How many runnable submissions it took to pass. Shown as a separate point, not as part of the profile shape.

Designed and developed by Ji Hyun Yu, MIRA Lab.