TILs, snippets, debugging real y micro-artículos. Observaciones del trabajo diario con sistemas reales.
calcMode="paced" mantiene velocidad constante en recorridos de distancia variable.
calcMode="paced" hace que la velocidad de animación sea proporcional a la distancia de cada segmento del path, no al tiempo. Ideal para flujos que recorren distancias desiguales.
cursor() + LazyCollection para streaming — la memoria se mantiene constante sin importar el volumen.
Encontré el límite de Eloquent migrando datasets grandes. User::all() cargaba todo en memoria y PHP reventaba. La solución fue cursor() + LazyCollection para procesar en streaming — la memoria se mantuvo constante sin importar el volumen.// ❌ explota con 500k rows
$users = User::all();
foreach ($users as $user) {
Cada re-render de un componente Livewire puede disparar N+1 si no usas with() en la consulta.
Cada re-render de un componente Livewire puede disparar N+1 si no usas with() en la consulta. Laravel Debugbar muestra las queries por render cycle. La solución es siempre eager loading en el método render().
En Octane el proceso PHP persiste entre requests. El TTL expira en Redis, pero el in-memory cache del worker sigue sirviendo datos stale.
En Octane el proceso PHP persiste entre requests. El TTL expira en Redis, pero el in-memory cache del worker sigue sirviendo datos stale sin consultarlo. Solución: usar Cache::store('redis') directamente en vez del driver por defecto, o deshabilitar el in-memory layer de Octane para ese caché específico.
Las CSS custom properties pueden cambiar en runtime. Las variables Sass no existen en producción.
Las CSS custom properties pueden cambiar en runtime (dark mode, temas dinámicos). Las variables Sass no existen en producción — se compilan a valores estáticos. Para cualquier sistema de tokens que necesite responder a JS o media queries, las nativas son la única opción.
Con resolveRecordRouteBinding + panel extension puedes añadir páginas y acciones a cualquier Resource de plugin sin tocar su código.
Con resolveRecordRouteBinding + panel extension puedes añadir páginas y acciones a cualquier Resource de plugin sin tocar su código. Crea una clase que extienda el Resource del vendor y registra solo las páginas adicionales.
Si una operación tarda más de 1 segundo o puede fallar sin impactar al usuario, va a la cola.
Si una operación tarda más de 1 segundo o puede fallar sin impactar al usuario, va a la cola. Tres años de systems building han consolidado esa heurística. Correo, notificaciones, reportes, webhooks salientes — todo va a la cola. Lo que no: autenticación, validación, lectura de datos que el usuario necesita ver ahora.
Más de 240 cursos y 48 carreras para fortalecer desarrollo, producto, diseño y habilidades digitales con una ruta estructurada.
Enlace de afiliado — si entras desde aquí,
apoyas este sitio sin costo extra para ti.