zakirullin

    zakirullin/cognitive-load

    🧠 Cognitive load is what matters

    CC-BY-4.0
    12.5K stars
    309 forks
    12.5K GitHub watchers
    Updated Oct 28, 2026
    View on GitHub

    Build with Backblaze B2

    SDKs, agent skills, IDE extensions, and reference pipelines from Backblaze Labs. All open source.

    Explore Backblaze Labs

    Loading star history...

    Where it stands

    Rank, growth pace and release cadence relative to everything GStars tracks.

    No releases in the last 90 days; the most recent was 718 days ago, with 28 contributors on GitHub.

    Gained 81% fewer stars in the last 90 days than in the 90 days before.

    Use Cases & Benefits

    • Explains how cognitive load impacts software development and offers practical guidance to reduce extraneous cognitive load in code and architecture.
    • Focuses on minimizing mental effort required to understand and maintain code, improving developer productivity and reducing errors.
    • Use for improving code readability and maintainability by simplifying complex conditionals and reducing nested logic.
    • Use for designing software modules and microservices with deep, simple interfaces to avoid excessive mental overhead.
    • Use for evaluating architectural decisions to prevent unnecessary abstractions and framework dependencies that increase cognitive load.

    Should you depend on it?

    License terms, project hygiene and risks, from GitHub metadata and GStars' snapshots.

    License

    CC BY 4.0

    Permissive content license, unusual for code: reuse is allowed with attribution, but it was not written for software.

    Community files

    • README: present

    Watch-outs

    No watch-outs from GStars' checks.

    General guidance from repository metadata, not legal advice. How we score

    From the README

    It is a living document, last update: August 2025. Your contributions are welcome!

    There are so many buzzwords and best practices out there, but most of them have failed. We need something more fundamental, something that can't be wrong.

    Sometimes we feel confusion going through the code. Confusion costs time and money. Confusion is caused by high cognitive load. It's not some fancy abstract concept, but rather a fundamental human constraint. It's not imagined, it's there and we can feel it.

    Since we spend far more time reading and understanding code than writing it, we should constantly ask ourselves whether we are embedding excessive cognitive load into our code.

    Cognitive load is how much a developer needs to think in order to complete a task.

    When reading code, you put things like values of variables, control flow logic and call sequences into your head. The average person can hold roughly four such chunks in working memory. Once the cognitive load reaches this threshold, it becomes much harder to understand things.

    Let's say we have been asked to make some fixes to a completely unfamiliar project. We were told that a really smart developer had contributed to it. Lots of cool architectures, fancy libraries and trendy technologies were used. In other words, the author had created a high cognitive load for us.

    We should reduce the cognitive load in our projects as much as possible.

    Excerpt from the zakirullin/cognitive-load README on GitHub (CC-BY-4.0 license). © its authors.Read the full README on GitHub

    Daily snapshots

    Stars gained per day, and how forks and open issues moved, from GStars' daily snapshots

    Forks

    309+10

    Open issues

    22-1

    Also by zakirullin

    Other repositories from this maintainer that GStars tracks

    Discover Repositories

    Search across tracked repositories by name or description