# Make dinner when you have no plan

> A process map exported from forks.world (https://forks.world). Author: Brian. Source: https://forks.world/p/cmv0iejig006djw06zyu4zzcr
> It describes who does what, in what order, and with which technology. Read the plain-language sections first; the JSON at the end is the exact, complete data.

## Summary

- 26 steps across 3 layers
- Persona: You, The people eating
- Technology / systems: Fridge and pantry, Stove and oven

## Pain points

Where this process hurts, worst first:

- **It is 6:30. What is for dinner?** (Make dinner when you have no plan; painful): The daily "what is for dinner?" decision is exhausting
- **Soak the pan and tell yourself it is fine** (Make dinner when you have no plan; annoying): Future you is not happy about the dishes

## How to read this file

- A process is made of **layers**. The main layer is the top level; any step of kind `subprocess` opens a detail layer with its own lanes and steps.
- **Lanes** are either persona (people/roles) or technology (systems). Each step belongs to one lane; `using` lists tools a person uses for that step.
- Step kinds: `start`, `task`, `decision` (its arrows carry the answer as a label), `subprocess`, `end`.

## Make dinner when you have no plan

Lanes:
- You: person / role (id `me`)
- Fridge and pantry: technology / system (id `fridge`)
- Stove and oven: technology / system (id `stove`)
- The people eating: person / role (id `fam`)

Steps, in the order they run:

1. **It is 6:30. What is for dinner?** [start; You; id `d1`] ⚠ PAIN POINT (painful): The daily "what is for dinner?" decision is exhausting
   - then Check what is in the fridge
2. **Check what is in the fridge** [task; Fridge and pantry; id `d2`]
   - then Enough for a real meal?
3. **Enough for a real meal?** [decision; You; id `d3`]
   - if "Yes" go to Pick a recipe; if "No" go to Takeout, or pantry pasta?
4. **Pick a recipe** [task; You; id `d4`]
   - then Cook it
5. **Cook it** [subprocess; Stove and oven; id `d8`], opens the detail layer "Cooking in a pan"
   - then Taste it. Does it need anything?
6. **Taste it. Does it need anything?** [decision; You; id `d9`]
   - if "Needs salt or acid" go to Add salt, acid or heat; if "Perfect" go to Eat together
7. **Add salt, acid or heat** [task; You; id `d10`]
   - then Taste it. Does it need anything?
8. **Eat together** [task; The people eating; id `d11`]
   - then Dishes: now, or leave them for future you?
9. **Dishes: now, or leave them for future you?** [decision; You; id `d12`]
   - if "Now" go to Done in 10 minutes; if "Future me" go to Soak the pan and tell yourself it is fine
10. **Done in 10 minutes** [end; You; id `d13`]
11. **Soak the pan and tell yourself it is fine** [end; You; id `d14`] ⚠ PAIN POINT (annoying): Future you is not happy about the dishes
12. **Takeout, or pantry pasta?** [decision; You; id `d5`]
   - if "Takeout" go to Order and wait 40 minutes; if "Pantry pasta" go to Boil water and cook the pasta
13. **Order and wait 40 minutes** [task; You; id `d6`]
   - then Eat together
14. **Boil water and cook the pasta** [subprocess; Stove and oven; id `d7`], opens the detail layer "Pasta that is actually good"
   - then Eat together

```mermaid
flowchart LR
  subgraph l_me["You"]
    n_d1(["It is 6:30. What is for dinner?"])
    n_d3{"Enough for a real meal?"}
    n_d5{"Takeout, or pantry pasta?"}
    n_d6["Order and wait 40 minutes"]
    n_d4["Pick a recipe"]
    n_d9{"Taste it. Does it need anything?"}
    n_d10["Add salt, acid or heat"]
    n_d12{"Dishes: now, or leave them for future you?"}
    n_d13(["Done in 10 minutes"])
    n_d14(["Soak the pan and tell yourself it is fine"])
  end
  subgraph l_fridge["Fridge and pantry"]
    n_d2["Check what is in the fridge"]
  end
  subgraph l_stove["Stove and oven"]
    n_d7[["Boil water and cook the pasta"]]
    n_d8[["Cook it"]]
  end
  subgraph l_fam["The people eating"]
    n_d11["Eat together"]
  end
  n_d1 --> n_d2
  n_d2 --> n_d3
  n_d3 -->|"Yes"| n_d4
  n_d3 -->|"No"| n_d5
  n_d5 -->|"Takeout"| n_d6
  n_d5 -->|"Pantry pasta"| n_d7
  n_d6 --> n_d11
  n_d7 --> n_d11
  n_d4 --> n_d8
  n_d8 --> n_d9
  n_d9 -->|"Needs salt or acid"| n_d10
  n_d9 -->|"Perfect"| n_d11
  n_d10 --> n_d9
  n_d11 --> n_d12
  n_d12 -->|"Now"| n_d13
  n_d12 -->|"Future me"| n_d14
```

### Cooking in a pan (detail of step "Cook it")

Lanes:
- You: person / role (id `me`)
- Stove and oven: technology / system (id `stove`)

Steps, in the order they run:

1. **Prep everything first** [start; You; id `c1`]
   - then Heat the pan before adding oil
2. **Heat the pan before adding oil** [task; Stove and oven; id `c2`]
   - then Does it sizzle when the food hits?
3. **Does it sizzle when the food hits?** [decision; You; id `c3`]
   - if "Yes" go to Cook in batches; do not crowd the pan; if "No" go to Wait: the pan is not hot enough yet
4. **Cook in batches; do not crowd the pan** [task; You; id `c4`]
   - then Rest the food before serving
5. **Rest the food before serving** [end; You; id `c6`]
6. **Wait: the pan is not hot enough yet** [task; Stove and oven; id `c5`]
   - then Does it sizzle when the food hits?

```mermaid
flowchart LR
  subgraph l_me["You"]
    n_c1(["Prep everything first"])
    n_c3{"Does it sizzle when the food hits?"}
    n_c4["Cook in batches; do not crowd the pan"]
    n_c6(["Rest the food before serving"])
  end
  subgraph l_stove["Stove and oven"]
    n_c2["Heat the pan before adding oil"]
    n_c5["Wait: the pan is not hot enough yet"]
  end
  n_c1 --> n_c2
  n_c2 --> n_c3
  n_c3 -->|"Yes"| n_c4
  n_c3 -->|"No"| n_c5
  n_c5 --> n_c3
  n_c4 --> n_c6
```

### Pasta that is actually good (detail of step "Boil water and cook the pasta")

Lanes:
- Stove and oven: technology / system (id `stove`)
- You: person / role (id `me`)

Steps, in the order they run:

1. **Bring water to a boil** [start; Stove and oven; id `p1`]
   - then Salt it like the sea
2. **Salt it like the sea** [task; You; id `p2`]
   - then Cook until al dente
3. **Cook until al dente** [task; Stove and oven; id `p3`]
   - then Taste a piece
4. **Taste a piece** [task; You; id `p4`]
   - then Done?
5. **Done?** [decision; You; id `p5`]
   - if "Yes" go to Save a cup of pasta water, then drain; if "Not yet" go to Cook until al dente
6. **Save a cup of pasta water, then drain** [end; You; id `p6`]

```mermaid
flowchart LR
  subgraph l_stove["Stove and oven"]
    n_p1(["Bring water to a boil"])
    n_p3["Cook until al dente"]
  end
  subgraph l_me["You"]
    n_p2["Salt it like the sea"]
    n_p4["Taste a piece"]
    n_p5{"Done?"}
    n_p6(["Save a cup of pasta water, then drain"])
  end
  n_p1 --> n_p2
  n_p2 --> n_p3
  n_p3 --> n_p4
  n_p4 --> n_p5
  n_p5 -->|"Yes"| n_p6
  n_p5 -->|"Not yet"| n_p3
```

## Full data (JSON)

```json
{
  "title": "Make dinner when you have no plan",
  "maps": {
    "m_cook": {
      "id": "m_cook",
      "lanes": [
        {
          "id": "me",
          "name": "You",
          "type": "person"
        },
        {
          "id": "stove",
          "name": "Stove and oven",
          "type": "system"
        }
      ],
      "steps": [
        {
          "id": "c1",
          "kind": "start",
          "lane": "me",
          "next": [
            {
              "to": "c2"
            }
          ],
          "uses": [],
          "label": "Prep everything first"
        },
        {
          "id": "c2",
          "kind": "task",
          "lane": "stove",
          "next": [
            {
              "to": "c3"
            }
          ],
          "uses": [],
          "label": "Heat the pan before adding oil"
        },
        {
          "id": "c3",
          "kind": "decision",
          "lane": "me",
          "next": [
            {
              "to": "c4",
              "label": "Yes"
            },
            {
              "to": "c5",
              "label": "No"
            }
          ],
          "uses": [],
          "label": "Does it sizzle when the food hits?"
        },
        {
          "id": "c5",
          "kind": "task",
          "lane": "stove",
          "next": [
            {
              "to": "c3"
            }
          ],
          "uses": [],
          "label": "Wait: the pan is not hot enough yet"
        },
        {
          "id": "c4",
          "kind": "task",
          "lane": "me",
          "next": [
            {
              "to": "c6"
            }
          ],
          "uses": [],
          "label": "Cook in batches; do not crowd the pan"
        },
        {
          "id": "c6",
          "kind": "end",
          "lane": "me",
          "next": [],
          "uses": [],
          "label": "Rest the food before serving"
        }
      ],
      "title": "Cooking in a pan",
      "parent": {
        "map": "m_root",
        "step": "d8"
      }
    },
    "m_root": {
      "id": "m_root",
      "lanes": [
        {
          "id": "me",
          "name": "You",
          "type": "person"
        },
        {
          "id": "fridge",
          "name": "Fridge and pantry",
          "type": "system"
        },
        {
          "id": "stove",
          "name": "Stove and oven",
          "type": "system"
        },
        {
          "id": "fam",
          "name": "The people eating",
          "type": "person"
        }
      ],
      "steps": [
        {
          "id": "d1",
          "kind": "start",
          "lane": "me",
          "next": [
            {
              "to": "d2"
            }
          ],
          "pain": {
            "note": "The daily \"what is for dinner?\" decision is exhausting",
            "level": 2
          },
          "uses": [],
          "label": "It is 6:30. What is for dinner?"
        },
        {
          "id": "d2",
          "kind": "task",
          "lane": "fridge",
          "next": [
            {
              "to": "d3"
            }
          ],
          "uses": [],
          "label": "Check what is in the fridge"
        },
        {
          "id": "d3",
          "kind": "decision",
          "lane": "me",
          "next": [
            {
              "to": "d4",
              "label": "Yes"
            },
            {
              "to": "d5",
              "label": "No"
            }
          ],
          "uses": [],
          "label": "Enough for a real meal?"
        },
        {
          "id": "d5",
          "kind": "decision",
          "lane": "me",
          "next": [
            {
              "to": "d6",
              "label": "Takeout"
            },
            {
              "to": "d7",
              "label": "Pantry pasta"
            }
          ],
          "uses": [],
          "label": "Takeout, or pantry pasta?"
        },
        {
          "id": "d6",
          "kind": "task",
          "lane": "me",
          "next": [
            {
              "to": "d11"
            }
          ],
          "uses": [],
          "label": "Order and wait 40 minutes"
        },
        {
          "id": "d7",
          "kind": "subprocess",
          "lane": "stove",
          "next": [
            {
              "to": "d11"
            }
          ],
          "uses": [],
          "child": "m_pasta",
          "label": "Boil water and cook the pasta"
        },
        {
          "id": "d4",
          "kind": "task",
          "lane": "me",
          "next": [
            {
              "to": "d8"
            }
          ],
          "uses": [],
          "label": "Pick a recipe"
        },
        {
          "id": "d8",
          "kind": "subprocess",
          "lane": "stove",
          "next": [
            {
              "to": "d9"
            }
          ],
          "uses": [],
          "child": "m_cook",
          "label": "Cook it"
        },
        {
          "id": "d9",
          "kind": "decision",
          "lane": "me",
          "next": [
            {
              "to": "d10",
              "label": "Needs salt or acid"
            },
            {
              "to": "d11",
              "label": "Perfect"
            }
          ],
          "uses": [],
          "label": "Taste it. Does it need anything?"
        },
        {
          "id": "d10",
          "kind": "task",
          "lane": "me",
          "next": [
            {
              "to": "d9"
            }
          ],
          "uses": [],
          "label": "Add salt, acid or heat"
        },
        {
          "id": "d11",
          "kind": "task",
          "lane": "fam",
          "next": [
            {
              "to": "d12"
            }
          ],
          "uses": [],
          "label": "Eat together"
        },
        {
          "id": "d12",
          "kind": "decision",
          "lane": "me",
          "next": [
            {
              "to": "d13",
              "label": "Now"
            },
            {
              "to": "d14",
              "label": "Future me"
            }
          ],
          "uses": [],
          "label": "Dishes: now, or leave them for future you?"
        },
        {
          "id": "d13",
          "kind": "end",
          "lane": "me",
          "next": [],
          "uses": [],
          "label": "Done in 10 minutes"
        },
        {
          "id": "d14",
          "kind": "end",
          "lane": "me",
          "next": [],
          "pain": {
            "note": "Future you is not happy about the dishes",
            "level": 1
          },
          "uses": [],
          "label": "Soak the pan and tell yourself it is fine"
        }
      ],
      "title": "Make dinner when you have no plan",
      "parent": null
    },
    "m_pasta": {
      "id": "m_pasta",
      "lanes": [
        {
          "id": "stove",
          "name": "Stove and oven",
          "type": "system"
        },
        {
          "id": "me",
          "name": "You",
          "type": "person"
        }
      ],
      "steps": [
        {
          "id": "p1",
          "kind": "start",
          "lane": "stove",
          "next": [
            {
              "to": "p2"
            }
          ],
          "uses": [],
          "label": "Bring water to a boil"
        },
        {
          "id": "p2",
          "kind": "task",
          "lane": "me",
          "next": [
            {
              "to": "p3"
            }
          ],
          "uses": [],
          "label": "Salt it like the sea"
        },
        {
          "id": "p3",
          "kind": "task",
          "lane": "stove",
          "next": [
            {
              "to": "p4"
            }
          ],
          "uses": [],
          "label": "Cook until al dente"
        },
        {
          "id": "p4",
          "kind": "task",
          "lane": "me",
          "next": [
            {
              "to": "p5"
            }
          ],
          "uses": [],
          "label": "Taste a piece"
        },
        {
          "id": "p5",
          "kind": "decision",
          "lane": "me",
          "next": [
            {
              "to": "p6",
              "label": "Yes"
            },
            {
              "to": "p3",
              "label": "Not yet"
            }
          ],
          "uses": [],
          "label": "Done?"
        },
        {
          "id": "p6",
          "kind": "end",
          "lane": "me",
          "next": [],
          "uses": [],
          "label": "Save a cup of pasta water, then drain"
        }
      ],
      "title": "Pasta that is actually good",
      "parent": {
        "map": "m_root",
        "step": "d7"
      }
    }
  }
}
```
