
Escuchar este post
Selecciona una voz y genera audio para escuchar este post
Hemos hablado mucho sobre cómo los asistentes de IA pueden revolucionar la forma en que escribimos código, especialmente con lenguajes como Elixir y frameworks como Phoenix. Pero, como en toda herramienta poderosa, es crucial entender sus fortalezas y debilidades para usarla de la manera más efectiva.
Tu asistente de IA es un genio construyendo APIs (el "backend"), pero le cuesta un poco más cuando se trata del frontend (la parte visual de tu aplicación).
Si estás empezando a usar la IA para programar, esta es una de las mejores recomendaciones que puedo darte: empieza construyendo APIs.
¿Qué es el Backend (APIs) y por qué la IA lo Adora?
Imagina que tu aplicación web es un restaurante. El frontend es el comedor, la decoración, el menú y el camarero que interactúa directamente con el cliente. El backend es la cocina, el almacén, los cocineros y el sistema de pedidos que gestiona los ingredientes y prepara la comida.
Una API (Application Programming Interface) es como el sistema de pedidos de la cocina. Es un conjunto de reglas y herramientas que permite que diferentes partes de una aplicación (o incluso diferentes aplicaciones) se comuniquen entre sí. Por ejemplo, cuando una aplicación móvil pide información a un servidor, lo hace a través de una API.
¿Por qué la IA es tan buena en esto?
- Lógica Pura y Estructurada: El backend se basa en la lógica de negocio, el manejo de datos y la comunicación estructurada. Esto se traduce en código que sigue patrones muy definidos: definir modelos de datos, crear funciones para guardar o recuperar información, validar entradas, manejar errores. Estos patrones son altamente predecibles y repetitivos.
- Menos Ambigüedad Visual: El backend no tiene que preocuparse por cómo se ve algo, solo por cómo funciona. No hay colores, tamaños de fuente, diseños responsivos o animaciones. Esto elimina una capa enorme de complejidad y subjetividad que a los LLMs les cuesta manejar.
- Consistencia del Lenguaje: Como hemos visto con Go y Elixir, los lenguajes de backend suelen tener una sintaxis más estricta y un ecosistema más unificado. Esto significa que los LLMs han sido entrenados con un corpus de código backend muy consistente, lo que les permite generar soluciones robustas y idiomáticas.
Cuando le pides a un LLM que cree una API para gestionar usuarios, sabe exactamente qué hacer: definir un modelo User
, crear funciones create_user
, get_user
, update_user
, delete_user
, y cómo exponerlas a través de rutas HTTP. Es un problema bien definido y con soluciones estandarizadas.
¿Qué es el Frontend y por qué la IA Lucha un Poco Más?
El frontend es todo lo que el usuario ve y con lo que interactúa directamente: los botones, los menús, las imágenes, los formularios, el diseño de la página. Es la "cara" de tu aplicación.
¿Por qué es más difícil para la IA?
- Naturaleza Visual y Subjetiva: El diseño es subjetivo. Lo que es "bonito" o "intuitivo" para una persona puede no serlo para otra. Los LLMs no tienen "ojos" ni "gusto". Pueden generar código HTML y CSS, pero a menudo carecen de la coherencia estética o la usabilidad que un diseñador humano o un desarrollador frontend experimentado aportaría.
- Fragmentación del Ecosistema: El mundo del frontend es un torbellino de frameworks (React, Vue, Angular, Svelte), librerías de componentes (Material UI, Bootstrap, Tailwind CSS), y herramientas de construcción (Webpack, Vite). Cada uno tiene sus propias convenciones y formas de hacer las cosas. Para un LLM, esto es como intentar hablar diez dialectos diferentes a la vez, con el riesgo de mezclar frases de uno con la gramática de otro.
- Interactividad Compleja y Estado: El frontend moderno es altamente interactivo. Gestionar el estado de la interfaz de usuario (qué botón está activo, qué formulario se está rellenando, qué datos se muestran) y sincronizarlo con el backend es una tarea compleja. Aunque LiveView en Elixir simplifica esto enormemente, en el ecosistema JavaScript tradicional, es una fuente constante de desafíos.
Un LLM puede generar un componente React, pero ¿encaja con el resto de tu diseño? ¿Usa las convenciones de tu equipo? ¿Es accesible para todos los usuarios? Estas son preguntas que van más allá de la simple generación de código.
La Recomendación Honesta: Empieza por el Backend
Si estás utilizando un asistente de IA para aprender o para acelerar tus proyectos, mi consejo es claro:
- Domina la construcción de APIs y lógica de backend con la IA. Es donde obtendrás los resultados más rápidos, fiables y de mayor calidad. Te permitirá construir una base sólida para tu aplicación con una eficiencia asombrosa.
- Cuando llegues al frontend, sé más crítico. Utiliza la IA para generar componentes básicos, estructuras HTML, o para ayudarte con CSS. Pero prepárate para revisar, refinar y aplicar tu propio criterio de diseño y usabilidad. Si usas LiveView, la IA te ayudará mucho más, ya que la lógica sigue siendo Elixir, pero la parte visual (HTML/CSS) seguirá requiriendo tu ojo humano.
Entender las fortalezas de tu asistente de IA te permitirá aprovecharlo al máximo. No es una varita mágica para todo, pero es un poder increíble para construir la columna vertebral de tus aplicaciones. ¡A construir eso que siempre soñaste!
No dejes de suscribirte para que no te pierdas todo lo nuevo.
Abrazo. Bliss. 🤓

Por qué los frameworks tradicionales están condenados en la era de la IA generativa
Checa este otro Post
