Foundations

Computer Thinking

02The curriculum

Modules and topics

14 modules, 102 topics.

Foundational content9 modules

Core content in the space, explaining the essentials of this skill.

01 — What Computer Thinking Actually Means

Why Designers Need a System Designer's Brain

Written

الـ Computer Thinking مش برمجة، هي طريقة تفكير. الفرق بين مصمم بيفكر في screens و مصمم بيفكر في systems.

8 topics

  • Computer Thinking vs Programming
  • Why Designers Need It
  • Designer Thinking in Screens vs Systems
  • The Designer as System Designer Not Artist
  • Why Developers Say "That Won't Work"
  • The Missing Engineering Language in Design Education
  • Computer Thinking as Unfair Advantage in the AI Era
  • Bridging the Design-Engineering Gap

02 — Logic & Conditions

The Rules That Govern Every Design Decision

Written

كل تصميم فيه rules، و المصمم أغلب الوقت بيفترضها بدل ما يكتبها. هنا بتتعلم تكتبها.

8 topics

  • True / False Thinking
  • If / Then / Else Logic
  • And / Or / Not
  • Boolean Logic for Designers
  • The Difference Between "Should" and "Must"
  • Writing the Rules Behind Your Design
  • Conditional Logic in Design Tokens
  • Documenting Logic, Not Just Visuals

03 — States & Transitions

Every Interaction is a State Machine

Written

المصمم اللي بيرسم الـ default state بس و يسلّم بيسيب الباقي للـ developer يخمنه.

8 topics

  • What is a State
  • Stateful vs Stateless
  • Empty, Loading, Success, Error, Disabled
  • The States Designers Forget
  • Transitions: The States Between States
  • Every Component as a Small State Machine
  • State Design as a Standalone Skill
  • States as the Source of Truth for Developers

04 — Loops & Repetition

Design as Template, Not Instance

Written

تصميم card واحدة و إنت فاكر 100 use case أحسن من رسم 100 card. دي الـ loop thinking.

8 topics

  • What is a Loop
  • Repetition in Design (Cards, Lists, Grids)
  • Design as Template vs Instance
  • One Card with 100 Use Cases vs 100 Static Cards
  • Loop Thinking for Content
  • When Patterns Break: Edge Cases
  • Dynamic Content vs Static Mockups
  • The Scaling Problem in Design Files

05 — Inputs, Outputs & Data Flow

Designing the Shape, Not Just the Look

Written

كل system عبارة عن input و process و output. اللي مبيفكرش في الـ data بيصمم UI مش product.

8 topics

  • Every System: Input → Process → Output
  • Identifying Data In and Data Out
  • Why Developers Ask About Data Structure
  • Designing for Data, Not Just for UI
  • Empty Data, Missing Data, Malformed Data
  • The Designer Designs the Shape, The Developer Fills It
  • Data-First Design Thinking
  • The Connection Between Data Models and Visual Hierarchy

11 — Weekly Logic Challenges

One Logic Problem a Week to Train Your System Thinking

Challenge

كل أسبوع تحدي logic مش تحدي visual. الهدف إنك تتعود على التفكير المنظّم قبل التصميم.

8 topics

  • Design a sign-up form. List every possible state and error
  • Design a notification system. Define the rules: when, who, how often
  • Take an existing screen, find 10 edge cases the original designer missed
  • Design a search feature: what happens with 0 results, 1 result, 10,000 results, typos
  • Map every state of a button: default, hover, focused, pressed, disabled, loading, success, error
  • Design a permissions system: admin, editor, viewer, guest. What can each do?
  • Define every rule for a comment system: who can edit, delete, reply, when, why
  • Build a state diagram for a checkout flow with payment failures

12 — System Breakdowns

Learning From Real Products' Logic

Breakdown

مش design breakdown، ده logic breakdown. إزاي المنتج بيتعامل مع الـ failures و الـ states و الـ rules.

8 topics

  • How Stripe Handles Failed Payments (States + Edge Cases)
  • How Notion Manages Permissions (Logic)
  • How Linear Implements Keyboard Shortcuts (Input Mapping)
  • How Figma Handles Multiplayer (State Sync)
  • How Apple Calendar Handles Time Zones (Edge Cases)
  • How Gmail Manages Drafts and Auto-Save (State Management)
  • How Slack Handles Notifications (Rules System)
  • How Spotify Manages Offline Mode (State Transitions)

13 — Designer-Developer Translation Exercises

Speaking Both Languages

Exercise

تمارين ترجمة بين لغة المصمم و لغة الـ developer. أسرع طريقة تبني الـ muscle ده.

6 topics

  • Take a design and write its specs as a developer would read them
  • Take a PR description and translate it into design implications
  • Take API documentation and turn it into UI states
  • Take a user story and turn it into a state diagram
  • Take a developer's question and answer it without saying "I don't know"
  • Take a Jira ticket and identify the missing design considerations

02 — Logic & Conditions

The Rules That Govern Every Design Decision

Written

كل تصميم فيه rules، و المصمم أغلب الوقت بيفترضها بدل ما يكتبها. هنا بتتعلم تكتبها.

Context content5 modules

Where this skill meets the other spaces.

06 — Systems & Components

Composition Over Configuration

Written

الـ design system بيفشل لما الـ components تتبني من غير تفكير في الـ system. بيبقى collection مش system.

8 topics

  • What is a System
  • Components as Atoms
  • Composition vs Configuration
  • Reusability as Mindset, Not Feature
  • Why Design Systems Fail Without System Thinking
  • Variants, Props, and Slots
  • The Connection to Design Foundations and Design Systems
  • Component API Thinking for Designers

07 — Edge Cases & Error Thinking

Happy Path Is Not Enough

Written

المصمم اللي بيفكر زي الـ QA بيوصل لـ senior أسرع، لإن تفكير الـ senior هو توقّع اللي محدش اتوقعه.

8 topics

  • Why Happy Path Is Not Enough
  • Thinking Like QA
  • The User Who Breaks Your Design
  • Empty States, Long Names, Slow Networks, Failed Requests
  • Why Developers Ask "Weird" Questions
  • Edge Case Checklist for Designers
  • When AI Gets Edge Cases Wrong
  • The Cost of Missing Edge Cases

08 — Constraints as Design Material

The Constraint Is Not the Enemy

Written

اللي بيفهم الـ constraints بيشتغل أسرع، مش لإنه بيتعامل مع أقل، لإنه بيدور في مساحة أوضح.

8 topics

  • Constraints as Creative Material
  • Performance Constraints
  • Technical Constraints
  • Browser Constraints
  • API Constraints
  • Mobile Constraints
  • Why Designers Who Understand Limits Ship Faster
  • Working With the System, Not Against It

09 — Designer & Developer Languages

Why Communication Fails And How to Fix It

Written

لما تقول «ساعتين» و هو يقول «أسبوع»، مفيش حد غلط. إنتوا بتتكلموا لغتين مختلفتين.

8 topics

  • Why Communication Fails Between Designers and Developers
  • Developer Vocabulary (State, Props, Schema, Payload, Async)
  • Time Estimation Gaps and Why They Happen
  • Specs, Handoff, and Annotations
  • Design Docs That Cut Back-and-Forth in Half
  • Why AI Tools Are Forcing This Language on You Anyway
  • Speaking Both Languages as a Career Skill
  • The Translation Layer Between Design and Engineering

10 — Thinking in Algorithms

Step-by-Step Thinking for Design Problems

Written

الـ algorithm مش برمجة، هو تفكير مرتب. الفرق بين مصمم بيرسم حلول و مصمم بيصمم حلول.

8 topics

  • What is an Algorithm
  • Step by Step Thinking
  • Decomposition: Breaking Problems Into Parts
  • Pattern Recognition
  • Abstraction: What Matters vs What's Detail
  • Algorithm Design for Design Problems
  • Sorting, Filtering, Searching in UX
  • The Logic Behind Every Good Flow

Open this space

This space is part of the subscription. One plan opens it and everything else that is available.