{
  "title": "Barnum with Robert Balicki",
  "slug": "barnum-with-robert-balicki",
  "collection": "videos",
  "contentType": "Video",
  "description": "Robert Balicki explains Barnum’s reliable AI workflows and Isograph’s approach to composing GraphQL data, UI components, and efficient rendering.",
  "summary": "Robert Balicki explains Barnum’s reliable AI workflows and Isograph’s approach to composing GraphQL data, UI components, and efficient rendering.",
  "author": {
    "name": "Anthony Campolo"
  },
  "source": {
    "channel": "Anthony Campolo",
    "channelUrl": "https://www.youtube.com/channel/UCpdzti0GURPfMjKzYK5FVSA",
    "originalUrl": "https://www.youtube.com/watch?v=XOKqH0kne_M"
  },
  "publishedAt": "2026-06-30T00:00:00.000Z",
  "updatedAt": null,
  "freshness": {
    "label": "Published",
    "value": "2026-06-30T00:00:00.000Z"
  },
  "urls": {
    "html": "https://ajcwebdev.com/videos/barnum-with-robert-balicki/",
    "markdown": "https://ajcwebdev.com/videos/barnum-with-robert-balicki/index.md",
    "json": "https://ajcwebdev.com/videos/barnum-with-robert-balicki/index.json"
  },
  "headings": [
    {
      "depth": 2,
      "id": "episode-description",
      "text": "Episode Description"
    },
    {
      "depth": 2,
      "id": "episode-summary",
      "text": "Episode Summary"
    },
    {
      "depth": 2,
      "id": "speakers",
      "text": "Speakers"
    },
    {
      "depth": 2,
      "id": "chapters",
      "text": "Chapters"
    },
    {
      "depth": 3,
      "id": "00-00-03-robert-balicki-and-graphql-migration-at-pinterest",
      "text": "00:00:03 - Robert Balicki and GraphQL Migration at Pinterest"
    },
    {
      "depth": 3,
      "id": "00-02-44-from-statistics-to-workplace-automation",
      "text": "00:02:44 - From Statistics to Workplace Automation"
    },
    {
      "depth": 3,
      "id": "00-05-41-rust-nyc-and-finding-a-team-at-meta",
      "text": "00:05:41 - Rust NYC and Finding a Team at Meta"
    },
    {
      "depth": 3,
      "id": "00-09-34-learning-relay-and-developing-as-a-speaker",
      "text": "00:09:34 - Learning Relay and Developing as a Speaker"
    },
    {
      "depth": 3,
      "id": "00-13-27-why-conference-talks-are-valuable-artifacts",
      "text": "00:13:27 - Why Conference Talks Are Valuable Artifacts"
    },
    {
      "depth": 3,
      "id": "00-17-42-a-broken-wrist-accelerates-ai-adoption",
      "text": "00:17:42 - A Broken Wrist Accelerates AI Adoption"
    },
    {
      "depth": 3,
      "id": "00-20-19-how-barnum-evolved-from-a-refactoring-pipeline",
      "text": "00:20:19 - How Barnum Evolved from a Refactoring Pipeline"
    },
    {
      "depth": 3,
      "id": "00-25-30-code-mode-and-programmatic-tool-orchestration",
      "text": "00:25:30 - Code Mode and Programmatic Tool Orchestration"
    },
    {
      "depth": 3,
      "id": "00-30-27-removing-humans-from-well-defined-workflows",
      "text": "00:30:27 - Removing Humans from Well-Defined Workflows"
    },
    {
      "depth": 3,
      "id": "00-32-24-why-barnum-uses-a-typescript-dsl",
      "text": "00:32:24 - Why Barnum Uses a TypeScript DSL"
    },
    {
      "depth": 3,
      "id": "00-37-05-generating-refactor-pull-requests-at-scale",
      "text": "00:37:05 - Generating Refactor Pull Requests at Scale"
    },
    {
      "depth": 3,
      "id": "00-41-09-why-hundreds-of-refactors-can-be-useful",
      "text": "00:41:09 - Why Hundreds of Refactors Can Be Useful"
    },
    {
      "depth": 3,
      "id": "00-44-55-barnum-programs-handlers-and-parallel-execution",
      "text": "00:44:55 - Barnum Programs, Handlers, and Parallel Execution"
    },
    {
      "depth": 3,
      "id": "00-48-23-running-the-extraction-and-implementation-pipeline",
      "text": "00:48:23 - Running the Extraction and Implementation Pipeline"
    },
    {
      "depth": 3,
      "id": "00-53-13-queues-recursion-and-explicit-loops",
      "text": "00:53:13 - Queues, Recursion, and Explicit Loops"
    },
    {
      "depth": 3,
      "id": "00-57-38-structured-refactor-discovery-across-a-repository",
      "text": "00:57:38 - Structured Refactor Discovery Across a Repository"
    },
    {
      "depth": 3,
      "id": "01-02-08-detailed-migration-rules-and-smaller-agent-contexts",
      "text": "01:02:08 - Detailed Migration Rules and Smaller Agent Contexts"
    },
    {
      "depth": 3,
      "id": "01-06-35-keeping-agents-narrow-and-babysitting-pull-requests",
      "text": "01:06:35 - Keeping Agents Narrow and Babysitting Pull Requests"
    },
    {
      "depth": 3,
      "id": "01-11-32-deterministic-outer-loops-and-limited-retries",
      "text": "01:11:32 - Deterministic Outer Loops and Limited Retries"
    },
    {
      "depth": 3,
      "id": "01-16-24-concurrency-worktrees-and-resource-limits",
      "text": "01:16:24 - Concurrency, Worktrees, and Resource Limits"
    },
    {
      "depth": 3,
      "id": "01-21-43-portability-and-barnum-s-resumability-roadmap",
      "text": "01:21:43 - Portability and Barnum’s Resumability Roadmap"
    },
    {
      "depth": 3,
      "id": "01-26-33-human-approval-isolated-handlers-and-multiple-runtimes",
      "text": "01:26:33 - Human Approval, Isolated Handlers, and Multiple Runtimes"
    },
    {
      "depth": 3,
      "id": "01-31-01-why-an-ast-and-rust-runtime-sit-in-the-middle",
      "text": "01:31:01 - Why an AST and Rust Runtime Sit in the Middle"
    },
    {
      "depth": 3,
      "id": "01-36-46-graphql-composition-and-local-reasoning",
      "text": "01:36:46 - GraphQL Composition and Local Reasoning"
    },
    {
      "depth": 3,
      "id": "01-42-29-isograph-associates-components-with-data-at-build-time",
      "text": "01:42:29 - Isograph Associates Components with Data at Build Time"
    },
    {
      "depth": 3,
      "id": "01-47-44-generated-queries-and-coordinated-lazy-loading",
      "text": "01:47:44 - Generated Queries and Coordinated Lazy Loading"
    },
    {
      "depth": 3,
      "id": "01-52-52-ui-specific-fields-without-polluting-the-global-schema",
      "text": "01:52:52 - UI-Specific Fields Without Polluting the Global Schema"
    },
    {
      "depth": 3,
      "id": "01-57-26-moving-isograph-computation-to-the-server",
      "text": "01:57:26 - Moving Isograph Computation to the Server"
    },
    {
      "depth": 3,
      "id": "02-02-19-a-lightweight-scanner-with-a-real-build-step",
      "text": "02:02:19 - A Lightweight Scanner with a Real Build Step"
    },
    {
      "depth": 3,
      "id": "02-07-51-persisted-operations-and-the-normalized-store",
      "text": "02:07:51 - Persisted Operations and the Normalized Store"
    },
    {
      "depth": 3,
      "id": "02-13-38-minimal-recalculation-and-solidjs-comparisons",
      "text": "02:13:38 - Minimal Recalculation and SolidJS Comparisons"
    },
    {
      "depth": 3,
      "id": "02-18-10-build-time-memoization-and-component-boundaries",
      "text": "02:18:10 - Build-Time Memoization and Component Boundaries"
    },
    {
      "depth": 3,
      "id": "02-23-42-pet-demo-final-guidance-and-total-duration",
      "text": "02:23:42 - Pet Demo, Final Guidance, and Total Duration"
    },
    {
      "depth": 2,
      "id": "transcript",
      "text": "Transcript"
    }
  ],
  "tags": [
    "ai",
    "graphql",
    "typescript"
  ],
  "discovery": {
    "apiIndex": "https://ajcwebdev.com/api/index.json",
    "llmsTxt": "https://ajcwebdev.com/llms.txt",
    "llmsFullTxt": "https://ajcwebdev.com/llms-full.txt",
    "sitemapMd": "https://ajcwebdev.com/sitemap.md",
    "sitemapXml": "https://ajcwebdev.com/sitemap.xml"
  },
  "nextActions": [
    {
      "action": "open_html",
      "url": "https://ajcwebdev.com/videos/barnum-with-robert-balicki/",
      "method": "GET",
      "accept": "text/html"
    },
    {
      "action": "get_markdown_twin",
      "url": "https://ajcwebdev.com/videos/barnum-with-robert-balicki/index.md",
      "method": "GET",
      "accept": "text/markdown"
    },
    {
      "action": "get_json_twin",
      "url": "https://ajcwebdev.com/videos/barnum-with-robert-balicki/index.json",
      "method": "GET",
      "accept": "application/json"
    }
  ]
}