Episode

Course 37 - Building Web Apps with Ruby On Rails | Episode 18:Navigating GraphQL and the Graphiti Middle Ground

Podcast
CyberCode Academy
Published
Jul 1, 2026
Duration seconds
1283
Processing state
not_requested
Canonical source
https://www.spreaker.com/episode/course-37-building-web-apps-with-ruby-on-rails-episode-18-navigating-graphql-and-the-graphiti-middle-ground--72405589
Audio
https://dts.podtrac.com/redirect.mp3/api.spreaker.com/download/episode/72405589/from_rest_to_graphql_to_graphiti.mp3
JSON
/v1/public/podcasts/cybercode-academy-7578615/episodes/course-37-building-web-apps-with-ruby-on-rails-episode-18-navigating-graphql-and-the-graphiti-middle-ground
Markdown
/podcast/cybercode-academy-7578615/course-37-building-web-apps-with-ruby-on-rails-episode-18-navigating-graphql-and-the-graphiti-middle-ground.md

Actions

  • POST https://stenobird.com/v1/public/podcasts/cybercode-academy-7578615/episodes/course-37-building-web-apps-with-ruby-on-rails-episode-18-navigating-graphql-and-the-graphiti-middle-ground/transcription-requests
    Idempotently request low-priority transcript generation for this episode.
  • GET https://stenobird.com/podcast/cybercode-academy-7578615/course-37-building-web-apps-with-ruby-on-rails-episode-18-navigating-graphql-and-the-graphiti-middle-ground.md
    Read the agent-friendly Markdown representation of this episode resource.

Summary

In this lesson, you’ll learn about: REST limitations, GraphQL fundamentals, and the hybrid approach with Graphiti1. The Problem with REST APIsUsing REST:🔹 Key limitations: Overfetching Client receives more data than needed Underfetching Requires multiple requests to get all data No strict typing Errors happen at runtime Heavy reliance on documentation 👉 Key Insight REST is simple and scalable—but not always efficient2. Example of Overfetching🔹 Request:GET /users/1 🔹 Response:{ "id": 1, "name": "John", "email": "[email protected]", "address": "...", "preferences": "...", "settings": "..." } 👉 Problem: Client may only need name 👉 Key Insight REST responses are fixed by the server, not flexible for clients3. Introducing GraphQLUsing GraphQL:🔹 What it solves: Clients request exactly what they need 🔹 Example query:{ user(id: 1) { name } } 👉 Response:{ "data": { "user": { "name": "John" } } } 👉 Key Insight GraphQL eliminates overfetching and underfetching4. GraphQL Schema (Core Concept)🔹 Schema: Defines types and relationships Acts as a contract between client and server 🔹 Example:type User { id: ID name: String email: String } 👉 Key Insight GraphQL is strongly typed, unlike REST5. Queries vs Mutations🔹 Queries (read data):{ users { name } } 🔹 Mutations (write data):mutation { createUser(name: "John") { id } } 👉 Key Insight GraphQL separates read and write operations clearly6. Testing with GraphiQL🔹 Tool: GraphiQL 🔹 Features: Run queries in browser Explore schema Debug 👉 Key Insight GraphiQL improves developer experience significantly7. Downsides of GraphQL🔹 Trade-offs: No native HTTP caching More complex setup Boilerplate code No strict naming conventions 👉 Key Insight GraphQL flexibility comes with added complexity8. Introducing Graphiti (Hybrid Approach)Using Graphiti:🔹 Go…