Skip to content

feat: Add "The Mango Harvest (For Loops)" Case Study Module - #75

Open
akshatsharma941 wants to merge 1 commit into
vicharanashala:mainfrom
akshatsharma941:submission-akshat
Open

feat: Add "The Mango Harvest (For Loops)" Case Study Module#75
akshatsharma941 wants to merge 1 commit into
vicharanashala:mainfrom
akshatsharma941:submission-akshat

Conversation

@akshatsharma941

Copy link
Copy Markdown

This PR introduces The Mango Harvest, a standalone, interactive case study module for the PyBe platform designed to teach Python for loops.

Following PyBe's core philosophy - that the situation must earn the construct - this module uses Constructivist and Cognitive Load Theory principles to bypass the heavy cognitive load of abstract syntax. Instead of starting with code, learners are immersed in a relatable narrative (Dada harvesting a mango orchard) guided by a Socratic observer (The Fox).

Key Learner Benefits:

  1. Concrete-to-Abstract Progression: Learners experience sequential processing visually and interactively before ever seeing a line of Python code.
  2. Intuitive Analogical Transfer: By mapping the orchard to a list and the individual tree to a loop variable, the mechanics of iteration (the "Conveyor Belt" mental model) become immediately obvious.
  3. Scaffolded Practice: Includes a drag-and-drop block coding activity, allowing learners to focus on structural logic without being punished for minor syntax errors.
  4. Socratic & Non-Punitive: Misconceptions are gently addressed through targeted, penalty-free assessments that guide the learner toward the right answer rather than grading them.

Technical Details:

  1. Built as a lightweight, offline-first Single Page Application (SPA).
  2. Uses purely Vanilla HTML, CSS, and JS (no framework, no build step required).
  3. Unidirectional state management via a custom lessonEngine.js.
  4. Fully conforms to the PyBe platform's accessibility and design system standards outlined in the Team Product Document.

How to test:

  1. Clone the repository and navigate to summership-26-prs/Akshat Sharma/.
  2. Start a local server (e.g., python -m http.server 8000).
  3. Open http://localhost:8000 to verify the module's interactive flow and offline capabilities.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant