{
  "title": "Tutorial Driven Development with Rob Cameron",
  "slug": "tutorial-driven-development-rob-cameron",
  "collection": "podcasts",
  "contentType": "Podcast",
  "description": "Rob Cameron discusses building RedwoodJS's tutorial, his programming journey from BASIC to Rails, and how tutorial-driven development shapes framework design",
  "summary": "Rob Cameron discusses building RedwoodJS's tutorial, his programming journey from BASIC to Rails, and how tutorial-driven development shapes framework design",
  "author": {
    "name": "Anthony Campolo"
  },
  "source": {
    "channel": "FSJam Podcast",
    "channelUrl": "https://fsjam.org",
    "originalUrl": "https://audio.transistor.fm/m/shows/15767/dc155a64a796fe2ac629527eb1359852.mp3"
  },
  "publishedAt": "2021-03-25T00:00:00.000Z",
  "updatedAt": null,
  "freshness": {
    "label": "Published",
    "value": "2021-03-25T00:00:00.000Z"
  },
  "urls": {
    "html": "https://ajcwebdev.com/podcasts/tutorial-driven-development-rob-cameron/",
    "markdown": "https://ajcwebdev.com/podcasts/tutorial-driven-development-rob-cameron/index.md",
    "json": "https://ajcwebdev.com/podcasts/tutorial-driven-development-rob-cameron/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-00-meet-rob-cameron-and-the-road-to-redwoodjs",
      "text": "00:00:00 - Meet Rob Cameron and the Road to RedwoodJS"
    },
    {
      "depth": 3,
      "id": "00-02-42-from-basic-on-a-trs-80-to-html-fan-pages",
      "text": "00:02:42 - From BASIC on a TRS-80 to HTML Fan Pages"
    },
    {
      "depth": 3,
      "id": "00-06-14-coldfusion-s-legacy-and-the-path-to-ruby-on-rails",
      "text": "00:06:14 - ColdFusion's Legacy and the Path to Ruby on Rails"
    },
    {
      "depth": 3,
      "id": "00-09-27-the-redwoodjs-tutorial-parts-one-and-two",
      "text": "00:09:27 - The RedwoodJS Tutorial: Parts One and Two"
    },
    {
      "depth": 3,
      "id": "00-14-17-testing-culture-in-javascript-vs-ruby",
      "text": "00:14:17 - Testing Culture in JavaScript vs. Ruby"
    },
    {
      "depth": 3,
      "id": "00-21-14-future-tutorial-ideas-and-choose-your-own-adventure",
      "text": "00:21:14 - Future Tutorial Ideas and Choose Your Own Adventure"
    },
    {
      "depth": 3,
      "id": "00-24-39-the-art-of-teaching-and-beginner-s-mind",
      "text": "00:24:39 - The Art of Teaching and Beginner's Mind"
    },
    {
      "depth": 3,
      "id": "00-27-56-testing-deep-dive-mocking-and-its-trade-offs",
      "text": "00:27:56 - Testing Deep Dive: Mocking and Its Trade-offs"
    },
    {
      "depth": 3,
      "id": "00-36-15-data-migrations-and-the-prisma-relationship",
      "text": "00:36:15 - Data Migrations and the Prisma Relationship"
    },
    {
      "depth": 3,
      "id": "00-39-34-repeater-dev-background-jobs-for-the-jamstack",
      "text": "00:39:34 - Repeater.dev: Background Jobs for the Jamstack"
    },
    {
      "depth": 3,
      "id": "00-45-20-redwood-1-0-pre-rendering-and-closing-thoughts",
      "text": "00:45:20 - Redwood 1.0, Pre-rendering, and Closing Thoughts"
    },
    {
      "depth": 2,
      "id": "resources-and-links",
      "text": "Resources and Links"
    },
    {
      "depth": 2,
      "id": "transcript",
      "text": "Transcript"
    }
  ],
  "tags": [
    "web",
    "rails",
    "redwoodjs",
    "testing"
  ],
  "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/podcasts/tutorial-driven-development-rob-cameron/",
      "method": "GET",
      "accept": "text/html"
    },
    {
      "action": "get_markdown_twin",
      "url": "https://ajcwebdev.com/podcasts/tutorial-driven-development-rob-cameron/index.md",
      "method": "GET",
      "accept": "text/markdown"
    },
    {
      "action": "get_json_twin",
      "url": "https://ajcwebdev.com/podcasts/tutorial-driven-development-rob-cameron/index.json",
      "method": "GET",
      "accept": "application/json"
    }
  ]
}