Skip to content

An analogy driven walkthrough of JavaScript’s execution model, specifically designed to help coders with ADHD and/or dyscalculia better understand the language.

Notifications You must be signed in to change notification settings

SarahArvidson/magicKitchen

Repository files navigation

Magic Kitchen Analogy

An ADHD & Dyscalculia-friendly strategy for understanding JavaScript through narrative and metaphor.

MagicKitchen is a collection of analogies that explain core JavaScript concepts using a magical world full of witch and wizard bakers. Instead of abstract syntax, we focus on how code behaves: who calls what, how data moves, and why certain features (like arrow functions or factory functions) act the way they do.

The project is designed for learners who struggle with abstraction, symbol overload, or mental bookkeeping, and it prioritizes clarity and cognitive accessibility without sacrificing technical accuracy.

Who this is for

  • neurodivergent learners
  • beginners frustrated by “just memorize syntax” approaches and the statement "we'll learn more about this later"
  • people who want to understand why JavaScript behaves the way it does

What this repo contains

  • short narrative chapters about a magical kitchen world
  • matching code examples
  • explanations of JavaScript concepts such as:
    • objects and methods
    • arrow functions
    • factory functions
    • classes
    • inheritance
    • event listeners and DOM behavior

Each chapter maps a programming concept to a practical analogy in the MagicKitchen world.

How to navigate

The full analogies and accompanying code live in the /docs directory.

Start here:

Or jump directly to a chapter:

Using this repository

Explore at your own pace.

You can:

  • read the narratives
  • examine the code
  • modify the examples
  • borrow the analogies for your own learning or teaching

No step-by-step order is required — but if you prefer a guided path, follow the chapters in sequence. They mirror my own personal progress through the Codecademy Full Stack Developer course and they specifically hone in on the parts of learning Javascript that I found confounding and frustrating.

About the author and how the project came to be

You're already here in one of my GitHub repos, so you can easily check out my profile. What's going on in this repo is that I've always been curious about coding and programming, but chose to focus my time and energy on things for which I have always been more talented and shown more aptitude.

I decided to try coding anyway. I found myself reading my course materials, re-reading them, getting hints from Codecademy activities, asking questions in the Codecademy LiveLounge, listening to podcasts, reading books, digging around in Reddit, the MDN, and Stack Overflow, and then I finally learned that I could leverage ChatGPT by asking it to explain concepts to me in a way that serves my brain specifically.

I've trained my ChatGPT to enter what I named "Code Mode," and what it does is shift into answering my specific questions with:

  • analogy-centered explanations
  • stepwise scaffolding of concepts
  • gentle handling of symbolic notation and the awareness that I might flip numbers and symbols by mistake
  • reduced cognitive load for ADHD and dyscalculia
  • examples that tie abstract ideas to concreate metaphors
  • reinforcement of understanding in lieu of rote memorization

If this repo helps you, please feel free to use it and share it. You might dislike baking, magic, or the analogies I've chosen. Feel free to use this as a framework for your own analogies. If you have questions about training ChatGPT to work for your brain, just reach out to me... or it.

About

An analogy driven walkthrough of JavaScript’s execution model, specifically designed to help coders with ADHD and/or dyscalculia better understand the language.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published