{
  "about": "Jake Herridge as a typed graph: builds, papers, creative work, values, influences, life.",
  "note": "Edges are typed. Read an edge as: FROM (rel) TO, e.g. 'frankl shaped why-first'. The human version lives at https://jakeherridge.com/map/.",
  "kinds": {
    "person": "Me",
    "build": "Builds",
    "paper": "Papers",
    "creative": "Creative work",
    "value": "Values",
    "influence": "Influences",
    "life": "Life"
  },
  "relations": {
    "made": "made",
    "wrote": "wrote",
    "shaped": "shaped",
    "led_to": "led to",
    "part_of": "is part of",
    "related": "runs beside"
  },
  "nodes": [
    {
      "id": "jake",
      "label": "Jake Herridge",
      "kind": "person",
      "summary": "Builder and writer in Bentonville, Arkansas. Everything here hangs off this node.",
      "href": "https://jakeherridge.com/about/"
    },
    {
      "id": "pocketwild",
      "label": "PocketWild",
      "kind": "build",
      "summary": "A native iOS field journal. Every creature you find gets a name.",
      "status": "shipped",
      "href": "https://www.pocketwild.app/"
    },
    {
      "id": "synapse",
      "label": "Synapse",
      "kind": "build",
      "summary": "A knowledge graph of typed nodes and typed edges. This map is its public cousin.",
      "status": "growing",
      "href": "https://jakeherridge.com/collection/#synapse"
    },
    {
      "id": "synapse-capture",
      "label": "Synapse Capture",
      "kind": "build",
      "summary": "A Claude Code plugin that saves a session's defining moments into the graph.",
      "status": "shipped",
      "href": "https://jakeherridge.com/collection/#synapse-capture"
    },
    {
      "id": "apd",
      "label": "APD Storytelling System",
      "kind": "build",
      "summary": "Turns messy operational data into briefs and decks a board will actually read.",
      "status": "shipped",
      "href": "https://github.com/jakelherridge/apd-storytelling-system"
    },
    {
      "id": "kitchen-happy",
      "label": "Kitchen Happy",
      "kind": "build",
      "summary": "Real recipes and the skills to cook them, built with my wife Haley.",
      "status": "shipped",
      "href": "https://kitchenhappy.club/"
    },
    {
      "id": "making-moves",
      "label": "Making Moves PT",
      "kind": "build",
      "summary": "A marketing site for a friend's mobile physical therapy practice.",
      "status": "shipped",
      "href": "https://jakeherridge.com/collection/#making-moves"
    },
    {
      "id": "ai-hub",
      "label": "The AI Hub",
      "kind": "build",
      "summary": "One door for every internal AI tool we shipped, with usage tracked from day one.",
      "status": "shipped",
      "href": "https://jakeherridge.com/collection/#inside"
    },
    {
      "id": "perf-reviews",
      "label": "Automated reviews",
      "kind": "build",
      "summary": "Turned a dreaded annual scramble into something that mostly runs itself.",
      "status": "shipped",
      "href": "https://jakeherridge.com/collection/#inside"
    },
    {
      "id": "threed",
      "label": "A 3D image maker",
      "kind": "build",
      "summary": "A cool demo nobody needed. It taught me to start with the person.",
      "status": "shelved",
      "href": "https://jakeherridge.com/collection/#shelved"
    },
    {
      "id": "wardrobe",
      "label": "A wardrobe tool",
      "kind": "build",
      "summary": "I wanted it. Nobody else did. Now I check the need is real first.",
      "status": "shelved",
      "href": "https://jakeherridge.com/collection/#shelved"
    },
    {
      "id": "occ-codes",
      "label": "A wage data tool",
      "kind": "build",
      "summary": "The data was too thin to trust, and trust was the whole product.",
      "status": "shelved",
      "href": "https://jakeherridge.com/collection/#shelved"
    },
    {
      "id": "compute-then-narrate",
      "label": "Compute, Then Narrate",
      "kind": "paper",
      "summary": "How to trust AI generated numbers when a smarter model will not get you there.",
      "href": "https://jakeherridge.com/papers/compute-then-narrate/"
    },
    {
      "id": "abundance-or-scarcity",
      "label": "Abundance or Scarcity",
      "kind": "paper",
      "summary": "Two cultures for the AI moment, and why the best operators run both.",
      "href": "https://jakeherridge.com/papers/abundance-or-scarcity/"
    },
    {
      "id": "dashboards-to-decisions",
      "label": "From Dashboards to Decisions",
      "kind": "paper",
      "summary": "Most analytics stacks do not drive action. The fix is not a better dashboard.",
      "href": "https://jakeherridge.com/papers/from-dashboards-to-decisions/"
    },
    {
      "id": "boy-sword",
      "label": "The Boy and the Sword",
      "kind": "creative",
      "summary": "A story about a boy, a lost magic sword, and learning to fry your own egg.",
      "href": "https://jakeherridge.com/stories/the-boy-and-the-sword/"
    },
    {
      "id": "fall-morning",
      "label": "A Fall Morning",
      "kind": "creative",
      "summary": "A haiku from a morning walk.",
      "href": "https://jakeherridge.com/stories/a-fall-morning/"
    },
    {
      "id": "gators",
      "label": "Glitchy Gators",
      "kind": "creative",
      "summary": "Ten thousand generative gators built from three hundred hand made attributes.",
      "href": "https://jakeherridge.com/collection/#gators"
    },
    {
      "id": "keycaps",
      "label": "Tiny Keycaps",
      "kind": "creative",
      "summary": "Keycaps sculpted, molded, and memorialized in resin.",
      "href": "https://jakeherridge.com/collection/#keycaps"
    },
    {
      "id": "eagle-sword",
      "label": "Ornate Eagle Sword",
      "kind": "creative",
      "summary": "A pencil sketch where American and Japanese design meet.",
      "href": "https://jakeherridge.com/collection/#eagle-sword"
    },
    {
      "id": "curiosity",
      "label": "Curiosity compounds",
      "kind": "value",
      "summary": "Follow the pull, take it apart, keep what it teaches you."
    },
    {
      "id": "moments",
      "label": "Moments matter",
      "kind": "value",
      "summary": "Time comes in small portions. Spend them on purpose."
    },
    {
      "id": "why-first",
      "label": "Why before how",
      "kind": "value",
      "summary": "If I cannot say why a thing should exist, I do not build it."
    },
    {
      "id": "infinite-game",
      "label": "The infinite game",
      "kind": "value",
      "summary": "Play to keep playing. There is no finish line worth quitting for."
    },
    {
      "id": "honest-flops",
      "label": "Honest flops",
      "kind": "value",
      "summary": "Shipped and shelved sit in the same collection. Both count."
    },
    {
      "id": "boring-work",
      "label": "People over busywork",
      "kind": "value",
      "summary": "Get the boring work off people so they can do the human part."
    },
    {
      "id": "frankl",
      "label": "Viktor Frankl",
      "kind": "influence",
      "summary": "A why that can carry any how."
    },
    {
      "id": "fadell",
      "label": "Tony Fadell",
      "kind": "influence",
      "summary": "Make the painkiller, not the vitamin."
    },
    {
      "id": "carse",
      "label": "James Carse",
      "kind": "influence",
      "summary": "Finite games end. Infinite games continue."
    },
    {
      "id": "belsky",
      "label": "Scott Belsky",
      "kind": "influence",
      "summary": "The messy middle is the actual job."
    },
    {
      "id": "maltz",
      "label": "Maxwell Maltz",
      "kind": "influence",
      "summary": "The story you tell about yourself can be rewritten."
    },
    {
      "id": "epstein",
      "label": "David Epstein",
      "kind": "influence",
      "summary": "Range beats a head start."
    },
    {
      "id": "karpathy",
      "label": "Andrej Karpathy",
      "kind": "influence",
      "summary": "A clever file structure beats a retrieval pipeline."
    },
    {
      "id": "leopold",
      "label": "Aldo Leopold",
      "kind": "influence",
      "summary": "Look closely at the land. Keep a journal. PocketWild's narrator is named for him."
    },
    {
      "id": "bentonville",
      "label": "Bentonville, AR",
      "kind": "life",
      "summary": "Home. Trails out the back door."
    },
    {
      "id": "family",
      "label": "The family",
      "kind": "life",
      "summary": "A wife, four kids, and the reason for all of it."
    }
  ],
  "edges": [
    {
      "from": "jake",
      "to": "pocketwild",
      "rel": "made"
    },
    {
      "from": "jake",
      "to": "synapse",
      "rel": "made"
    },
    {
      "from": "jake",
      "to": "synapse-capture",
      "rel": "made"
    },
    {
      "from": "jake",
      "to": "apd",
      "rel": "made"
    },
    {
      "from": "jake",
      "to": "kitchen-happy",
      "rel": "made"
    },
    {
      "from": "jake",
      "to": "making-moves",
      "rel": "made"
    },
    {
      "from": "jake",
      "to": "ai-hub",
      "rel": "made"
    },
    {
      "from": "jake",
      "to": "perf-reviews",
      "rel": "made"
    },
    {
      "from": "jake",
      "to": "threed",
      "rel": "made"
    },
    {
      "from": "jake",
      "to": "wardrobe",
      "rel": "made"
    },
    {
      "from": "jake",
      "to": "occ-codes",
      "rel": "made"
    },
    {
      "from": "jake",
      "to": "gators",
      "rel": "made"
    },
    {
      "from": "jake",
      "to": "keycaps",
      "rel": "made"
    },
    {
      "from": "jake",
      "to": "eagle-sword",
      "rel": "made"
    },
    {
      "from": "jake",
      "to": "compute-then-narrate",
      "rel": "wrote"
    },
    {
      "from": "jake",
      "to": "abundance-or-scarcity",
      "rel": "wrote"
    },
    {
      "from": "jake",
      "to": "dashboards-to-decisions",
      "rel": "wrote"
    },
    {
      "from": "jake",
      "to": "boy-sword",
      "rel": "wrote"
    },
    {
      "from": "jake",
      "to": "fall-morning",
      "rel": "wrote"
    },
    {
      "from": "frankl",
      "to": "why-first",
      "rel": "shaped"
    },
    {
      "from": "fadell",
      "to": "why-first",
      "rel": "shaped"
    },
    {
      "from": "maltz",
      "to": "why-first",
      "rel": "shaped"
    },
    {
      "from": "carse",
      "to": "infinite-game",
      "rel": "shaped"
    },
    {
      "from": "belsky",
      "to": "infinite-game",
      "rel": "shaped"
    },
    {
      "from": "epstein",
      "to": "curiosity",
      "rel": "shaped"
    },
    {
      "from": "karpathy",
      "to": "synapse",
      "rel": "shaped"
    },
    {
      "from": "leopold",
      "to": "pocketwild",
      "rel": "shaped"
    },
    {
      "from": "family",
      "to": "pocketwild",
      "rel": "shaped"
    },
    {
      "from": "family",
      "to": "kitchen-happy",
      "rel": "shaped"
    },
    {
      "from": "family",
      "to": "bentonville",
      "rel": "related"
    },
    {
      "from": "compute-then-narrate",
      "to": "synapse",
      "rel": "shaped"
    },
    {
      "from": "synapse-capture",
      "to": "synapse",
      "rel": "part_of"
    },
    {
      "from": "dashboards-to-decisions",
      "to": "apd",
      "rel": "related"
    },
    {
      "from": "abundance-or-scarcity",
      "to": "boring-work",
      "rel": "related"
    },
    {
      "from": "occ-codes",
      "to": "compute-then-narrate",
      "rel": "related"
    },
    {
      "from": "threed",
      "to": "why-first",
      "rel": "led_to"
    },
    {
      "from": "wardrobe",
      "to": "why-first",
      "rel": "led_to"
    },
    {
      "from": "boring-work",
      "to": "ai-hub",
      "rel": "shaped"
    },
    {
      "from": "boring-work",
      "to": "perf-reviews",
      "rel": "shaped"
    },
    {
      "from": "boy-sword",
      "to": "curiosity",
      "rel": "related"
    },
    {
      "from": "gators",
      "to": "pocketwild",
      "rel": "related"
    },
    {
      "from": "moments",
      "to": "fall-morning",
      "rel": "shaped"
    },
    {
      "from": "infinite-game",
      "to": "honest-flops",
      "rel": "related"
    }
  ]
}