Fuentes de datos dinámicas
Cómo transformar tus prototipos estáticos en aplicaciones que viven, respiran y evolucionan con sus usuarios
¡Volvemos una semana más con vibe coding para dummies!
Aunque no te lo parezca, ya ha pasado algo más de un mes desde la primera publicación, ¡así que estamos de celebración!
Es como cuando, de jóvenes (o no tan jóvenes), celebrábamos cada mes de relación con nuestra pareja ❤️
Si te soy sincero, no daba un duro por mi.
La constancia siempre ha sido mi punto débil, pero compartir mis conocimientos y ver que tienen "algo" de impacto, me llena de orgullo y satisfacción 😊
Y ver que cada semana se unen más personas, me dan ánimos para seguir compartiendo mi experiencia.
Bueno, al lío.
¿De dónde venimos y hacia dónde vamos?
Venimos de tres semanas (sin contar el post de presentación) en las que básicamente hemos visto teoría.
La primera semana vimos los tres pilares fundamentales (según yo) de un viber:
Estructurar antes de construir
Saber qué pedirle a la IA paso a paso
Explorar herramientas con propósito, no por FOMO
La segunda semana pasamos a ver el PRD conversacional, esa hoja de ruta que nace de conversar con tu IA favorita y evita que tu proyecto se convierta en Frankenstein.
Por último, la semana pasada pasamos del PRD al producto "real".
Y sí, pongo comillas ya que lo que construimos fue una página web estática con ChatGPT con los datos hardcodeados.
En programación, hardcodear se refiere a la práctica de incluir valores directamente en el código fuente en lugar de obtenerlos de forma dinámica.
¿Cómo podemos obtener los datos de forma dinámica?
Aquí empieza el bloque de "hacia dónde vamos" 😀
Fuentes de datos dinámicos
Los datos dinámicos son información que cambia con el tiempo y se actualizan automáticamente en tu aplicación.
A diferencia de los datos "hardcodeados", los datos dinámicos se obtienen de fuentes externas.
Por ejemplo, en el caso que vimos la semana pasada, en el vídeo te mostré como podíamos introducir manualmente las urls sociales a una página web tipo linktree.
Pero, ¿qué ocurre cuando este servicio lo queremos expandir y que otras personas puedan añadir sus propios links?
No podemos (bueno, sí podríamos, pero sería poco usable) tener decenas o centenares de archivos estáticos con los datos hardcodeados de todos los usuarios.
Imagínate que alguien quiere cambiar una url, su nombre o cualquier otro dato de su perfil.
Sería un rollazo, ya que (imagina) nos debería enviar un email, luego tendríamos que ir al código y cambiar manualmente ese dato.
No es viable.
Cuando hablamos de datos dinámicos, tenemos tres opciones principales para alimentar nuestra aplicación.
Opción 1: APIs Externas - Usar datos de otros
Una API es básicamente un servicio que alguien más ha creado y mantiene, y tú puedes usar sus datos.
Por ejemplo, si quieres mostrar el tiempo en tu app, no necesitas instalar estaciones meteorológicas por todo el mundo.
Simplemente usas la API del tiempo de Google, le preguntas "¿qué tiempo hace en Barcelona?" y te responde con la temperatura actual.
Otros ejemplos típicos son APIs de noticias (para mostrar los últimos titulares), APIs de libros (para buscar información sobre cualquier libro), o APIs de restaurantes (para mostrar reseñas y horarios).
Lo bueno de las APIs externas es que accedes a información súper especializada sin esfuerzo.
Lo malo es que dependes de que ese servicio funcione siempre y tenga los datos actualizados.
Opción 2: Tu propia base de datos - Guardar lo tuyo
Una base de datos es tu propio almacén digital donde guardas toda la información importante de tu aplicación.
Siguiendo con el ejemplo del linktree, aquí es donde guardamos toda la información de los usuarios.
Sus nombres, sus enlaces, sus fotos de perfil, sus preferencias de colores, etc.
Cuando un usuario quiere cambiar su nombre, tu aplicación va a la base de datos, encuentra su perfil, actualiza el nombre, y listo.
Inmediatamente se ve reflejado en su página sin que tú tengas que tocar ni una línea de código.
Para vibe coders, las opciones más populares son Supabase (súper fácil de configurar) o Firebase (de Google).
Lo bueno es que tienes control total sobre tus datos y no dependes de nadie.
Lo malo es que tienes que configurarlo y mantenerlo tú.
Opción 3: Servicios híbridos - Lo mejor de ambos mundos
Algunos servicios actúan como una mezcla entre una API y una base de datos.
Te dan la facilidad de uso de una API pero también te permiten editar y organizar los datos fácilmente.
Por ejemplo, puedes usar Notion como base de datos para tu blog.
Escribes tus artículos cómodamente en Notion (con su editor visual que ya conoces) y luego tu web va a buscar esos artículos via API.
Cambias algo en Notion y automáticamente se actualiza en tu web.
O puedes usar Google Sheets como base de datos para proyectos simples.
Imagínate una web que muestra restaurantes recomendados: tienes la información en una hoja de cálculo súper fácil de editar, y tu web la lee automáticamente.
¿Cuándo usar cada opción?
La decisión depende del tipo de datos que necesites y de quién los va a gestionar.
Usa APIs externas cuando:
Necesites información que cambia constantemente y que mantiene otra persona.
El tiempo, noticias, precios de productos, información de libros o películas, datos de redes sociales.
Básicamente, cuando no tiene sentido que tú mantengas esa información porque ya existe un servicio especializado.
Usa tu propia base de datos cuando:
La información sea específica de tu aplicación.
Usuarios, configuraciones, contenido creado por tus usuarios, históricos de acciones, cualquier cosa que sea única de tu proyecto.
Es decir, datos que solo tu aplicación genera y necesita.
Usa servicios híbridos cuando:
Quieras empezar rápido o cuando personas no técnicas vayan a editar los datos.
Contenido de blogs, listas de productos, información de empresa, datos que cambian ocasionalmente y que prefieres editar en una interfaz familiar.
¿Qué ocurre en una aplicación real?
En la práctica, la mayoría de aplicaciones usan una combinación de las tres opciones.
Imagínate una app de fitness personal.
Usa una API externa para buscar información nutricional de alimentos (proteínas, calorías, etc.).
Usa su propia base de datos para guardar los entrenamientos del usuario, su progreso, sus objetivos.
Y podría usar Notion como servicio híbrido para gestionar las rutinas de ejercicios, que el entrenador puede editar fácilmente.
El usuario abre la app, ve su progreso personal (desde la base de datos), busca un alimento y ve sus calorías (desde la API externa), y sigue una rutina (desde Notion).
Todo funciona de forma transparente, pero por detrás están trabajando tres fuentes de datos diferentes.
Esta semana, por temas de timing, no me ha dado tiempo de grabarte un vídeo en condiciones aplicando estos conceptos, ¡pero lo tengo pendiente!
Lo voy a compartir en los próximos días en Vibe Coding para Dummies en YouTube, así que si aún no lo has hecho, te invito a suscribirte y activar las notificaciones.
Tu reto para esta semana: Conviértete en detective de APIs
Como esta semana hemos hablado de teoría, tu misión es empezar a familiarizarte con el ecosistema de datos dinámicos.
El reto es simple pero muy valioso:
Encuentra 3-4 APIs diferentes que te parezcan interesantes e investiga:
Qué datos proporcionan (clima, libros, noticias, etc.)
Si son gratuitas o de pago (y qué límites tienen)
Qué tipo de aplicación podrías crear con esos datos
Si requieren registro o puedes usarlas directamente
Algunas sugerencias para empezar:
JSONPlaceholder - Datos fake perfectos para prototipos
OpenWeather - Datos meteorológicos
The Cat API - Fotos aleatorias de gatos (sí, existe)
Google Books API - Información de libros
NewsAPI - Noticias de todo el mundo
Pero no te quedes solo con estas.
Busca APIs relacionadas con tus intereses: deportes, cocina, música, finanzas, tecnología...
¿Dónde buscar más APIs?
Public APIs GitHub - Lista gigante de APIs públicas
RapidAPI - Marketplace de APIs
ProgrammableWeb - Directorio de APIs
El objetivo no es usar las APIs todavía (eso viene la semana que viene).
Solo quiero que te familiarices con la variedad de datos que existen y empieces a pensar en qué podrías crear.
Bonus points: Si encuentras una API que te emocione especialmente, compártela en LinkedIn etiquetándome. Me encanta descubrir APIs nuevas y originales.
¿Por qué es importante este ejercicio?
Porque muchas veces limitamos nuestras ideas a lo que conocemos.
Cuando veas la cantidad de datos disponibles ahí fuera, se te van a ocurrir ideas de aplicaciones que ni sabías que eran posibles.
Y esa es la verdadera magia del vibe coding: conectar datos de formas creativas para resolver problemas reales.
¡Y hasta aquí la newsletter de esta semana!
Si te ha quedado alguna duda, escribe un comentario o mándame un mensaje, estaré encantado de ayudarte.
Si tienes un proyecto en mente o te has atascado en algún punto, puedes agendar una llamada de 30 minutos gratuita conmigo a través de este enlace: https://calendly.com/polmarza/toma-de-contacto


