{
  "articles": [
    {
      "slug": "why-compression-should-be-part-of-your-agent-harness",
      "title": "Why compression should be part of your agent harness",
      "excerpt": "How you can use deterministic filtering, grouping, and formatting to reduce agent context, then use semantic compression and prompt rewrites separately. Practical examples from RTK, Caveman, and Ponytail.",
      "formattedDate": "October 21, 2026",
      "date": "2026-10-21T09:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/why-compression-should-be-part-of-your-agent-harness/",
      "markdownUrl": "/blog/why-compression-should-be-part-of-your-agent-harness/index.md"
    },
    {
      "slug": "tool-calling-is-broken-without-mcp-server-composition",
      "title": "Tool calling is broken without MCP Server Composition",
      "excerpt": "Most agents fail not at reasoning, but at picking and using the right tools. This post explains how Model Context Protocol (MCP) server composition fixes that with four practical patterns.",
      "formattedDate": "December 1, 2025",
      "date": "2025-12-01T09:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/tool-calling-is-broken-without-mcp-server-composition/",
      "markdownUrl": "/blog/tool-calling-is-broken-without-mcp-server-composition/index.md"
    },
    {
      "slug": "stop-converting-openapi-specs-mcp-servers",
      "title": "Stop Converting OpenAPI Specs Into MCP Servers",
      "excerpt": "Converting your existing OpenAPI specification into an MCP Server ",
      "formattedDate": "September 12, 2025",
      "date": "2025-09-12T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/stop-converting-openapi-specs-mcp-servers/",
      "markdownUrl": "/blog/stop-converting-openapi-specs-mcp-servers/index.md"
    },
    {
      "slug": "your-llm-does-not-care-about-mcp",
      "title": "An LLM does not need to understand MCP",
      "excerpt": "Model Context Protocol (MCP) has became the standard for tool calling when building agents, but contrary to popular belief your LLM does not need to understand MCP.",
      "formattedDate": "August 7, 2025",
      "date": "2025-08-07T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/your-llm-does-not-care-about-mcp/",
      "markdownUrl": "/blog/your-llm-does-not-care-about-mcp/index.md"
    },
    {
      "slug": "build-test-mcp-server-typescript-mcp-inspector",
      "title": "Build & Test a Model Context Protocol (MCP) Server with TypeScript and MCP Inspector",
      "excerpt": "In this tutorial, we’ll show you how to build and test a Model Context Protocol (MCP) server using TypeScript, with the help of LLMs and the MCP Inspector.",
      "formattedDate": "June 14, 2025",
      "date": "2025-06-14T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/build-test-mcp-server-typescript-mcp-inspector/",
      "markdownUrl": "/blog/build-test-mcp-server-typescript-mcp-inspector/index.md"
    },
    {
      "slug": "build-your-first-mcp-server-with-typescript-in-under-10-minutes",
      "title": "Build Your First MCP Server with TypeScript",
      "excerpt": "Learn how to set up your first MCP server with TypeScript. This step-by-step guide walks you through the basics of the Model Context Protocol and how to connect AI agents to your tools and data.",
      "formattedDate": "December 12, 2024",
      "date": "2024-12-12T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/build-your-first-mcp-server-with-typescript-in-under-10-minutes/",
      "markdownUrl": "/blog/build-your-first-mcp-server-with-typescript-in-under-10-minutes/index.md"
    },
    {
      "slug": "build-ai-applications-langchain-javascript-react",
      "title": "Build AI Applications With LangChain, JavaScript, and React",
      "excerpt": "Coding tutorial showing how to use LangChainJS to build AI applications with JavaScript and React. We code a ChatGPT clone from scratch with Vite and OpenAI models.",
      "formattedDate": "February 19, 2024",
      "date": "2024-02-19T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/build-ai-applications-langchain-javascript-react/",
      "markdownUrl": "/blog/build-ai-applications-langchain-javascript-react/index.md"
    },
    {
      "slug": "building-project-management-board-trello-react-vitejs-typescript-tailwind",
      "title": "Building a Project Management Board with React, TypeScript and Tailwind CSS",
      "excerpt": "Build a Trello-style project board with React, TypeScript, Vite, and Tailwind CSS, including components, state, and drag-and-drop interactions.",
      "formattedDate": "December 14, 2023",
      "date": "2023-12-14T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/building-project-management-board-trello-react-vitejs-typescript-tailwind/",
      "markdownUrl": "/blog/building-project-management-board-trello-react-vitejs-typescript-tailwind/index.md"
    },
    {
      "slug": "do-need-graphql-now-react-server-components",
      "title": "Do I Need GraphQL Now that We Have React Server Components?",
      "excerpt": "GraphQL and React Server Components have been hot topics in the React community, especially in recent months. With the release of Next.js for the theme, the debate around the need for GraphQL has resurfaced. Developers can now query databases directly from their React components, which raises the question: do we still need GraphQL?",
      "formattedDate": "November 1, 2023",
      "date": "2023-11-01T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/do-need-graphql-now-react-server-components/",
      "markdownUrl": "/blog/do-need-graphql-now-react-server-components/index.md"
    },
    {
      "slug": "vite-better-create-react-app-alternative",
      "title": "Vite is the better Create React App alternative",
      "excerpt": "Explore Vite as an alternative to Create React App, with a look at development speed, configuration, and setting up a React project.",
      "formattedDate": "August 31, 2023",
      "date": "2023-08-31T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/vite-better-create-react-app-alternative/",
      "markdownUrl": "/blog/vite-better-create-react-app-alternative/index.md"
    },
    {
      "slug": "graphql-ide-graphiql-vs-altair",
      "title": "GraphQL IDEs: GraphiQL vs Altair",
      "excerpt": "Compare GraphiQL and Altair for exploring and testing GraphQL APIs, including documentation, query history, subscriptions, and file uploads.",
      "formattedDate": "May 25, 2023",
      "date": "2023-05-25T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/graphql-ide-graphiql-vs-altair/",
      "markdownUrl": "/blog/graphql-ide-graphiql-vs-altair/index.md"
    },
    {
      "slug": "react-router-6-basics",
      "title": "React Router 6 Basics",
      "excerpt": "React Router is still the most popular routing library for React. In this blog post, we will explore the basics of React Router 6, including how to bootstrap React Router 6, create layouts and pass arguments to routes.",
      "formattedDate": "February 18, 2023",
      "date": "2023-02-18T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/react-router-6-basics/",
      "markdownUrl": "/blog/react-router-6-basics/index.md"
    },
    {
      "slug": "learn-react-in-five-minutes",
      "title": "Learn React in 5 minutes",
      "excerpt": "Learn the basics of React in five minutes: components, props, one-way data flow, and state, with JavaScript examples and a companion video.",
      "formattedDate": "January 21, 2023",
      "date": "2023-01-21T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/learn-react-in-five-minutes/",
      "markdownUrl": "/blog/learn-react-in-five-minutes/index.md"
    },
    {
      "slug": "bootstrap-easiest-way-to-style-react-apps-2023",
      "title": "Bootstrap Is The Easiest Way To Style React Apps in 2023",
      "excerpt": "Let's learn how to use Bootstrap 5 to style a React application. With Bootstrap you don't have to write any stying rules yourself. Instead you can use classnames to apply styles to HTML elements.",
      "formattedDate": "January 13, 2023",
      "date": "2023-01-13T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/bootstrap-easiest-way-to-style-react-apps-2023/",
      "markdownUrl": "/blog/bootstrap-easiest-way-to-style-react-apps-2023/index.md"
    },
    {
      "slug": "create-react-project-from-scratch-without-framework",
      "title": "Create a React Project From Scratch Without any Framework",
      "excerpt": "This blog post will show you how to create a new single-page React application from scratch with Webpack and Babel, giving you a strong foundation for any project you may undertake before using a framework like Next.js or Remix.",
      "formattedDate": "January 6, 2023",
      "date": "2023-01-06T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/create-react-project-from-scratch-without-framework/",
      "markdownUrl": "/blog/create-react-project-from-scratch-without-framework/index.md"
    },
    {
      "slug": "why-developers-love-graphql",
      "title": "Why Do Developers Love GraphQL?",
      "excerpt": "GraphQL has changed how developers interact with data in their applications and has often been called the successor to REST. But why do developers love GraphQL so much? In this blog post, I will give you three reasons why!",
      "formattedDate": "December 17, 2022",
      "date": "2022-12-17T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/why-developers-love-graphql/",
      "markdownUrl": "/blog/why-developers-love-graphql/index.md"
    },
    {
      "slug": "exploring-graphiql-2-updates-and-new-features",
      "title": "Exploring GraphiQL 2 Updates and New Features",
      "excerpt": "GraphiQL is a popular tool for GraphQL developers. But for many years, GraphiQL has not had a UI update. Since a few months, GraphiQL 2 is here and in this video I will explore the new features of GraphiQL 2 and show you how to use them.",
      "formattedDate": "December 12, 2022",
      "date": "2022-12-12T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/exploring-graphiql-2-updates-and-new-features/",
      "markdownUrl": "/blog/exploring-graphiql-2-updates-and-new-features/index.md"
    },
    {
      "slug": "zero-config-typescript-applications-nextjs",
      "title": "Zero Config TypeScript Applications with Next.js",
      "excerpt": "The simplest way to set up a React TypeScript project from scratch is by using Next.js. In this blog post we will explore how to use Next.js for your next project and how you have to write zero configuration to use it with TypeScript.",
      "formattedDate": "December 6, 2022",
      "date": "2022-12-06T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/zero-config-typescript-applications-nextjs/",
      "markdownUrl": "/blog/zero-config-typescript-applications-nextjs/index.md"
    },
    {
      "slug": "apollo-server-v4-breaking-changes",
      "title": "Apollo Server v4 Breaking Changes. Time to move away?",
      "excerpt": "Apollo Server has been the go-to JavaScript library for building GraphQL servers. Many breaking changes were announced for the latest Apollo Server v4, along with an EOL for Apollo Server v2 and v3 as early as October 2023. In this article, I will explain the breaking changes and why it might be time to move away from Apollo Server.",
      "formattedDate": "December 2, 2022",
      "date": "2022-12-02T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/apollo-server-v4-breaking-changes/",
      "markdownUrl": "/blog/apollo-server-v4-breaking-changes/index.md"
    },
    {
      "slug": "compare-graphql-and-trpc",
      "title": "Can you compare GraphQL and tRPC?",
      "excerpt": "There have been many discussions on Twitter around \"GraphQL versus tRPC\" for building a modern backend for your application. As a developer working with GraphQL in the past years, this triggered me to compare the two and see what they are both excellent at (and what they are not).",
      "formattedDate": "November 28, 2022",
      "date": "2022-11-28T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/compare-graphql-and-trpc/",
      "markdownUrl": "/blog/compare-graphql-and-trpc/index.md"
    },
    {
      "slug": "setting-up-first-react-typescript-project-from-scratch",
      "title": "Setting up Your First React TypeScript Project From Scratch",
      "excerpt": "This post is a complete overview of how to start a React TypeScript project from scratch. It discusses the necessary libraries and considerations for setting up the environment, creating a basic project structure and running the application. ",
      "formattedDate": "November 26, 2022",
      "date": "2022-11-26T00:00:00.000Z",
      "type": "article",
      "url": "https://hackteam.io/blog/setting-up-first-react-typescript-project-from-scratch/",
      "markdownUrl": "/blog/setting-up-first-react-typescript-project-from-scratch/index.md"
    }
  ],
  "speaking": [
    {
      "id": "talk-002",
      "title": "GraphQL Will Do To REST What JSON Did To XML",
      "event": "React Native EU",
      "date": "2018-09-05",
      "year": 2018,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Wroclaw, Poland",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=oYimRomwJYo",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/oYimRomwJYo/hqdefault.jpg"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/react-native-eu-2018-1.jpg",
          "alt": "Roy Derks explaining REST endpoints on stage at React Native EU 2018"
        },
        {
          "url": "/images/speaking/react-native-eu-2018-2.jpg",
          "alt": "Roy Derks presenting to the audience at React Native EU 2018"
        },
        {
          "url": "/images/speaking/react-native-eu-2018-3.jpg",
          "alt": "View from behind Roy Derks at the React Native EU 2018 podium"
        },
        {
          "url": "/images/speaking/react-native-eu-2018-4.jpg",
          "alt": "Wide view of Roy Derks’ GraphQL presentation at React Native EU 2018"
        },
        {
          "url": "/images/speaking/react-native-eu-2018-5.jpg",
          "alt": "The auditorium and audience at React Native EU 2018 in Wroclaw"
        }
      ],
      "source": {
        "row": 3,
        "count": 2,
        "date": "09-05-2018"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-003",
      "title": "Using ReasonML in Your Next React Project",
      "event": "React Amsterdam",
      "date": "2018-10-25",
      "year": 2018,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Amsterdam, The Netherlands",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=x1UO-_a8GL0",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/x1UO-_a8GL0/hqdefault.jpg"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/react-amsterdam-reasonml-2018-1.jpg",
          "alt": "Roy Derks presenting Using ReasonML in Your Next React Project at React Amsterdam on October 25, 2018"
        },
        {
          "url": "/images/speaking/react-amsterdam-reasonml-2018-2.jpg",
          "alt": "Roy Derks introducing ReasonML on stage at React Amsterdam in 2018"
        }
      ],
      "source": {
        "row": 4,
        "count": 3,
        "date": "10-25-2018"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-004",
      "title": "Boilerplates Are The New Copy-Paste",
      "event": "dotJS",
      "date": "2018-11-09",
      "year": 2018,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Paris, France",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=ZGxoT37eees",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/ZGxoT37eees/hqdefault.jpg"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/dotjs-2018-2.jpg",
          "alt": "Roy Derks presenting behind the dotJS podium at dotJS 2018"
        },
        {
          "url": "/images/speaking/dotjs-2018-1.jpg",
          "alt": "Roy Derks speaking on stage at dotJS 2018 in Paris"
        },
        {
          "url": "/images/speaking/dotjs-2018-3.jpg",
          "alt": "Roy Derks presenting Boilerplates Are The New Copy-Paste with the dotJS audience alongside the stage"
        },
        {
          "url": "/images/speaking/dotjs-2018-4.jpg",
          "alt": "Wide view of Roy Derks presenting on the dotJS 2018 stage"
        },
        {
          "url": "/images/speaking/dotjs-2018-5.jpg",
          "alt": "Close-up of Roy Derks wearing a headset microphone at dotJS 2018"
        }
      ],
      "source": {
        "row": 5,
        "count": 4,
        "date": "11-09-2018"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-005",
      "title": "GraphQL Will Do To REST What JSON Did To XML",
      "event": "NDC London",
      "date": "2019-01-28",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "London, United Kingdom",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=Pmm12LtcPWs",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/Pmm12LtcPWs/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 6,
        "count": 5,
        "date": "01-28-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-006",
      "title": "Testing GraphQL In Your JavaScript Application",
      "event": "FOSDEM",
      "date": "2019-02-03",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Brussels, Belgium",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=IJV1IwIejM0",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/IJV1IwIejM0/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 7,
        "count": 6,
        "date": "02-03-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-007",
      "title": "Wrapping and Securing REST APIs with GraphQL",
      "event": "Node.js Edinburgh",
      "date": "2019-02-05",
      "year": 2019,
      "sessionType": "talk",
      "eventType": null,
      "attendance": "in-person",
      "location": "Edinburgh, Scotland",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=9yB40QM9J8o",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/9yB40QM9J8o/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 8,
        "count": 7,
        "date": "02-05-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-008",
      "title": "Using the React Context API With Hooks for Identity Management",
      "event": "React Edinburgh",
      "date": "2019-02-06",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "meetup",
      "attendance": "in-person",
      "location": "Edinburgh, Scotland",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=rkPZYouVif0",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/rkPZYouVif0/hqdefault.jpg"
        },
        {
          "label": "Event community",
          "url": "https://www.meetup.com/react-edinburgh/",
          "type": "event"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/react-edinburgh-february-2019-1.jpg",
          "alt": "Roy Derks speaking at React Edinburgh in February 2019"
        },
        {
          "url": "/images/speaking/react-edinburgh-february-2019-2.jpg",
          "alt": "Roy Derks explaining the React Context API to the React Edinburgh audience"
        },
        {
          "url": "/images/speaking/react-edinburgh-february-2019-3.jpg",
          "alt": "Roy Derks presenting at the podium during React Edinburgh in February 2019"
        },
        {
          "url": "/images/speaking/react-edinburgh-february-2019-4.jpg",
          "alt": "The React Edinburgh audience at CodeBase in February 2019"
        }
      ],
      "source": {
        "row": 9,
        "count": 8,
        "date": "02-06-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-009",
      "title": "GraphQL Will Do To REST What JSON Did To XML",
      "event": "App Dev Con",
      "date": "2019-03-12",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Amsterdam, The Netherlands",
      "links": [
        {
          "label": "Video",
          "url": "https://vimeo.com/338668789",
          "type": "video",
          "thumbnail": "https://i.vimeocdn.com/video/786506528-8fd0b630237ceff83ef5ff6f49e2c09dca93db7ff9634da9fd6b7cbf7de9a00e-d_295x166?region=us"
        },
        {
          "label": "Event recap",
          "url": "https://vimeo.com/330012680#t=1m5s",
          "type": "recap"
        }
      ],
      "images": [],
      "source": {
        "row": 10,
        "count": 9,
        "date": "03-12-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-010",
      "title": "GraphQL Will Do To REST What JSON Did To XML",
      "event": "CodeMotion",
      "date": "2019-03-22",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Rome, Italy",
      "links": [],
      "images": [],
      "source": {
        "row": 11,
        "count": 10,
        "date": "03-22-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-011",
      "title": "GraphQL Will Do To REST What JSON Did To XML",
      "event": "FrontCon",
      "date": "2019-04-04",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Riga, Latvia",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=FsAxgju5QFM",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/FsAxgju5QFM/hqdefault.jpg"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/frontcon-2019-1.jpg",
          "alt": "Roy Derks speaking at FrontCon 2019 in Riga"
        },
        {
          "url": "/images/speaking/frontcon-2019-2.jpg",
          "alt": "Roy Derks presenting GraphQL Will Do To REST What JSON Did To XML at FrontCon 2019"
        },
        {
          "url": "/images/speaking/frontcon-2019-3.jpg",
          "alt": "Roy Derks demonstrating GraphQL at the FrontCon 2019 podium"
        }
      ],
      "source": {
        "row": 12,
        "count": 11,
        "date": "04-04-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-012",
      "title": "Handling Large-Scale State-Management with Context and Hooks",
      "event": "React Conf Armenia",
      "date": "2019-05-25",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Yerevan, Armenia",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=GxjDRjpoMJg",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/GxjDRjpoMJg/hqdefault.jpg"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/react-conf-armenia-2019-1.jpg",
          "alt": "Roy Derks speaking at React Conf Armenia 2019 in Yerevan"
        },
        {
          "url": "/images/speaking/react-conf-armenia-2019-2.jpg",
          "alt": "Roy Derks explaining React state management at React Conf Armenia 2019"
        }
      ],
      "source": {
        "row": 13,
        "count": 12,
        "date": "05-25-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-013",
      "title": "The Next Generation of APIs: GraphQL over REST",
      "event": "mDevCamp",
      "date": "2019-05-31",
      "year": 2019,
      "sessionType": "talk",
      "eventType": null,
      "attendance": "in-person",
      "location": "Prague, Czech Republic",
      "links": [
        {
          "label": "Recording",
          "url": "https://slideslive.com/38916551/the-next-generation-of-apis-graphql-over-rest",
          "type": "video",
          "thumbnail": "https://ma.slideslive.com/library/presentations/38916551/thumbnail/the-next-generation-of-apis-graphql-over-rest_nHkkmt_medium.jpg"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/mdevcamp-2019.jpg",
          "alt": "Roy Derks presenting The Next Generation of APIs: GraphQL over REST at mDevCamp 2019 in Prague"
        }
      ],
      "source": {
        "row": 14,
        "count": 13,
        "date": "05-31-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-014",
      "title": "From REST to GraphQL: Wrapping Existing APIs",
      "event": "JNation",
      "date": "2019-06-04",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Coimbra, Portugal",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=bNhmukWimoU",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/bNhmukWimoU/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 15,
        "count": 14,
        "date": "06-04-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-015",
      "title": "Modern React: Things You Didn't Know Where Possible",
      "event": "WeAreDevelopers World Congress",
      "date": "2019-06-06",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Berlin, Germany",
      "links": [],
      "images": [],
      "source": {
        "row": 16,
        "count": 15,
        "date": "06-06-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-016",
      "title": "Testing GraphQL: From Zero to Hundred Percent",
      "event": "NDC Oslo",
      "date": "2019-06-17",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Oslo, Norway",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=qVyPAU1Y9nk",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/qVyPAU1Y9nk/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 17,
        "count": 16,
        "date": "06-17-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-017",
      "title": "Create Type Safe Web Applications with ReasonML and GraphQL",
      "event": "GraphQL Conf",
      "date": "2019-06-20",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Berlin, Germany",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=6MDZjVOy2zw",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/6MDZjVOy2zw/hqdefault.jpg"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/graphql-conf-2019.jpg",
          "alt": "Roy Derks presenting Create Type Safe Web Applications with ReasonML and GraphQL to the audience at GraphQLConf 2019 in Berlin"
        }
      ],
      "source": {
        "row": 18,
        "count": 17,
        "date": "06-20-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-018",
      "title": "Building GraphQL APIs Without A Server",
      "event": "GraphQL Day",
      "date": "2019-09-06",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Bodensee, Germany",
      "links": [],
      "images": [
        {
          "url": "/images/speaking/graphql-day-bodensee-2019.jpg",
          "alt": "Roy Derks presenting Building GraphQL APIs Without A Server at GraphQL Day Bodensee 2019"
        },
        {
          "url": "/images/speaking/graphql-day-bodensee-2019-1.jpg",
          "alt": "Roy Derks explaining REST APIs to the audience at GraphQL Day Bodensee 2019"
        },
        {
          "url": "/images/speaking/graphql-day-bodensee-2019-2.jpg",
          "alt": "Roy Derks answering questions at GraphQL Day Bodensee 2019"
        },
        {
          "url": "/images/speaking/graphql-day-bodensee-2019-3.jpg",
          "alt": "The audience at GraphQL Day Bodensee 2019"
        }
      ],
      "source": {
        "row": 19,
        "count": 18,
        "date": "09-06-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-019",
      "title": "From REST to GraphQL: Wrapping Existing APIs",
      "event": "JSDayIE",
      "date": "2019-09-20",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Dublin, Ireland",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=0r1GePbPOMM",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/0r1GePbPOMM/hqdefault.jpg"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/jsday-ireland-2019-1.jpg",
          "alt": "Roy Derks presenting From REST to GraphQL: Wrapping Existing APIs at JSDay Ireland 2019"
        },
        {
          "url": "/images/speaking/jsday-ireland-2019-2.jpg",
          "alt": "Roy Derks presenting a REST API diagram to the audience at JSDay Ireland 2019"
        },
        {
          "url": "/images/speaking/jsday-ireland-2019-3.jpg",
          "alt": "Speakers together on stage at JSDay Ireland 2019 in Dublin"
        }
      ],
      "source": {
        "row": 20,
        "count": 19,
        "date": "09-20-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-020",
      "title": "Open-sourcing JavaScript at the City of Amsterdam",
      "event": "All Things Open",
      "date": "2019-10-13",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Raleigh, NC, USA",
      "links": [
        {
          "label": "Presentation slides (PDF, 70 pages)",
          "url": "/slides/speaking/all-things-open-2019.pdf#view=FitH",
          "type": "slides"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/all-things-open-2019-slides.png",
          "alt": "Title slide of Open-sourcing JavaScript at the City of Amsterdam, All Things Open 2019",
          "href": "/slides/speaking/all-things-open-2019.pdf#view=FitH"
        }
      ],
      "source": {
        "row": 21,
        "count": 20,
        "date": "10-13-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-021",
      "title": "Testing GraphQL in your JavaScript application: From zero To one hundred percent coverage",
      "event": "International JavaScript (IJS) Conference",
      "date": "2019-10-21",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Munich, Germany",
      "links": [],
      "images": [],
      "source": {
        "row": 22,
        "count": 21,
        "date": "10-21-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-022",
      "title": "Web applications of the future with TypeScript and GraphQL",
      "event": "International JavaScript (IJS) Conference",
      "date": "2019-10-21",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Munich, Germany",
      "links": [],
      "images": [],
      "source": {
        "row": 23,
        "count": 22,
        "date": "10-21-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-023",
      "title": "Life after Redux: State in React with Context & Hooks",
      "event": "React Munich",
      "date": "2019-10-23",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "meetup",
      "attendance": "in-person",
      "location": "Munich, Germany",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=W0zeL8E1Dz0",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/W0zeL8E1Dz0/hqdefault.jpg"
        },
        {
          "label": "Event community",
          "url": "https://www.meetup.com/reactmunich/",
          "type": "event"
        }
      ],
      "images": [],
      "source": {
        "row": 24,
        "count": 23,
        "date": "10-23-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-024",
      "title": "GraphQL Will Do To REST What JSON Did To XM",
      "event": "CodeMotion",
      "date": "2019-10-24",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Milan, Italy",
      "links": [],
      "images": [
        {
          "url": "/images/speaking/codemotion-milan-2019.jpg",
          "alt": "Roy Derks speaking on stage at Codemotion Milan 2019"
        },
        {
          "url": "/images/speaking/codemotion-milan-2019-699.jpg",
          "alt": "The conference audience watching Roy Derks present GraphQL at Codemotion Milan 2019"
        },
        {
          "url": "/images/speaking/codemotion-milan-2019-698.jpg",
          "alt": "A view from the back of the room during Roy Derks’ Codemotion Milan 2019 talk"
        },
        {
          "url": "/images/speaking/codemotion-milan-2019-695.jpg",
          "alt": "Roy Derks explaining GraphQL API authentication at Codemotion Milan 2019"
        },
        {
          "url": "/images/speaking/codemotion-milan-2019-694.jpg",
          "alt": "Roy Derks presenting an API diagram to the audience at Codemotion Milan 2019"
        },
        {
          "url": "/images/speaking/codemotion-milan-2019-681.jpg",
          "alt": "Roy Derks addressing the audience from the stage at Codemotion Milan 2019"
        },
        {
          "url": "/images/speaking/codemotion-milan-2019-671.jpg",
          "alt": "Roy Derks speaking behind the Codemotion podium in Milan in 2019"
        }
      ],
      "source": {
        "row": 25,
        "count": 24,
        "date": "10-24-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-025",
      "title": "Web applications of the future with TypeScript and GraphQL",
      "event": "ConfrontJS",
      "date": "2019-12-07",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Warsaw, Poland",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=UPA2ypDYJt4",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/UPA2ypDYJt4/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 26,
        "count": 25,
        "date": "12-07-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-026",
      "title": "Using GraphQL Without A Backend",
      "event": "React Edinburgh",
      "date": "2019-12-20",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "meetup",
      "attendance": "in-person",
      "location": "Edinburgh, Scotland",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=XSZoB8zmEEY",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/XSZoB8zmEEY/hqdefault.jpg"
        },
        {
          "label": "Event community",
          "url": "https://www.meetup.com/react-edinburgh/",
          "type": "event"
        }
      ],
      "images": [],
      "source": {
        "row": 27,
        "count": 26,
        "date": "12-20-2019"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-027",
      "title": "Testing GraphQL",
      "event": "GraphQL Hong Kong",
      "date": "2020-03-21",
      "year": 2020,
      "sessionType": "talk",
      "eventType": "meetup",
      "attendance": "virtual",
      "location": "Online",
      "notes": "Roy confirmed he has not visited Hong Kong; this appearance was virtual. Attendance corrected on October 3, 2026.",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=fb3PwCj0YYA",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/fb3PwCj0YYA/hqdefault.jpg"
        },
        {
          "label": "Event community",
          "url": "https://www.meetup.com/GraphQLHongKong/events/269158848/",
          "type": "event"
        }
      ],
      "images": [],
      "source": {
        "row": 28,
        "count": 27,
        "date": "03-21-2020"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-028",
      "title": "Web applications of the future with TypeScript and GraphQL",
      "event": "ReactEurope Virtual",
      "date": "2020-04-08",
      "year": 2020,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=zmzZwZh77_w",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/zmzZwZh77_w/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 29,
        "count": 28,
        "date": "04-08-2020"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-029",
      "title": "Web applications of the future with TypeScript and GraphQL",
      "event": "ReactADelphia Remote",
      "date": "2020-05-27",
      "year": 2020,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=O7Pzjm_C2qM",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/O7Pzjm_C2qM/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 30,
        "count": 29,
        "date": "05-27-2020"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-030",
      "title": "Web applications of the future with TypeScript and GraphQL",
      "event": "JNation Virtual",
      "date": "2020-06-02",
      "year": 2020,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=x15pav5Jmts",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/x15pav5Jmts/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 31,
        "count": 30,
        "date": "06-02-2020"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-031",
      "title": "GraphQL for Cities (and other public organizations)",
      "event": "API Days Live",
      "date": "2020-06-30",
      "year": 2020,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=SYDTkVi6B24",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/SYDTkVi6B24/hqdefault.jpg"
        },
        {
          "label": "Presentation slides (PDF, 48 pages)",
          "url": "/slides/speaking/apidays-interface-2020.pdf#view=FitH",
          "type": "slides"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/apidays-interface-2020-slides.png",
          "alt": "Title slide of GraphQL for Cities (and other public organizations), apidays Interface 2020",
          "href": "/slides/speaking/apidays-interface-2020.pdf#view=FitH"
        }
      ],
      "source": {
        "row": 32,
        "count": 31,
        "date": "06-30-2020 to 07-01-2020"
      },
      "dateEnd": "2020-07-01",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-032",
      "title": "Web applications of the future with TypeScript and GraphQL",
      "event": "Frontcon",
      "date": "2020-08-12",
      "year": 2020,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [],
      "images": [],
      "source": {
        "row": 33,
        "count": 32,
        "date": "08-12-2020 to 08-14-2020"
      },
      "dateEnd": "2020-08-14",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-033",
      "title": "React Superpowers with TypeScript and GraphQL",
      "event": "React Live Virtual",
      "date": "2020-09-11",
      "year": 2020,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=x7Tip76pX7g",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/x7Tip76pX7g/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 34,
        "count": 33,
        "date": "09-11-2020"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-034",
      "title": "Let’s Talk GraphQL With Your Services",
      "event": "GraphQL Galaxy",
      "date": "2020-11-02",
      "year": 2020,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=DszRpn5dQq0",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/DszRpn5dQq0/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 35,
        "count": 34,
        "date": "11-02-2020 to 11-04-2020"
      },
      "dateEnd": "2020-11-04",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-035",
      "title": "GraphQL for a better JavaScript Developer Experience (DX)",
      "event": "Dev Con 2020",
      "date": "2020-11-10",
      "year": 2020,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [],
      "images": [],
      "source": {
        "row": 36,
        "count": 35,
        "date": "11-10-2020"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-036",
      "title": "React Superpowers with TypeScript and GraphQL",
      "event": "JSWorld Conference",
      "date": "2021-02-22",
      "year": 2021,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=9qpeHCJaeb8",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/9qpeHCJaeb8/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 37,
        "count": 36,
        "date": "02-22-2021 to 02-27-2021"
      },
      "dateEnd": "2021-02-27",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-037",
      "title": "Server-Side Authentication in GraphQL",
      "event": "GraphQL Asia",
      "date": "2021-02-24",
      "year": 2021,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [],
      "images": [],
      "source": {
        "row": 38,
        "count": 37,
        "date": "02-24-2021 to 02-25-2021"
      },
      "dateEnd": "2021-02-25",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-038",
      "title": "From REST to GraphQL: Migration Plans That Actually Work",
      "event": "API Con The Hague",
      "date": "2021-04-12",
      "year": 2021,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [],
      "images": [
        {
          "url": "/images/speaking/api-conference-rest-to-graphql.jpg",
          "alt": "API Conference announcement for Roy Derks’ From REST to GraphQL: Migration Plans That Actually Work session"
        }
      ],
      "source": {
        "row": 39,
        "count": 38,
        "date": "04-12-2021 to 04-14-2021"
      },
      "dateEnd": "2021-04-14",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-039",
      "title": "Enriching Commerce Data In Headless Architectures",
      "event": "Strapi Conf",
      "date": "2021-04-22",
      "year": 2021,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://www.youtube.com/watch?v=sspThwfY5oc",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/sspThwfY5oc/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 40,
        "count": 39,
        "date": "04-22-2021"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-040",
      "title": "How Your Bundle Size Affects The Climate",
      "event": "Tweakers Developers Summit 2021",
      "date": "2021-06-02",
      "year": 2021,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Official session page",
          "url": "https://tweakers.net/partners/devsummit/1444/royderks/",
          "type": "event"
        }
      ],
      "images": [],
      "source": {
        "row": 41,
        "count": 40,
        "date": "06-02-2021 to 06-05-2021"
      },
      "dateEnd": "2021-06-05",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-041",
      "title": "Getting Started With GraphQL",
      "event": "DevBreak",
      "date": "2021-09-08",
      "year": 2021,
      "sessionType": "talk",
      "eventType": null,
      "attendance": "in-person",
      "location": "Paris, France",
      "links": [],
      "images": [],
      "source": {
        "row": 42,
        "count": 41,
        "date": "09-08-2021"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-042",
      "title": "Enriching Data In Headless GraphQL Architectures",
      "event": "GraphQL Conf Virtual",
      "date": "2021-09-29",
      "year": 2021,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=hNNB7eNL-qk",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/hNNB7eNL-qk/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 43,
        "count": 42,
        "date": "09-29-2021"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-043",
      "title": "From REST to GraphQL: Migration Plans That Actually Work",
      "event": "API Con Berlin",
      "date": "2021-10-11",
      "year": 2021,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [],
      "images": [
        {
          "url": "/images/speaking/api-conference-rest-to-graphql.jpg",
          "alt": "API Conference announcement for Roy Derks’ From REST to GraphQL: Migration Plans That Actually Work session"
        }
      ],
      "source": {
        "row": 44,
        "count": 43,
        "date": "10-11-2021 to 10-13-2021"
      },
      "dateEnd": "2021-10-13",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-044",
      "title": "Killing BFFs with GraphQL and Next.js",
      "event": "React Advanced",
      "date": "2021-10-22",
      "year": 2021,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=Gjx5r9smEu4",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/Gjx5r9smEu4/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 45,
        "count": 44,
        "date": "10-22-2021 to 10-25-2021"
      },
      "dateEnd": "2021-10-25",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-045",
      "title": "How Your Bundle Size Affects The Climate",
      "event": "WeAreDevs JS Congress 2021",
      "date": "2021-10-24",
      "year": 2021,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "type": "video",
          "label": "Video",
          "url": "https://www.wearedevelopers.com/en/videos/308/how-your-bundle-size-affects-the-climate",
          "thumbnail": "https://customer-goifxnzhrq3d0d54.cloudflarestream.com/a52727f7b4e448dd9def89e54ed9b5b7/thumbnails/thumbnail.jpg?time=17385ms"
        }
      ],
      "images": [],
      "source": {
        "row": 46,
        "count": 45,
        "date": "10-24-2021"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-046",
      "title": "Why GraphQL Is Perfect For Microservices",
      "event": "VisugXL",
      "date": "2021-10-27",
      "year": 2021,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Brussels, Belgium",
      "links": [],
      "images": [],
      "source": {
        "row": 47,
        "count": 46,
        "date": "10-27-2021"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-047",
      "title": "Web applications of the future with TypeScript and GraphQL",
      "event": "Developers.nl TechNight",
      "date": "2021-11-24",
      "year": 2021,
      "sessionType": "talk",
      "eventType": null,
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=XMcAZhAfdNs",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/XMcAZhAfdNs/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 48,
        "count": 47,
        "date": "11-2021"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-048",
      "title": "Web applications of the future with TypeScript and GraphQL",
      "event": "React India",
      "date": "2021-11-11",
      "year": 2021,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=fhfR8xDQrO0",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/fhfR8xDQrO0/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 49,
        "count": 48,
        "date": "11-11-2021 to 11-12-2021"
      },
      "dateEnd": "2021-11-12",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-049",
      "title": "Why GraphQL is Perfect For Microservices",
      "event": "GraphQL Berlin",
      "date": "2021-11-16",
      "year": 2021,
      "sessionType": "talk",
      "eventType": "meetup",
      "attendance": "in-person",
      "location": "Berlin, Germany",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=DKvhI_pMpO8",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/DKvhI_pMpO8/hqdefault.jpg"
        },
        {
          "label": "Event community",
          "url": "https://www.meetup.com/de-de/graphql-berlin/",
          "type": "event"
        }
      ],
      "images": [],
      "source": {
        "row": 50,
        "count": 49,
        "date": "11-16-2021"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-050",
      "title": "Why GraphQL is Perfect For Microservices",
      "event": "apidays Live Paris",
      "date": "2021-12-07",
      "year": 2021,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=Zk3FnxnJAMY",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/Zk3FnxnJAMY/hqdefault.jpg"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/apidays-live-paris-2021.png",
          "alt": "Roy Derks’ speaker card for apidays Live Paris, December 7–9, 2021"
        }
      ],
      "source": {
        "row": 51,
        "count": 50,
        "date": "12-07-2021 to 12-09-2021"
      },
      "dateEnd": "2021-12-09",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-051",
      "title": "When (Not) To Create A GraphQL Server",
      "event": "GraphQL Galaxy",
      "date": "2021-12-09",
      "year": 2021,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=SIq8g9vMVHc",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/SIq8g9vMVHc/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 52,
        "count": 51,
        "date": "12-09-2021 to 12-10-2021"
      },
      "dateEnd": "2021-12-10",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-052",
      "title": "GraphQL As A Data Layer For Your UI",
      "event": "TheJam.dev",
      "date": "2022-01-26",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=-VtXt1YCsQo",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/-VtXt1YCsQo/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 53,
        "count": 52,
        "date": "01-26-2022 to 01-27-2022"
      },
      "dateEnd": "2022-01-27",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-053",
      "title": "Why GraphQL is Perfect For Microservices",
      "event": "CityJS London",
      "date": "2022-03-25",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "London, United Kingdom",
      "links": [
        {
          "label": "Session recording",
          "url": "https://www.youtube.com/watch?v=OTU2oQPRrcg",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/OTU2oQPRrcg/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 54,
        "count": 53,
        "date": "03-25-2023"
      },
      "notes": "Roy confirmed this appearance was CityJS London 2022; the original workbook year is preserved in source.date.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-054",
      "title": "Kiling BFFs with GraphQL and Next.js",
      "event": "React Conference Live",
      "date": "2022-04-01",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Amsterdam, The Netherlands",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=qejgaQTGE2I",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/qejgaQTGE2I/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 55,
        "count": 54,
        "date": "04-01-2022"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-055",
      "title": "Why GraphQL is Perfect For Microservices",
      "event": "GraphQL Wroclaw",
      "date": "2022-04-04",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "meetup",
      "attendance": "in-person",
      "location": "Wroclaw, Poland",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=HywEHN2RNpI",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/HywEHN2RNpI/hqdefault.jpg"
        },
        {
          "label": "Event community",
          "url": "https://www.meetup.com/graphql-wroclaw/",
          "type": "event"
        }
      ],
      "images": [],
      "source": {
        "row": 56,
        "count": 55,
        "date": "04-04-2022"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-056",
      "title": "Why GraphQL Is Perfect For Node.js Microservices",
      "event": "International JavaScript (IJS) Conference",
      "date": "2022-04-25",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "London, United Kingdom",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=vQOS-834ZYs",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/vQOS-834ZYs/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 57,
        "count": 56,
        "date": "04-25-2022 to 04-28-2022"
      },
      "dateEnd": "2022-04-28",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-057",
      "title": "Web Applications of the Future With TypeScript and GraphQL",
      "event": "DevDays Europe 2022",
      "date": "2022-04-27",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [],
      "images": [],
      "source": {
        "row": 58,
        "count": 57,
        "date": "04-27-2022 to 04-28-2022"
      },
      "dateEnd": "2022-04-28",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-058",
      "title": "Getting Started With GraphQL",
      "event": "DevDays Europe 2022",
      "date": "2022-05-03",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [],
      "images": [],
      "source": {
        "row": 59,
        "count": 58,
        "date": "05-03-2022"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-059",
      "title": "Getting Started With GraphQL",
      "event": "TeqNation",
      "date": "2022-05-12",
      "year": 2022,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Utrecht, The Netherlands",
      "links": [],
      "images": [],
      "source": {
        "row": 60,
        "count": 59,
        "date": "05-12-2022"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-060",
      "title": "Why GraphQL Is Perfect For Node.js Microservices",
      "event": "JSDay Canarias",
      "date": "2022-05-05",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Tenerife, Spain",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=TkzKXvR-jj8",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/TkzKXvR-jj8/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 61,
        "count": 60,
        "date": "05-05-2022 to 05-08-2022"
      },
      "dateEnd": "2022-05-08",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-061",
      "title": "How Your Bundle Size Affects The Climate",
      "event": "JSConf",
      "date": "2022-06-02",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Budapest, Hungary",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=_LEzWJOrle0",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/_LEzWJOrle0/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 62,
        "count": 61,
        "date": "06-02-2022 to 06-03-2022"
      },
      "dateEnd": "2022-06-03",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-062",
      "title": "Why GraphQL Is Perfect For Microservices",
      "event": "JNation",
      "date": "2022-06-07",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Coimbra, Portugal",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=4Ok1C-qGLnw",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/4Ok1C-qGLnw/hqdefault.jpg"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/jnation-2022-1.jpg",
          "alt": "Roy Derks presenting Why GraphQL Is Perfect For Microservices on stage at JNation 2022"
        },
        {
          "url": "/images/speaking/jnation-2022-2.jpg",
          "alt": "The audience attending Roy Derks’ GraphQL talk at JNation 2022 in Coimbra"
        },
        {
          "url": "/images/speaking/jnation-2022-3.jpg",
          "alt": "Roy Derks with copies of his React Projects book at JNation 2022"
        }
      ],
      "source": {
        "row": 63,
        "count": 62,
        "date": "06-07-2022"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-063",
      "title": "GraphQL as Data Layer for Your Application",
      "event": "Code on the Beach",
      "date": "2022-07-25",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Jacksonville, FL (USA)",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=XEYYIQnfav8",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/XEYYIQnfav8/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 64,
        "count": 63,
        "date": "07-25-2022 to 07-27-2022"
      },
      "dateEnd": "2022-07-27",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-064",
      "title": "Why GraphQL Is Perfect For Microservices",
      "event": "DevConf",
      "date": "2022-09-01",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Lodz, Poland",
      "links": [],
      "images": [],
      "source": {
        "row": 65,
        "count": 64,
        "date": "09-01-2022 to 09-02-2022"
      },
      "dateEnd": "2022-09-02",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-065",
      "title": "GraphQL For Frontend Developers",
      "event": "React India",
      "date": "2022-09-23",
      "year": 2022,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Goa, India",
      "links": [],
      "images": [
        {
          "url": "/images/speaking/react-india-2022-workshop-card.jpg",
          "alt": "React India 2022 speaker card for Roy Derks’ in-person GraphQL workshop"
        },
        {
          "url": "/images/speaking/react-india-2022-workshop.jpg",
          "alt": "Roy Derks teaching GraphQL to workshop participants at React India 2022 in Goa"
        }
      ],
      "source": {
        "row": 66,
        "count": 65,
        "date": "09-23-2022 to 09-24-2022"
      },
      "dateEnd": "2022-09-24",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-066",
      "title": "GraphQL Is No Excuse To Stop Writing Docs",
      "event": "GraphQL Conf Virtual",
      "date": "2022-09-29",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=9d8TzRqcYl8",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/9d8TzRqcYl8/hqdefault.jpg"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/graphql-conf-2022.jpg",
          "alt": "GraphQLConf speaker card for Roy Derks’ GraphQL Is No Excuse To Stop Writing Docs talk on September 29, 2022"
        }
      ],
      "source": {
        "row": 67,
        "count": 66,
        "date": "09-29-2022"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-067",
      "title": "GraphQL For Frontend Developers",
      "event": "React Alicante",
      "date": "2022-09-29",
      "year": 2022,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Alicante, Spain",
      "links": [],
      "images": [],
      "source": {
        "row": 68,
        "count": 67,
        "date": "09-29-2022"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-068",
      "title": "Web Applications of the Future With TypeScript and GraphQL",
      "event": "React Alicante",
      "date": "2022-10-01",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Alicante, Spain",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=sddohzxA5pk",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/sddohzxA5pk/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 69,
        "count": 68,
        "date": "10-01-2022"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-069",
      "title": "GraphQL as Data Layer for Your Application",
      "event": "ArmadaJS",
      "date": "2022-10-06",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Novi Sad, Serbia",
      "links": [],
      "images": [
        {
          "url": "/images/speaking/armadajs-2022-1.jpg",
          "alt": "Roy Derks presenting a GraphQL slide to the audience at ArmadaJS 2022"
        },
        {
          "url": "/images/speaking/armadajs-2022-2.jpg",
          "alt": "Roy Derks demonstrating GraphQL queries on stage at ArmadaJS 2022"
        },
        {
          "url": "/images/speaking/armadajs-2022-3.jpg",
          "alt": "Roy Derks speaking at the ArmadaJS 2022 podium"
        }
      ],
      "source": {
        "row": 70,
        "count": 69,
        "date": "10-06-2022 to 10-07-2022"
      },
      "dateEnd": "2022-10-07",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-070",
      "title": "GraphQL For A Better DX",
      "event": "International JavaScript (IJS) Conference",
      "date": "2022-10-25",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Munich, Germany",
      "links": [],
      "images": [
        {
          "url": "/images/speaking/ijs-munich-graphql-dx-2022.jpg",
          "alt": "IJS Munich speaker card for Roy Derks’ GraphQL for a Better Developer Experience (DX) session"
        }
      ],
      "source": {
        "row": 71,
        "count": 70,
        "date": "10-25-2022"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-071",
      "title": "Composing Data In Headless Architectures",
      "event": "International JavaScript (IJS) Conference",
      "date": "2022-10-25",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Munich, Germany",
      "links": [],
      "images": [],
      "source": {
        "row": 72,
        "count": 71,
        "date": "10-25-2022"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-072",
      "title": "Why GraphQL Is Perfect For Microservices",
      "event": "Porto Tech Hub",
      "date": "2022-10-27",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Porto, Portugal",
      "links": [],
      "images": [],
      "source": {
        "row": 73,
        "count": 72,
        "date": "10-27-2022"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-073",
      "title": "GraphQL For Frontend Developers",
      "event": "Connect.tech",
      "date": "2022-11-07",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Atlanta, GA (USA)",
      "links": [],
      "images": [],
      "source": {
        "row": 74,
        "count": 73,
        "date": "11-07-2022"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-074",
      "title": "Why GraphQL Is Perfect For Microservices",
      "event": "Connect.tech",
      "date": "2022-11-09",
      "year": 2022,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Atlanta, GA (USA)",
      "links": [],
      "images": [],
      "source": {
        "row": 75,
        "count": 74,
        "date": "11-09-2022"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-075",
      "title": "GraphQL Is No Excuse To Stop Writing Docs",
      "event": "API The Docs Virtual",
      "date": "2022-11-16",
      "year": 2022,
      "sessionType": "talk",
      "eventType": null,
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=p1SUaDdCF18",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/p1SUaDdCF18/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 76,
        "count": 75,
        "date": "11-16-2022"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-076",
      "title": "Web Applications of the Future With TypeScript and GraphQL",
      "event": "Conf42 JavaScript",
      "date": "2022-11-17",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=437uNCsnG5c",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/437uNCsnG5c/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 77,
        "count": 76,
        "date": "11-17-2022"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-077",
      "title": "GraphQL as Data Layer for Your Application",
      "event": "Modern Frontends Live",
      "date": "2022-11-17",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "London, United Kingdom",
      "links": [],
      "images": [],
      "source": {
        "row": 78,
        "count": 77,
        "date": "11-17-2022 to 11-18-2022"
      },
      "dateEnd": "2022-11-18",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-078",
      "title": "GraphQL For Frontend Developers",
      "event": "React Day Berlin",
      "date": "2022-12-07",
      "year": 2022,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "type": "video",
          "label": "Workshop recording",
          "url": "https://gitnation.com/contents/graphql-for-react-developers",
          "thumbnail": "https://gn-portal-og-images.vercel.app/graphql-for-react-developers?v3-1719104081365",
          "access": "ticket-required"
        }
      ],
      "images": [],
      "source": {
        "row": 79,
        "count": 78,
        "date": "12-07-2022"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-079",
      "title": "GraphQL Explained Through Performance Testing",
      "event": "ngIndia",
      "date": "2023-02-25",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Delhi, India",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=rkkvH0ndOHY",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/rkkvH0ndOHY/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 80,
        "count": 79,
        "date": "02-25-2023"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-080",
      "title": "GraphQL Is Just HTTP",
      "event": "ConfrontJS",
      "date": "2023-03-24",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Warsaw, Poland",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=4sDJxsaQtmM",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/4sDJxsaQtmM/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 81,
        "count": 80,
        "date": "03-24-2023"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-081",
      "title": "Web Applications of the Future With TypeScript and GraphQL",
      "event": "CityJS",
      "date": "2023-04-05",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "London, United Kingdom",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=s-h9Gtu3aNs",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/s-h9Gtu3aNs/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 82,
        "count": 81,
        "date": "04-05-2023"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-082",
      "title": "GraphQL For Frontend Developers",
      "event": "App Dev Con",
      "date": "2023-05-09",
      "year": 2023,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Amsterdam, The Netherlands",
      "links": [],
      "images": [],
      "source": {
        "row": 83,
        "count": 82,
        "date": "05-09-2023 to 05-12-2023"
      },
      "dateEnd": "2023-05-12",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-083",
      "title": "Doubling Down on GraphQL – With REST",
      "event": "Software Design & Development (SDD) Conference",
      "date": "2023-05-18",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "London, United Kingdom",
      "links": [],
      "images": [],
      "source": {
        "row": 84,
        "count": 83,
        "date": "05-18-2023"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-084",
      "title": "GraphQL As The Magic Glue For Your APIs",
      "event": "Software Design & Development (SDD) Conference",
      "date": "2023-05-18",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "London, United Kingdom",
      "links": [],
      "images": [],
      "source": {
        "row": 85,
        "count": 84,
        "date": "05-18-2023"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-085",
      "title": "GraphQL Explained Through Performance Testing",
      "event": "JSDay Canarias",
      "date": "2023-05-25",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Tenerife, Spain",
      "links": [],
      "images": [],
      "source": {
        "row": 86,
        "count": 85,
        "date": "05-25-2023 to 05-28-2023"
      },
      "dateEnd": "2023-05-28",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-086",
      "title": "Doubling Down on GraphQL – With REST",
      "event": "JNation",
      "date": "2023-06-06",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Coimbra, Portugal",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=hJVGYigjQWs",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/hJVGYigjQWs/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 87,
        "count": 86,
        "date": "06-06-2023 to 06-07-2023"
      },
      "dateEnd": "2023-06-07",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-087",
      "title": "Build a GraphQL API In Minutes With API Connect and IBM StepZen Graph Server",
      "event": "Think on Tour",
      "date": "2023-06-14",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Frankfurt, Germany",
      "links": [],
      "images": [],
      "source": {
        "row": 88,
        "count": 87,
        "date": "06-14-2023 to 06-15-2023"
      },
      "dateEnd": "2023-06-15",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-088",
      "title": "GraphQL For Frontend Developers",
      "event": "CityJS Singapore",
      "date": "2023-07-26",
      "year": 2023,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Singapore",
      "links": [],
      "images": [
        {
          "url": "/images/speaking/cityjs-workshop-2023-1.jpg",
          "alt": "Roy Derks teaching GraphQL For Frontend Developers at the CityJS Singapore workshop in 2023"
        },
        {
          "url": "/images/speaking/cityjs-workshop-2023-2.jpg",
          "alt": "Roy Derks with workshop participants at CityJS Singapore in 2023"
        }
      ],
      "source": {
        "row": 89,
        "count": 88,
        "date": "07-26-2023"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-089",
      "title": "GraphQL Is More Than a Type System",
      "event": "CityJS Singapore",
      "date": "2023-07-28",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Singapore",
      "links": [
        {
          "label": "Video",
          "url": "https://www.youtube.com/watch?v=w2AKid9ihQo",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/w2AKid9ihQo/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 90,
        "count": 89,
        "date": "07-27-2023 to 07-28-2023"
      },
      "notes": "Roy confirmed the session date as July 28, 2023. The original workbook conference date range is preserved in source.date.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-090",
      "title": "Beyond REST: What you need to know about creating and managing GraphQL and AsyncAPI",
      "event": "API Days London",
      "date": "2023-09-13",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "London, United Kingdom",
      "links": [],
      "images": [],
      "source": {
        "row": 91,
        "count": 90,
        "date": "09-13-2023 to 09-14-2023"
      },
      "dateEnd": "2023-09-14",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-091",
      "title": "Go Beyond The Spec With Custom Directives",
      "event": "GraphQL Conf",
      "date": "2023-09-19",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "San Francisco, CA (USA)",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=0XiDFUp32gM",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/0XiDFUp32gM/hqdefault.jpg"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/graphqlconf-2023.jpg",
          "alt": "Roy Derks speaking at GraphQLConf 2023",
          "href": "https://www.linkedin.com/posts/gethackteam_its-an-exciting-week-to-be-in-the-bay-area-activity-7461700629745340417-RVVI"
        }
      ],
      "source": {
        "row": 92,
        "count": 91,
        "date": "09-19-2023 to 09-21-2023"
      },
      "dateEnd": "2023-09-21",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-092",
      "title": "The State of GraphQL Clients in 2023",
      "event": "React Alicante",
      "date": "2023-09-28",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Alicante, Spain",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=dU3UURhRAbs",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/dU3UURhRAbs/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 93,
        "count": 92,
        "date": "09-28-2023 to 09-30-2023"
      },
      "dateEnd": "2023-09-30",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-093",
      "title": "Build a GraphQL API In Minutes With API Connect and IBM StepZen Graph Server",
      "event": "IBM Labs Come to You",
      "date": "2023-10-03",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Amsterdam, The Netherlands",
      "links": [],
      "images": [],
      "source": {
        "row": 94,
        "count": 93,
        "date": "10-03-2023"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-094",
      "title": "GraphQL Explained Through Performance Testing",
      "event": "Frontmania",
      "date": "2023-10-12",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Utrecht, The Netherlands",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=ZjSjDCKnTGs",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/ZjSjDCKnTGs/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 95,
        "count": 94,
        "date": "10-12-2023"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-095",
      "title": "GraphQL is just HTTP",
      "event": "Fullstack Europe",
      "date": "2023-10-18",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Antwerp, Belgium",
      "links": [],
      "images": [
        {
          "url": "/images/speaking/fullstack-europe-2023.jpg",
          "alt": "Roy Derks presenting GraphQL is just HTTP at FullStack Europe 2023 in Antwerp"
        }
      ],
      "source": {
        "row": 96,
        "count": 95,
        "date": "10-18-2023 to 10-20-2023"
      },
      "dateEnd": "2023-10-20",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-096",
      "title": "GraphQL Explained Through Performance Testing",
      "event": "Porto Tech Hub",
      "date": "2023-10-27",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Porto, Portugal",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=FCHXwYB9e7Y",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/FCHXwYB9e7Y/hqdefault.jpg"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/porto-tech-hub-2023.jpg",
          "alt": "Roy Derks presenting GraphQL Explained Through Performance Testing at Porto Tech Hub 2023"
        }
      ],
      "source": {
        "row": 97,
        "count": 96,
        "date": "10-27-2023"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-097",
      "title": "Build a GraphQL API In Minutes With API Connect and IBM StepZen Graph Server",
      "event": "API Days Paris",
      "date": "2023-12-06",
      "year": 2023,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Paris, France",
      "links": [],
      "images": [],
      "source": {
        "row": 98,
        "count": 97,
        "date": "12-06-2023 to 12-08-2023"
      },
      "dateEnd": "2023-12-08",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-098",
      "title": "Building AI Applications For The Web",
      "event": "React Day Berlin",
      "date": "2023-12-18",
      "year": 2023,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "type": "video",
          "label": "Workshop recording",
          "url": "https://gitnation.com/contents/building-ai-applications-for-the-web",
          "access": "ticket-required",
          "thumbnail": "https://gn-portal-og-images.vercel.app/building-ai-applications-for-the-web?v3-1786947705512"
        }
      ],
      "images": [],
      "source": {
        "row": 99,
        "count": 98,
        "date": "12-18-2023"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-099",
      "title": "GenAI For Web Developers",
      "event": "ngIndia",
      "date": "2024-02-24",
      "year": 2024,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Delhi, India",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=QyCKFAfFZ1Q",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/QyCKFAfFZ1Q/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 100,
        "count": 99,
        "date": "02-24-2024"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-100",
      "title": "Why API Middleware Is Needed For Enterprise AI Integrations",
      "event": "Put AI To Work",
      "date": "2024-03-19",
      "year": 2024,
      "sessionType": "talk",
      "eventType": null,
      "attendance": "in-person",
      "location": "Amsterdam, The Netherlands",
      "links": [],
      "images": [],
      "source": {
        "row": 101,
        "count": 100,
        "date": "03-19-2024"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-101",
      "title": "GenAI For Web Developers",
      "event": "CityJS",
      "date": "2024-04-03",
      "year": 2024,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "London, United Kingdom",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=Z24tgJbUd3E",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/Z24tgJbUd3E/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 102,
        "count": 101,
        "date": "04-03-2024 to 04-05-2024"
      },
      "dateEnd": "2024-04-05",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-102",
      "title": "GraphQL In The Era of Server Components",
      "event": "React Connection",
      "date": "2024-04-22",
      "year": 2024,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Paris, France",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=d0vugg96PME",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/d0vugg96PME/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 103,
        "count": 102,
        "date": "04-22-2024"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-103",
      "title": "GraphQL Is More Than a Type System",
      "event": "DevSum",
      "date": "2024-05-16",
      "year": 2024,
      "sessionType": "talk",
      "eventType": null,
      "attendance": "in-person",
      "location": "Stockholm, Sweden",
      "links": [],
      "images": [],
      "source": {
        "row": 104,
        "count": 103,
        "date": "05-16-2024 to 05-17-2024"
      },
      "dateEnd": "2024-05-17",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-104",
      "title": "Why API Middleware Is Needed For Enterprise AI Integrations",
      "event": "Put AI To Work",
      "date": "2024-05-28",
      "year": 2024,
      "sessionType": "talk",
      "eventType": null,
      "attendance": "in-person",
      "location": "Copenhagen, Denmark",
      "links": [],
      "images": [],
      "source": {
        "row": 105,
        "count": 104,
        "date": "05-28-2024"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-105",
      "title": "Going Beyond Prompt Engineering",
      "event": "JNation",
      "date": "2024-06-04",
      "year": 2024,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Coimbra, Portugal",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=Um8s2-iA3eI",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/Um8s2-iA3eI/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 106,
        "count": 105,
        "date": "06-04-2024"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-106",
      "title": "Leveraging LLMs to Build Intuitive AI Applications",
      "event": "JSNation",
      "date": "2024-06-07",
      "year": 2024,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "type": "video",
          "label": "Workshop recording",
          "url": "https://gitnation.com/contents/leveraging-llms-to-build-intuitive-ai-experiences-with-javascript",
          "access": "ticket-required",
          "thumbnail": "https://gn-portal-og-images.vercel.app/leveraging-llms-to-build-intuitive-ai-experiences-with-javascript?v3-1725488887569"
        }
      ],
      "images": [],
      "source": {
        "row": 107,
        "count": 106,
        "date": "06-07-2024"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-107",
      "title": "Leveraging LLMs to Build Intuitive AI Applications",
      "event": "C3 Fest",
      "date": "2024-06-14",
      "year": 2024,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Amsterdam, The Netherlands",
      "links": [],
      "images": [],
      "source": {
        "row": 108,
        "count": 107,
        "date": "06-14-2024 to 06-15-2024"
      },
      "dateEnd": "2024-06-15",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-108",
      "title": "Why AI Needs Middleware For Enterprise Adoption",
      "event": "Ai4",
      "date": "2024-08-12",
      "year": 2024,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Las Vegas, NV (USA)",
      "links": [
        {
          "label": "Full talk recording",
          "url": "https://www.youtube.com/watch?v=QVUYZ-2W7yM",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/QVUYZ-2W7yM/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 109,
        "count": 108,
        "date": "08-12-2024 to 08-14-2024"
      },
      "dateEnd": "2024-08-14",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-109",
      "title": "GraphQL In The Era of Server Components",
      "event": "GraphQL Conf",
      "date": "2024-09-10",
      "year": 2024,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "San Francisco, CA (USA)",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=0IcZGcO9Vm0",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/0IcZGcO9Vm0/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 110,
        "count": 109,
        "date": "09-10-2024 to 09-12-2024"
      },
      "dateEnd": "2024-09-12",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-110",
      "title": "Building AI Applications for the Web",
      "event": "International JavaScript (IJS) Conference",
      "date": "2024-10-07",
      "year": 2024,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "New York, NY (USA)",
      "links": [],
      "images": [],
      "source": {
        "row": 111,
        "count": 110,
        "date": "10-07-2024"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-111",
      "title": "Building AI applications Using JavaScript",
      "event": "International JavaScript (IJS) Conference",
      "date": "2024-10-07",
      "year": 2024,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "New York, NY (USA)",
      "links": [],
      "images": [],
      "source": {
        "row": 112,
        "count": 111,
        "date": "10-08-2024"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-112",
      "title": "LLMs For Web Developers Workshop",
      "event": "IBM TechXchange",
      "date": "2024-10-22",
      "year": 2024,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Las Vegas, NV (USA)",
      "links": [],
      "images": [],
      "source": {
        "row": 113,
        "count": 112,
        "date": "10-22-2024"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-113",
      "title": "LLMs For Web Developers",
      "event": "IBM TechXchange",
      "date": "2024-10-23",
      "year": 2024,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Las Vegas, NV (USA)",
      "links": [],
      "images": [],
      "source": {
        "row": 114,
        "count": 113,
        "date": "10-23-2024"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-114",
      "title": "Demystifying GraphQL: Explore the Truth Behind the Myths",
      "event": "API World",
      "date": "2024-11-06",
      "year": 2024,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Santa Clara, CA (USA)",
      "links": [],
      "images": [],
      "source": {
        "row": 115,
        "count": 114,
        "date": "11-06-2024"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-116",
      "title": "Building AI Applications With IBM watsonx",
      "event": "MLops World",
      "date": "2024-11-07",
      "year": 2024,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Austin, TX (USA)",
      "links": [],
      "images": [],
      "source": {
        "row": 117,
        "count": 116,
        "date": "11-07-2024 to 11-08-2024"
      },
      "dateEnd": "2024-11-08",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-117",
      "title": "GraphQL In The Era of Server Components",
      "event": "Connect.tech",
      "date": "2024-11-19",
      "year": 2024,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Atlanta, GA (USA)",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=XbZogYMLRo4",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/XbZogYMLRo4/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 118,
        "count": 117,
        "date": "11-19-2024"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-118",
      "title": "LLMs for Web Developers",
      "event": "Connect.tech",
      "date": "2024-11-20",
      "year": 2024,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Atlanta, GA (USA)",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=dXoUkLfJkXU",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/dXoUkLfJkXU/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 119,
        "count": 118,
        "date": "11-20-2024"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-119",
      "title": "Tool Calling is not just plumbing for AI Agents",
      "event": "AI Engineer Summit",
      "date": "2025-02-22",
      "year": 2025,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=zuMw0pkPXpU",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/zuMw0pkPXpU/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 120,
        "count": 119,
        "date": "02-22-2025"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-120",
      "title": "GraphQL: The Missing Link in your GenAI strategy",
      "event": "TechCon 2025",
      "date": "2025-03-20",
      "year": 2025,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=-AqkQjq1iBM",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/-AqkQjq1iBM/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 121,
        "count": 120,
        "date": "03-20-2025"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-121",
      "title": "Tool Calling is not just plumbing for AI Agents",
      "event": "MITechCon",
      "date": "2025-03-27",
      "year": 2025,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Pontiac, MI (USA)",
      "links": [],
      "images": [],
      "source": {
        "row": 122,
        "count": 121,
        "date": "03-27-2025"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-122",
      "title": "Effective API Strategies for MCP and Tool Calling",
      "event": "APIDays NYC",
      "date": "2025-05-15",
      "year": 2025,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "NYC, NY (USA)",
      "links": [],
      "images": [],
      "source": {
        "row": 123,
        "count": 122,
        "date": "05-15-2025"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-123",
      "title": "2025: The Year of Agents, Vibe Coding and MCP",
      "event": "IJS San Diego",
      "date": "2025-05-21",
      "year": 2025,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "San Diego, CA",
      "links": [],
      "images": [],
      "source": {
        "row": 124,
        "count": 123,
        "date": "05-21-2025"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-124",
      "title": "Tool Calling is Not Just Plumbing for AI Agents",
      "event": "IJS San Diego",
      "date": "2025-05-21",
      "year": 2025,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "San Diego, CA",
      "links": [],
      "images": [],
      "source": {
        "row": 125,
        "count": 124,
        "date": "05-21-2025"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-125",
      "title": "Building AI Agents Using JavaScript",
      "event": "IJS San Diego",
      "date": "2025-05-22",
      "year": 2025,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "San Diego, CA",
      "links": [],
      "images": [],
      "source": {
        "row": 126,
        "count": 125,
        "date": "05-21-2025"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-126",
      "title": "The AI Boom",
      "event": "Leaders in Finance AI",
      "date": "2025-06-05",
      "year": 2025,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Soesterberg, The Netherlands",
      "links": [
        {
          "label": "Event recap and photos",
          "url": "https://www.leadersinfinance.nl/summary-leaders-in-finance-ai-event-2025/",
          "type": "event"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/leaders-in-finance-ai-2025.jpg",
          "alt": "Roy Derks delivering the AI Boom keynote at Leaders in Finance AI Event 2025",
          "href": "https://www.leadersinfinance.nl/summary-leaders-in-finance-ai-event-2025/"
        }
      ],
      "source": {
        "row": 127,
        "count": 126,
        "date": "06-05-2025"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-127",
      "title": "Effectively use AI Agents to Maintain Your Docs",
      "event": "AI The Docs",
      "date": "2025-06-24",
      "year": 2025,
      "sessionType": "talk",
      "eventType": null,
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://youtube.com/watch?v=KBaGF0_a6RE",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/KBaGF0_a6RE/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 128,
        "count": 127,
        "date": "06-24-2025"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-128",
      "title": "Building Agents with MCP & Langflow",
      "event": "MCP Agent Silsila",
      "date": "2025-09-16",
      "year": 2025,
      "sessionType": "talk",
      "eventType": null,
      "attendance": "virtual",
      "location": "online",
      "links": [],
      "images": [],
      "source": {
        "row": 129,
        "count": 128,
        "date": "09-16-2025"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-129",
      "title": "Tool Calling is Not Just Plumbing for AI Agents",
      "event": "Artificial UnIntelligence Conference",
      "date": "2025-09-16",
      "year": 2025,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "type": "video",
          "label": "Session recording",
          "url": "https://www.unintelligence.ai/video-gallery-1/tool-calling-is-not-just-plumbing-for-ai-agents-hd",
          "thumbnail": "https://static.wixstatic.com/media/b3a9f5_5512cbb9f2e7490587723b15639a9792f000.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 130,
        "count": 129,
        "date": "09-16-2025"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "talk-130",
      "title": "Ingesting Unstructured Data with Docling",
      "event": "OpenRAG Summit",
      "date": "2025-11-13",
      "year": 2025,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [
        {
          "label": "Video",
          "url": "https://www.youtube.com/watch?v=hw5P6xCoChw",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/hw5P6xCoChw/hqdefault.jpg"
        }
      ],
      "images": [],
      "source": {
        "row": 131,
        "count": 130,
        "date": "11-13-2025"
      },
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "scale-23x-docling-workshop-2026",
      "title": "Workshop: Learn to Unlock Document Intelligence with Open-Source AI",
      "event": "SCaLE 23x",
      "date": "2026-03-05",
      "year": 2026,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Pasadena Convention Center, Room 208, Pasadena, California",
      "links": [
        {
          "label": "Session details and schedule",
          "url": "https://www.socallinuxexpo.org/scale/23x/presentations/workshop-learn-unlock-document-intelligence-open-source-ai",
          "type": "event"
        }
      ],
      "images": [],
      "notes": "The official SCaLE listing names Roy Derks and gives the workshop time as Thursday, March 5, 2026, 14:00–17:00.",
      "topics": [
        "Docling",
        "RAG",
        "document intelligence"
      ],
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "mcp-dev-summit-na-when-mcp-becomes-a-product-2026",
      "title": "When MCP Becomes a Product",
      "event": "MCP Dev Summit North America",
      "date": null,
      "year": 2026,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "New York, New York",
      "links": [
        {
          "label": "Session listing",
          "url": "https://mcpdevsummitna26.sched.com/event/2IaYG/when-mcp-becomes-a-product-gautam-baghel-hashicorp-roy-derks-ibm",
          "type": "event"
        },
        {
          "label": "MCP Dev Summit North America dates and location",
          "url": "https://events.linuxfoundation.org/mcp-dev-summit-north-america/",
          "type": "event"
        },
        {
          "label": "Session recording",
          "url": "https://www.youtube.com/watch?v=RjOWGzovw_U",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/RjOWGzovw_U/hqdefault.jpg"
        }
      ],
      "images": [],
      "notes": "The session listing URL was provided and its title and speakers are corroborated by indexed speaker posts. The Sched page returned 403 when opened. The Linux Foundation confirms the conference ran April 2–3, 2026 in New York, but the session's own date and time could not be verified; date is left null.",
      "eventDate": "2026-04-02",
      "eventDateEnd": "2026-04-03",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "techex-north-america-building-ai-stack-tomorrow-2026",
      "title": "Building the AI Stack of Tomorrow",
      "event": "TechEx North America",
      "date": "2026-05-18",
      "year": 2026,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "San Jose, California",
      "links": [
        {
          "label": "Event website",
          "url": "https://techexevent.com/event-information/",
          "type": "event"
        }
      ],
      "images": [],
      "notes": "Session title and May 18 date supplied by Roy Derks. The official event website confirms TechEx North America on May 18–19, 2026 at San Jose McEnery Convention Center.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "apidays-new-york-effective-api-strategies-mcp-tool-calling-2026",
      "title": "Effective API Strategies for MCP and Tool Calling",
      "event": "apidays New York",
      "date": null,
      "year": 2026,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "New York, New York",
      "links": [
        {
          "label": "Session announcement",
          "url": "https://www.linkedin.com/posts/apidays-conferences_apidays-activity-7459686663225630720-cIfJ",
          "type": "announcement"
        },
        {
          "label": "apidays New York 2026 event details",
          "url": "https://www.apidays.global/archive/2026/new-york",
          "type": "event"
        },
        {
          "label": "Roy Derks announcement",
          "url": "https://www.linkedin.com/posts/gethackteam_back-in-nyc-to-talk-about-mcp-it-only-share-7459496102753542144-qypC/",
          "type": "announcement"
        }
      ],
      "images": [],
      "notes": "The official apidays event page confirms May 13–14, 2026 at Convene 360 Madison Ave, New York, and an apidays announcement identifies Roy Derks and this session title. The speaker's supplied LinkedIn post URL was inaccessible; no session-specific date or time was verified, so date is null.",
      "eventDate": "2026-05-13",
      "eventDateEnd": "2026-05-14",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "graphqlconf-simplifying-mcp-tool-sprawl-with-graphql-2026",
      "title": "Simplifying MCP Tool Sprawl With GraphQL",
      "event": "GraphQLConf 2026",
      "date": "2026-05-19",
      "year": 2026,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Fremont, California",
      "links": [
        {
          "label": "Session details and schedule",
          "url": "https://graphql.org/conf/2026/schedule/f297e99f14761e6bb70006c8fe641692/?name=Simplifying%20MCP%20Tool%20Sprawl%20With%20GraphQL%20-%20Roy%20Derks,%20IBM",
          "type": "event"
        },
        {
          "label": "Full GraphQLConf schedule",
          "url": "https://graphql.org/conf/2026/schedule/",
          "type": "event"
        },
        {
          "label": "Session recording",
          "url": "https://www.youtube.com/watch?v=uKpDvWQBm1U",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/uKpDvWQBm1U/hqdefault.jpg"
        }
      ],
      "images": [],
      "notes": "The official session page places Roy Derks's talk on May 19, 2026, 16:05–16:30. The conference is May 19–20 in Fremont, California.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "ibm-techxchange-beginners-guide-recommendation-system-2026",
      "title": "Beginner's Guide to Building a Recommendation System with Vector Search, IBM Granite, & watsonx.data",
      "event": "IBM TechXchange 2026",
      "date": "2026-10-28",
      "year": 2026,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Atlanta, Georgia",
      "links": [
        {
          "label": "Session details",
          "url": "https://reg.tools.ibm.com/flow/ibm/techxchange26/sessioncatalog/page/sessioncatalog/session/1779116037952001azld",
          "type": "event"
        }
      ],
      "images": [],
      "notes": "IBM's public session catalog lists this Roy Derks session for October 28, 2026, 16:00–16:45 EDT.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "ibm-techxchange-simplify-ai-ready-tables-2026",
      "title": "Simplify AI-Ready Tables (Tableflow + watsonx.data + Catalog)",
      "event": "IBM TechXchange 2026",
      "date": "2026-10-27",
      "year": 2026,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Atlanta, Georgia",
      "links": [
        {
          "label": "Session details",
          "url": "https://reg.tools.ibm.com/flow/ibm/techxchange26/sessioncatalog/page/sessioncatalog/session/1779462002453001p1wR",
          "type": "event"
        }
      ],
      "images": [],
      "notes": "IBM's public session catalog lists this Roy Derks session for October 27, 2026, 14:45–16:15 EDT.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "ibm-techxchange-gpu-accelerated-presto-lab-2026",
      "title": "Graphics Processing Unit (GPU) Accelerated Presto Lab",
      "event": "IBM TechXchange 2026",
      "date": "2026-10-26",
      "year": 2026,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Atlanta, Georgia",
      "links": [
        {
          "label": "Session details",
          "url": "https://reg.tools.ibm.com/flow/ibm/techxchange26/sessioncatalog/page/sessioncatalog/session/1783717568748001ipj0",
          "type": "event"
        }
      ],
      "images": [],
      "notes": "IBM's public session catalog lists this Roy Derks session for October 26, 2026, 12:15–13:45 EDT.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "wework-amsterdam-intro-javascript-2018",
      "title": "Intro to JavaScript ES6/7/8",
      "event": "WeWork Amsterdam",
      "date": "2018-06-21",
      "year": 2018,
      "sessionType": "workshop",
      "eventType": null,
      "attendance": "in-person",
      "location": "Amsterdam, Netherlands",
      "topics": [
        "JavaScript",
        "ES6",
        "ES7",
        "ES8"
      ],
      "links": [],
      "images": [
        {
          "url": "/images/speaking/wework-javascript-2018-main.jpg",
          "alt": "Roy Derks helping participants with JavaScript at the WeWork Amsterdam workshop in June 2018"
        },
        {
          "url": "/images/speaking/wework-javascript-2018-1.jpg",
          "alt": "Roy Derks demonstrating JavaScript at the WeWork Amsterdam workshop in June 2018"
        },
        {
          "url": "/images/speaking/wework-javascript-2018-2.jpg",
          "alt": "Roy Derks teaching workshop participants at WeWork Amsterdam in June 2018"
        },
        {
          "url": "/images/speaking/wework-javascript-2018-3.jpg",
          "alt": "Participants following JavaScript coding exercises at WeWork Amsterdam in June 2018"
        }
      ],
      "notes": "Workshop details and photos supplied by Roy. The broader event category was not specified.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "postman-galaxy-future-of-graphql-2021",
      "title": "The Future of GraphQL",
      "event": "Postman Galaxy",
      "date": null,
      "year": 2021,
      "eventDate": "2021-02-02",
      "eventDateEnd": "2021-02-04",
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "Online",
      "topics": [
        "GraphQL"
      ],
      "links": [],
      "images": [
        {
          "url": "/images/speaking/postman-galaxy-2021.png",
          "alt": "Postman Galaxy 2021 speaker card for Roy Derks presenting The Future of GraphQL"
        }
      ],
      "notes": "Talk and speaker card supplied by Roy. The card lists the virtual conference dates as February 2–4, 2021; the exact session date is not specified.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "frontend-love-graphql-without-database-2020",
      "title": "GraphQL Without a Database",
      "event": "Frontend Love",
      "date": "2020-02-19",
      "year": 2020,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Amsterdam, Netherlands",
      "links": [
        {
          "label": "Official conference program",
          "url": "https://2020.frontenddeveloperlove.com/program/",
          "type": "event"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/frontend-love-2020-1.jpg",
          "alt": "Roy Derks presenting GraphQL Without a Database at Frontend Love on February 19, 2020"
        },
        {
          "url": "/images/speaking/frontend-love-2020-2.jpg",
          "alt": "The audience and stage during Roy Derks’ GraphQL talk at Frontend Love 2020"
        },
        {
          "url": "/images/speaking/frontend-love-2020-3.jpg",
          "alt": "Roy Derks explaining GraphQL and REST on stage at Frontend Love 2020"
        }
      ],
      "notes": "Appearance and photos supplied by Roy. The official 2020 conference program names Roy and GraphQL Without a Database. The supplied stage photo shows February 19, 2020.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "before-devbreak-bundle-size-climate-2021",
      "title": "How Your Bundle Size Affects The Climate",
      "event": "Before DevBreak by talent.io",
      "date": "2021-03-31",
      "year": 2021,
      "sessionType": "talk",
      "eventType": "meetup",
      "attendance": "virtual",
      "location": "Online",
      "links": [],
      "images": [
        {
          "url": "/images/speaking/before-devbreak-2021.png",
          "alt": "Before DevBreak speaker banner for Roy Derks’ How Your Bundle Size Affects The Climate talk on March 31, 2021"
        }
      ],
      "notes": "Virtual meetup and speaker banner supplied by Roy. The banner lists March 31, 2021 at 11:30 CET; the advertised timezone is preserved here without conversion.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "reactive-online-meetups-graphql-dx-2020",
      "title": "GraphQL for a Better Developer Experience (DX)",
      "event": "Reactive Online Meetups",
      "date": "2020-12-01",
      "year": 2020,
      "sessionType": "talk",
      "eventType": "meetup",
      "attendance": "virtual",
      "location": "Online",
      "links": [],
      "images": [
        {
          "url": "/images/speaking/reactive-online-meetups-2020.jpg",
          "alt": "Reactive Online Meetups speaker banner for Roy Derks’ GraphQL for a Better Developer Experience (DX) talk"
        }
      ],
      "notes": "Event and banner supplied by Roy. The organizer’s announcements mirrored at https://instalker.org/ReactiveMeetups identify the final 2020 meetup on December 1 at 19:00 CET and name Roy’s GraphQL for a better Developer Experience (DX) talk.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "byteconf-graphql-without-database-2020",
      "title": "GraphQL Without a Database",
      "event": "Byteconf GraphQL 2020",
      "date": "2020-01-31",
      "year": 2020,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "Online",
      "links": [
        {
          "label": "Talk announcement",
          "url": "https://dev.to/bytesizedcode/graphql-without-a-database-bha",
          "type": "announcement"
        },
        {
          "label": "Video",
          "url": "https://www.youtube.com/watch?v=xGwsn0kZfLY",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/xGwsn0kZfLY/hqdefault.jpg"
        }
      ],
      "images": [
        {
          "url": "/images/speaking/byteconf-graphql-2020.png",
          "alt": "Roy Derks’ GraphQL Without a Database speaker image for Byteconf GraphQL 2020"
        }
      ],
      "notes": "Event supplied by Roy. Organizer article confirms January 31, 2020 as the live-streamed conference date, names Roy as speaker, and embeds the recording. Cover image extracted from the original DEV upload: https://dev-to-uploads.s3.amazonaws.com/i/885mebfkhhv3ueinpb1l.png.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "headfwd-graphql-microservices-lunch-2022",
      "title": "GraphQL Microservices Lunch Workshop",
      "event": "HeadFWD",
      "date": "2022-07-01",
      "year": 2022,
      "sessionType": "workshop",
      "eventType": "meetup",
      "attendance": "in-person",
      "location": null,
      "links": [],
      "images": [
        {
          "url": "/images/speaking/headfwd-2022-1.jpg",
          "alt": "Roy Derks explaining microservices at the HeadFWD GraphQL lunch workshop on July 1, 2022"
        },
        {
          "url": "/images/speaking/headfwd-2022-2.jpg",
          "alt": "Participants attending the HeadFWD GraphQL Microservices Lunch Workshop"
        },
        {
          "url": "/images/speaking/headfwd-2022-3.jpg",
          "alt": "Roy Derks receiving a gift after the HeadFWD workshop"
        }
      ],
      "notes": "Workshop, date and photos supplied by Roy. City not specified.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "cityjs-london-ai-workshop-2024",
      "title": "Building AI Applications for the Web",
      "event": "CityJS London",
      "date": "2024-04-04",
      "year": 2024,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "London, United Kingdom",
      "links": [],
      "images": [],
      "notes": "Session details supplied by Roy.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "cityjs-london-graphql-typescript-workshop-2023",
      "title": "GraphQL & TypeScript Workshop",
      "event": "CityJS London",
      "date": "2023-03-29",
      "year": 2023,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "London, United Kingdom",
      "links": [],
      "images": [],
      "notes": "Session details supplied by Roy.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "graphql-galaxy-react-workshop-2022",
      "title": "GraphQL for React Developers",
      "event": "GraphQL Galaxy",
      "date": "2022-12-07",
      "year": 2022,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "virtual",
      "location": "online",
      "links": [],
      "images": [],
      "notes": "Session details supplied by Roy.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "ilionx-devdays-react-state-2019",
      "title": "State-Management in React with Context and Hooks",
      "event": "Ilionx DevDays",
      "date": "2019-11-01",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Arnhem, The Netherlands",
      "links": [],
      "images": [],
      "notes": "Session details supplied by Roy.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "saxum-meetup-react-state-2019",
      "title": "State-Management in React with Context and Hooks",
      "event": "Saxum Meetup",
      "date": "2019-05-16",
      "year": 2019,
      "sessionType": "talk",
      "eventType": "meetup",
      "attendance": "in-person",
      "location": "Amsterdam, The Netherlands",
      "links": [],
      "images": [],
      "notes": "Session details supplied by Roy.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "untangling-graphql-workshop-2022",
      "title": "GraphQL for Frontend Developers",
      "event": "Untangling GraphQL",
      "date": "2022-04-07",
      "year": 2022,
      "sessionType": "workshop",
      "eventType": null,
      "attendance": "virtual",
      "location": "online",
      "links": [],
      "images": [],
      "notes": "Session details supplied by Roy.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "jsworld-typescript-fundamentals-workshop-2022",
      "title": "TypeScript Fundamentals",
      "event": "JSWORLD Conference",
      "date": "2022-04-01",
      "year": 2022,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Amsterdam, The Netherlands",
      "links": [],
      "images": [],
      "notes": "Session details supplied by Roy.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "jnation-ai-workshop-2024",
      "title": "Building AI Applications for the Web",
      "event": "JNation",
      "date": "2024-06-05",
      "year": 2024,
      "sessionType": "workshop",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "Coimbra, Portugal",
      "links": [
        {
          "type": "announcement",
          "label": "Workshop recap",
          "url": "https://www.linkedin.com/posts/gethackteam_ai-genai-aiengineers-share-7204830549465579520-n5Gd/"
        }
      ],
      "images": [],
      "notes": "Title confirmed by Roy. His LinkedIn recap describes a three-hour workshop for almost 30 developers; JNation lists June 5, 2024 as its workshop day.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "developers-nl-technight-react-native-2018",
      "title": "From Web to Mobile Developer with React and React Native",
      "event": "Developers.nl TechNight",
      "date": "2018-10-31",
      "year": 2018,
      "sessionType": "talk",
      "eventType": null,
      "attendance": "in-person",
      "location": "Rotterdam, The Netherlands",
      "links": [
        {
          "label": "Full talk recording",
          "url": "https://www.youtube.com/watch?v=-ixO50OKaP4",
          "type": "video",
          "thumbnail": "https://i.ytimg.com/vi/-ixO50OKaP4/hqdefault.jpg"
        }
      ],
      "images": [],
      "notes": "Session title, date and location confirmed by Roy. This is a separate session from the November 24, 2021 virtual TechNight.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "fullstack-amsterdam-web-applications-typescript-graphql-2022",
      "title": "Web Applications of the Future With TypeScript and GraphQL",
      "event": "The Future of Frontend: GraphQL, Typescript and Nx",
      "date": "2022-09-12",
      "year": 2022,
      "sessionType": "talk",
      "eventType": "meetup",
      "attendance": "in-person",
      "location": "Amsterdam, The Netherlands",
      "links": [
        {
          "label": "Event programme",
          "url": "https://beta.guild.host/events/the-future-of-frontend-7qx32r",
          "type": "event"
        }
      ],
      "images": [],
      "notes": "Hosted by Fullstack Amsterdam at Elsevier Amsterdam TechHub. The event programme names Roy Derks and lists this talk at 18:45.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    },
    {
      "id": "platformday-san-francisco-agent-sandboxes-2026",
      "title": "Agent Sandboxes Are the Missing Runtime for AI",
      "event": "PLATFORMday San Francisco",
      "date": "2026-11-06",
      "year": 2026,
      "sessionType": "talk",
      "eventType": "conference",
      "attendance": "in-person",
      "location": "San Francisco, California, USA",
      "links": [
        {
          "label": "Event programme",
          "url": "https://platformday.com/2026-san-francisco-q4/",
          "type": "event"
        }
      ],
      "images": [],
      "notes": "Hosted at Sentry. The programme lists Roy Derks (IBM) at 11:00 in the mini room.",
      "type": "speaking",
      "url": "https://hackteam.io/speaking/"
    }
  ]
}
