{
 "id": "layers",
 "voice": "Kokoro bm_george",
 "tracks": {
  "everyone": {
   "total": 122.016,
   "audio": "audio/everyone.mp3",
   "beats": [
    {
     "id": "l0",
     "s": 1.6,
     "e": 13.586,
     "vo": 10.886,
     "lines": [
      {
       "t": "Meet Doña Carmen.",
       "s": 1.6,
       "d": 1.621
      },
      {
       "t": "For thirty years, her bakery in Cayey has sold pan sobao through a window on the plaza.",
       "s": 3.541,
       "d": 5.993
      },
      {
       "t": "This year, she put the bakery in your phone.",
       "s": 9.854,
       "d": 2.632
      }
     ]
    },
    {
     "id": "l1",
     "s": 13.586,
     "e": 27.78,
     "vo": 13.095,
     "lines": [
      {
       "t": "Almost every app is built like her bakery.",
       "s": 13.586,
       "d": 2.803
      },
      {
       "t": "A counter you can see.",
       "s": 16.708,
       "d": 1.888
      },
      {
       "t": "A kitchen you can't.",
       "s": 18.917,
       "d": 1.598
      },
      {
       "t": "A pantry under the floor.",
       "s": 20.835,
       "d": 2.041
      },
      {
       "t": "And lately, a helper who takes orders in plain words.",
       "s": 23.195,
       "d": 3.485
      }
     ]
    },
    {
     "id": "l2",
     "s": 27.78,
     "e": 40.182,
     "vo": 11.301,
     "lines": [
      {
       "t": "The frontend is the counter and the display case.",
       "s": 27.78,
       "d": 3.339
      },
      {
       "t": "Buttons, photos, prices.",
       "s": 31.439,
       "d": 2.118
      },
      {
       "t": "It lives on your phone, and its only job is to show things and catch your taps.",
       "s": 33.877,
       "d": 5.205
      }
     ]
    },
    {
     "id": "l3",
     "s": 40.182,
     "e": 48.018,
     "vo": 6.736,
     "lines": [
      {
       "t": "When you tap Order, the counter doesn't bake anything.",
       "s": 40.182,
       "d": 3.157
      },
      {
       "t": "It writes a ticket and sends it down to the kitchen.",
       "s": 43.659,
       "d": 3.259
      }
     ]
    },
    {
     "id": "l4",
     "s": 48.018,
     "e": 62.679,
     "vo": 13.561,
     "lines": [
      {
       "t": "The backend is the kitchen.",
       "s": 48.018,
       "d": 2.043
      },
      {
       "t": "It checks the ticket.",
       "s": 50.381,
       "d": 1.36
      },
      {
       "t": "Is there bread left?",
       "s": 52.062,
       "d": 1.392
      },
      {
       "t": "Is the price right?",
       "s": 53.774,
       "d": 1.397
      },
      {
       "t": "Did the payment go through?",
       "s": 55.491,
       "d": 1.628
      },
      {
       "t": "The rules of the business live here, where customers can't touch them.",
       "s": 57.439,
       "d": 4.141
      }
     ]
    },
    {
     "id": "l5",
     "s": 62.679,
     "e": 75.465,
     "vo": 11.686,
     "lines": [
      {
       "t": "Under the floor is the pantry, and the notebook.",
       "s": 62.679,
       "d": 3.115
      },
      {
       "t": "Every loaf, every customer, every sale.",
       "s": 66.114,
       "d": 2.797
      },
      {
       "t": "That's the data layer.",
       "s": 69.232,
       "d": 1.443
      },
      {
       "t": "The kitchen forgets.",
       "s": 70.995,
       "d": 1.475
      },
      {
       "t": "The notebook remembers.",
       "s": 72.79,
       "d": 1.576
      }
     ]
    },
    {
     "id": "l6",
     "s": 75.465,
     "e": 86.584,
     "vo": 10.019,
     "lines": [
      {
       "t": "To sell you the last pan sobao, the kitchen checks the notebook and crosses it off in one single move.",
       "s": 75.465,
       "d": 6.637
      },
      {
       "t": "So two people can never buy the same loaf.",
       "s": 82.422,
       "d": 3.062
      }
     ]
    },
    {
     "id": "l7",
     "s": 86.584,
     "e": 100.092,
     "vo": 12.408,
     "lines": [
      {
       "t": "The newest floor is a helper.",
       "s": 86.584,
       "d": 2.172
      },
      {
       "t": "Say, the usual, for four people, and it understands, checks the pantry, and fills the ticket for you.",
       "s": 89.076,
       "d": 6.361
      },
      {
       "t": "It doesn't replace the kitchen.",
       "s": 95.757,
       "d": 1.859
      },
      {
       "t": "It uses it.",
       "s": 97.936,
       "d": 1.056
      }
     ]
    },
    {
     "id": "l8",
     "s": 100.092,
     "e": 109.95,
     "vo": 8.757,
     "lines": [
      {
       "t": "Counter.",
       "s": 100.092,
       "d": 0.785
      },
      {
       "t": "Kitchen.",
       "s": 101.198,
       "d": 0.797
      },
      {
       "t": "Pantry.",
       "s": 102.315,
       "d": 0.776
      },
      {
       "t": "Helper.",
       "s": 103.411,
       "d": 0.76
      },
      {
       "t": "Four floors, one order, about a second from tap to gracias.",
       "s": 104.491,
       "d": 4.359
      }
     ]
    },
    {
     "id": "l9",
     "s": 109.95,
     "e": 122.016,
     "vo": 7.767,
     "lines": [
      {
       "t": "But how does the counter talk to the kitchen?",
       "s": 109.95,
       "d": 2.632
      },
      {
       "t": "Through a window, with rules.",
       "s": 112.901,
       "d": 2.039
      },
      {
       "t": "That window is called an API.",
       "s": 115.26,
       "d": 2.456
      }
     ]
    }
   ]
  },
  "technical": {
   "total": 164.999,
   "audio": "audio/technical.mp3",
   "beats": [
    {
     "id": "l0",
     "s": 1.6,
     "e": 13.674,
     "vo": 10.974,
     "lines": [
      {
       "t": "Doña Carmen's bakery in Cayey just shipped an ordering app.",
       "s": 1.6,
       "d": 4.124
      },
      {
       "t": "Let's open it up, layer by layer, and follow one order: a pan sobao and a café con leche.",
       "s": 6.044,
       "d": 6.53
      }
     ]
    },
    {
     "id": "l1",
     "s": 13.674,
     "e": 34.24,
     "vo": 19.467,
     "lines": [
      {
       "t": "Almost every modern application splits into the same four layers.",
       "s": 13.674,
       "d": 4.372
      },
      {
       "t": "A frontend that draws the interface.",
       "s": 18.366,
       "d": 2.558
      },
      {
       "t": "A backend that runs the business logic.",
       "s": 21.244,
       "d": 3.037
      },
      {
       "t": "A data layer that remembers.",
       "s": 24.601,
       "d": 2.122
      },
      {
       "t": "And, more and more, an AI layer of models and agents that acts on top of the other three.",
       "s": 27.043,
       "d": 6.097
      }
     ]
    },
    {
     "id": "l2",
     "s": 34.24,
     "e": 52.113,
     "vo": 16.772,
     "lines": [
      {
       "t": "The frontend runs on the client: HTML, CSS and JavaScript in a browser, or Swift and Kotlin in a native app.",
       "s": 34.24,
       "d": 8.828
      },
      {
       "t": "It renders state and captures input.",
       "s": 43.388,
       "d": 2.681
      },
      {
       "t": "It never holds secrets, because anything shipped to a device can be read.",
       "s": 46.389,
       "d": 4.624
      }
     ]
    },
    {
     "id": "l3",
     "s": 52.113,
     "e": 63.117,
     "vo": 9.904,
     "lines": [
      {
       "t": "The tap fires an event handler.",
       "s": 52.113,
       "d": 2.347
      },
      {
       "t": "The client turns the cart into JSON and sends an encrypted request to the backend: POST, slash orders.",
       "s": 54.78,
       "d": 7.237
      }
     ]
    },
    {
     "id": "l4",
     "s": 63.117,
     "e": 83.897,
     "vo": 19.68,
     "lines": [
      {
       "t": "The backend is a set of services running on servers.",
       "s": 63.117,
       "d": 3.664
      },
      {
       "t": "It authenticates the caller, validates the payload, enforces the business rules, charges the card through a payment provider, and orchestrates every step.",
       "s": 67.101,
       "d": 9.953
      },
      {
       "t": "Logic lives on the server because the server is the only place you control.",
       "s": 77.374,
       "d": 5.423
      }
     ]
    },
    {
     "id": "l5",
     "s": 83.897,
     "e": 100.69,
     "vo": 15.693,
     "lines": [
      {
       "t": "The data layer keeps state.",
       "s": 83.897,
       "d": 1.762
      },
      {
       "t": "A relational database, say Postgres, holds orders and inventory in tables.",
       "s": 85.979,
       "d": 5.556
      },
      {
       "t": "Caches keep hot answers close, object storage keeps photos and files, and a warehouse keeps history for analytics.",
       "s": 91.855,
       "d": 7.735
      }
     ]
    },
    {
     "id": "l6",
     "s": 100.69,
     "e": 119.433,
     "vo": 17.643,
     "lines": [
      {
       "t": "It happens inside one transaction.",
       "s": 100.69,
       "d": 2.7
      },
      {
       "t": "Select the stock, and lock the row.",
       "s": 103.709,
       "d": 2.441
      },
      {
       "t": "Subtract one.",
       "s": 106.47,
       "d": 1.218
      },
      {
       "t": "Insert the order.",
       "s": 108.008,
       "d": 1.347
      },
      {
       "t": "Commit.",
       "s": 109.676,
       "d": 0.708
      },
      {
       "t": "Either all of it happens, or none of it does.",
       "s": 110.704,
       "d": 2.778
      },
      {
       "t": "That's atomicity, and it's why the last loaf is sold exactly once.",
       "s": 113.802,
       "d": 4.531
      }
     ]
    },
    {
     "id": "l7",
     "s": 119.433,
     "e": 139.026,
     "vo": 18.493,
     "lines": [
      {
       "t": "The AI layer wraps a language model in an agent loop.",
       "s": 119.433,
       "d": 3.844
      },
      {
       "t": "It turns intent into a plan, calls the same backend APIs as tools, reads the results, and tries again until the goal is met.",
       "s": 123.597,
       "d": 9.382
      },
      {
       "t": "An agent is only as good as the APIs and the data it can reach.",
       "s": 133.299,
       "d": 4.627
      }
     ]
    },
    {
     "id": "l8",
     "s": 139.026,
     "e": 155.718,
     "vo": 15.593,
     "lines": [
      {
       "t": "Request in, response out.",
       "s": 139.026,
       "d": 2.144
      },
      {
       "t": "Client, API, services, database, and back, usually in a few hundred milliseconds.",
       "s": 141.49,
       "d": 5.925
      },
      {
       "t": "Each layer can be scaled, replaced and secured on its own.",
       "s": 147.735,
       "d": 4.013
      },
      {
       "t": "That separation is the whole trick.",
       "s": 152.069,
       "d": 2.55
      }
     ]
    },
    {
     "id": "l9",
     "s": 155.718,
     "e": 164.999,
     "vo": 4.981,
     "lines": [
      {
       "t": "The contract between these layers has a name.",
       "s": 155.718,
       "d": 3.061
      },
      {
       "t": "Next: the API.",
       "s": 159.1,
       "d": 1.6
      }
     ]
    }
   ]
  }
 }
}