
Nuestro viaje tecnológico en 2024
Cuando el cambio se convierte en una oportunidad
2024 fue aquel año que comenzó con esa sensación de "vamos a agitar las cosas por aquí". Y mira, ¡realmente lo hicimos! A principios de enero, enfrentamos un doble desafío: continuar el desarrollo de un sistema de consultas de psicología en línea para un cliente utilizando una tecnología completamente nueva para nosotros y, de paso, montar nuestro propio sistema de videoconferencia.
Después de años navegando en las aguas familiares de Angular, decidimos dar un salto al mundo de Vue.js con Nuxt. Fue como cambiar de coche en movimiento: sabes conducir, pero todos los botones están en lugares diferentes. Y como si esta aventura no fuera suficiente, también pensamos que podríamos crear nuestro propio sistema de videollamadas, independiente de servicios propietarios y sin restricciones de uso.
Fue entonces cuando conocimos a Jitsi, un amigo de código abierto que tenía todo lo que necesitábamos para la tarea. Montamos un servidor dedicado en Google Cloud y, ¡tchan-tchan... creamos nuestro propio rincón de videoconferencias! ¿Lo mejor? Quedó tan bien que terminamos abandonando Google Meet incluso en nuestras llamadas internas.
Lo curioso es que, a pesar de toda la transformación, mantuvimos al competente Firebase como socio para la base de datos, funciones serverless y hosting. Los primeros tres meses fueron intensos, ese momento «café + tutorial + más café» para acostumbrarnos a Vue.js y luego sumergirnos en Nuxt. El cambio trajo sus desafíos; después de todo, pasar de los servicios de Angular a la forma en que Vue maneja el estado es como aprender a escribir con la otra mano. Pero bueno, al menos seguíamos en el universo JavaScript, así que no era todo tan extraño para nosotros.
Una de las mayores victorias de este cambio fue finalmente lograr que el SSR (Server-Side Rendering) funcionara como deseábamos. Con Angular, era una historia complicada, pero con Vue/Nuxt? Fue como descubrir que hay un camino más corto para hacer el trabajo y que tenía mucho más sentido. En junio, ya teníamos la versión beta corriendo para el cliente, y el resultado fue tan bueno que decidimos: «¡esto es, vamos a migrar todo!», y comenzamos a planear la migración gradual de todos los módulos de nuestro ecosistema a Nuxt.
Giro Argumental: ¡Angular contraataca!
Pero luego, incluso a mitad de año, sucedió algo que nadie esperaba: ¡redescubrimos Angular! Todo comenzó cuando surgió la misión de actualizar nuestro módulo más antiguo y nostálgico: el Catálogo digital para grandes superficies y minoristas. Era como un coche antiguo en el garaje que a todos les encanta, pero que necesita una renovación general.
Como aún estábamos en esa fase de «cortejo» con Vue y Nuxt, decidimos mantener este proyecto específico en Angular. Y fue ahí donde ocurrió la magia. Al hacer las actualizaciones necesarias, descubrimos que Angular había evolucionado más de lo que imaginábamos: ¡parecía que habíamos reencontrado a un amigo de la infancia que se había vuelto mega fitness! El proyecto se volvió tan increíble que nos hizo replantear toda esa historia de "vamos a migrar todo a Vue/Nuxt".
Fue entonces cuando la ficha cayó: ¿por qué no usar lo mejor de ambos mundos? La idea de los Micro Front-ends encajó a la perfección: podíamos mantener lo que estaba funcionando bien en Angular y aún así desarrollar nuevas funcionalidades en Vue/Nuxt. ¿El resultado? Una segunda versión del catálogo digital que quedó impecable, corriendo lado a lado con los nuevos desarrollos en Vue. ¿Quién diría que nuestro ex-framework aún tenía tanto potencial?
Un blog para llamar nuestro
¿Conoces esa sensación de tener mil historias interesantes para contar y ningún lugar para compartirlas? En julio, decidimos resolver esto de una manera muy simple: ¡creamos nuestro propio blog de desarrollo, este mismo! Es como si fuera nuestro diario de a bordo, solo que mucho más nerd y lleno de código. (˶˃ ᵕ ˂˶)
La idea surgió de manera bastante natural. Estábamos allí, todos los días descubriendo cosas nuevas, lidiando con desafíos diferentes, aprendiendo horrores sobre AI y nuevas tecnologías... y pensamos: «Eh, esto daría para un blog increíble». ¿Y no es que realmente lo dio?
Desde entonces, hemos mantenido nuestro rincón virtual bastante activo, compartiendo un poco de todo: las novedades más calientes del mundo de la tecnología y la AI, esos problemas del día a día de los desarrolladores (todos los tienen, ¿verdad?), nuestras pequeñas y grandes victorias, y claro, algo de código y buenas prácticas. Es como un café con código, ¿entiendes? Solo que en formato de blog, de ahí el nombre elegido: DevCafé.
Y eso terminó convirtiéndose en un gran estímulo para el equipo. Ahora, además de desarrolladores, somos una especie de «influencers tech» (ok, tal vez exageré un poco). Pero hablando en serio, escribir para el blog nos ha hecho profundizar aún más en los temas. Después de todo, una cosa es saber hacer algo, otra muy diferente es explicarlo de una manera que todos entiendan.
¿Y sabes cuál fue el bonus inesperado? El blog terminó posicionando a Yes Marketing como una referencia tech en el mercado. ¿Quién diría que nuestras historias de código, café y depuración tendrían tanto éxito?
Realidad Aumentada: Cuando lo virtual encuentra el café
Mayo trajo un nuevo desafío para nuestro equipo: implementar la realidad aumentada en nuestro Catálogo digital. La idea era permitir a los clientes visualizar cómo quedarían las terrazas y el mobiliario de café en sus espacios reales. Comenzamos con el Model Viewer de Google, pero limitaba demasiado nuestras posibilidades.
¿Segunda tentativa? Babylon.js. ¡Parecía perfecto! Más recursos, más flexibilidad... hasta que nos dimos cuenta de que el cliente quería poder grabar videos panorámicos de las escenas creadas. Fue ese momento de "vuelve todo al inicio". Y fue ahí donde ocurrió la magia: ¡nuestro equipo de diseño tenía un as bajo la manga!
Descubrimos que en el equipo de diseño teníamos un verdadero maestro de Unity, de esos que respiran y sueñan con la herramienta. El mismo genio que ya venía haciendo unos juegos increíbles para nuestro módulo de Gamificación. Cuando le hablamos del proyecto, sus ojos brillaron de inmediato (¡y aunque no lo hubieran hecho)! Fue como encontrar la pieza que faltaba en el rompecabezas.
La colaboración fue de esas que dan envidia. Mientras nuestro diseñador-ninja de Unity hacía sus magias con la herramienta, creando una experiencia visual absurda, nuestro equipo de desarrollo entró como soporte técnico de peso. Trabajamos juntos para transformar eso en una aplicación nativa para Android e iOS, pero con una diferencia: en lugar de ser una app independiente, hicimos que funcionara como un plugin integrado en nuestro sistema web a través de deep links. Cuando el usuario hace clic para ver un producto en AR en nuestro catálogo - ¡puf! - la experiencia en Unity se abre como si fuera parte natural del flujo.
Para evitar ese molesto ir y venir entre aplicaciones, también implementamos una mini galería dentro del propio plugin. Así, después de entrar en la experiencia de AR, puede seguir añadiendo otros productos sin tener que volver al catálogo web. Es esa cosa: cuando el diseño y el desarrollo se unen, ¡la magia sucede!
¿Y qué resultó? Un sistema que permite posicionar varios objetos al mismo tiempo, redimensionar, reposicionar y además grabar videos mostrando toda la composición. El cliente quedó tan contento que aprobó el proyecto prácticamente al instante. ¿Y nosotros? Bueno, además de un producto increíble, ganamos un nuevo superpoder: ahora dominamos no solo Unity (gracias a nuestro colega diseñador), sino también todo el proceso de desarrollo nativo en Android con Java/Kotlin. ¿Quién diría que una asociación entre diseño y desarrollo podría dar tantos frutos?
El equipo crece y la IA entra en escena
Con tantos proyectos nuevos y la creciente demanda de integración con IA, era hora de expandir el equipo. Dimos la bienvenida a dos nuevos desarrolladores que trajeron esa energía fresca e ideas innovadoras para nuestros productos. Y hablando de IA, 2024 fue el año en que decidimos abrazar esta tecnología de una vez por todas. De hecho, muchos de los posts aquí en el blog tienen el enfoque en la IA porque forman parte de nuestro aprendizaje.
A partir de julio, adoptamos un enfoque multi-herramientas para la IA: ChatGPT de OpenAI, Claude de Anthropic y Gemini de Google. Gemini ha sido especialmente interesante por su integración natural con nuestra stack de Firebase a través de GenKit. En octubre, descubrimos Codeium con su LLM Cascade, que es como tener un desarrollador extra que ya conoce todo nuestro código y patrones.
¡Pero no nos quedamos ahí! En octubre, comenzamos a integrar la IA directamente en nuestros productos: paneles inteligentes, métricas automatizadas, reconocimiento de patrones en imágenes... Y hay más por venir: estamos desarrollando un sistema de entrenamiento de imágenes para validación de puntos de venta que debería estar listo en el primer semestre de 2025.
Al final del año, comenzamos a experimentar con Windsurf (un IDE basado en VSCode con el poder de Cascade por debajo) en proyectos más pequeños. Es impresionante cómo puede partir de un briefing y generar toda la estructura inicial del proyecto. Ahorramos semanas de desarrollo inicial y podemos centrarnos en lo que realmente importa: las reglas de negocio y la entrega de valor al cliente.
Mirando hacia 2025, nuestra misión ha cobrado aún más claridad: continuaremos evolucionando nuestra arquitectura de Micro Front-ends, manteniendo lo mejor de cada framework, ya sea Angular o Vue/Nuxt. Queremos profundizar aún más nuestras integraciones con IA, especialmente en métricas y asistentes para marketing, manteniendo siempre ese equilibrio perfecto entre innovación y estabilidad. Ha sido un viaje increíble, lleno de sorpresas (algunas muy agradables, como nuestro redescubrimiento de Angular), desafíos superados y mucho café. Pero, sobre todo, ha sido gratificante ver cómo cada cambio y nueva tecnología que abrazamos se ha traducido en valor real para nuestros clientes y crecimiento para nuestro equipo.
La tecnología no deja de evolucionar, y nosotros en Yes Marketing tampoco. Estamos entusiasmados por ver lo que 2025 traerá y listos para seguir innovando, aprendiendo y creciendo juntos. Aprendimos que en el mundo del desarrollo, a veces, el camino más interesante no es necesariamente migrar todo a lo nuevo, sino encontrar ese equilibrio perfecto entre lo que ya funciona bien y las novedades que vienen.