Software Internationalization Challenges and Solutions

This ad is not shown to multipass and full ticket holders
JSNation US
JSNation US 2025
November 17 - 20, 2025
New York, US & Online
See JS stars in the US biggest planetarium
Learn More
In partnership with Focus Reactive
Upcoming event
JSNation US 2025
JSNation US 2025
November 17 - 20, 2025. New York, US & Online
Learn more
Bookmark
Rate this content

Cada desarrollador sabe que i18n es doloroso. Encontramos la cura en forma de control de versiones. 

Hablaremos sobre: 
- ¿cuál es el problema *real* con i18n?
- ¿cómo resolver el problema de orquestación?
- demostración de colaboración e2e entre desarrolladores, diseñadores y traductores

This talk has been presented at JSNation US 2024, check out the latest edition of this JavaScript Conference.

Samuel Stroschein
Samuel Stroschein
14 min
21 Nov, 2024

Comments

Sign in or register to post your comment.
Video Summary and Transcription
En esta charla, aprenderás sobre el problema de internacionalizar software y cómo el Lake Exchange Control System lo resuelve. Internacionalizar software implica adaptarlo para diferentes mercados y demografías, lo que incluye diseño, traducciones y monedas. El objetivo es permitir que cualquier empresa de software se globalice en un día. El desafío radica en la coordinación requerida entre desarrolladores, diseñadores, traductores y otros interesados. El proceso actual involucra un pipeline complejo y procesos manuales para la entrega de traducciones. La clave para resolver este desafío es un formato de archivo interoperable y un sistema de control de cambios llamado Lix, que permite la colaboración y automatización. Lix tendrá un pre-lanzamiento público el 16 de diciembre, seguido por la especificación de archivo .inlang en el primer trimestre de 2025.

1. Introduction to Internationalizing Software

Short description:

En esta charla, aprenderás sobre el problema de la internacionalización del software y cómo el Lake Exchange Control System lo resuelve. Internacionalizar software implica adaptarlo para diferentes mercados y demografías, lo que incluye diseño, traducciones y monedas. El objetivo es permitir que cualquier empresa de software se globalice en un día.

Muy bien, soy Samuel, y después de esta charla, vas a saber cuál es el verdadero problema con la internacionalización del software y cómo algo llamado el Lake Exchange Control System es capaz de resolver este gigantesco problema que ha existido durante décadas.

Comencemos por el principio. ¿Qué era E1N del software? Significa que estás adaptando tu producto de software para diferentes mercados y demografías. Eso significa diseño, mensajes, traducciones, pagos y monedas. Usualmente lo haces porque quieres expandirte a diferentes mercados, pero no solo es expandirse a diferentes mercados. Puede ser que seas una empresa estadounidense y quieras dirigirte a la población de habla hispana en los EE.UU.

de manera más efectiva. Para hacerlo, tienes que internacionalizar, cambiar el diseño, implementar traducciones, yada yada. Ahora, en ambos casos, ya sea expansión global o dirigirse a una demografía en un mercado específico de manera más efectiva, todo se reduce al dinero. Por supuesto que sí. ¿Por qué? Bueno, si puedo dirigirme a las personas de manera más efectiva, más dinero. Si puedo expandirme a diferentes países, eso significa más clientes, más dinero.

2. Challenges of Internationalization Coordination

Short description:

Hay una herramienta que permite a las empresas adaptar su software a múltiples mercados en un día. El problema con la internacionalización es la coordinación requerida entre desarrolladores, diseñadores, traductores y otras partes interesadas. Involucra un proceso complejo y manual para la entrega de traducciones. El proceso incluye el uso de un editor de traducción asistida por computadora y la coordinación con diseñadores para ajustes de la interfaz de usuario.

Esa es una declaración audaz. Eres una empresa alemana, por ejemplo, y hay una herramienta que te permite adaptar tu pieza de software al mercado estadounidense, mercado brasileño, mercado indio, mercado chino, todo en un día. Ese es el objetivo, eso es para lo que tenemos que encontrar una solución, y en eso hemos estado trabajando durante los últimos dos años.

Ahora, ¿por qué hacemos esto de nuevo? Bueno, te ayudamos a adquirir más clientes, llevar tu producto al mundo, y en última instancia ayudarte a ganar más dinero. Esa es una gran propuesta de negocio.

Bien, ¿cuál es el problema real con la internacionalización? ¿Por qué hemos estado trabajando en ello durante más de dos años y la propuesta de negocio tiene tanto sentido, así que pensarías que ya existe algo por ahí, ¿verdad? La respuesta es no, porque el problema está algo oculto.

Verás, todos creen que la internacionalización es bastante simple. Haces algunas traducciones, aceptas una moneda diferente, tal vez ajustas el diseño. Es bastante simple, ¿verdad? La respuesta es sí. Si lo miras de forma aislada, eso no es realmente complicado. Lo que es complicado, sin embargo, es que todo necesita ser coordinado. La internacionalización del software es un problema de coordinación donde terminas con un proceso como este, donde de repente te das cuenta de que necesitas coordinar los esfuerzos de internacionalización entre desarrolladores, diseñadores, traductores, auditores, gerentes de producto y todos los demás que tocan el producto en un proceso que puede volverse extremadamente complejo extremadamente rápido.

Así que pasemos por ello como un ejemplo. Imagina que eres un desarrollador ahora mismo, y estás implementando una nueva pantalla de inicio de sesión. Lo que piensas como desarrollador es, la internacionalización es simple, ¿verdad? Solo necesito implementar algunas funciones T, llamarlas en mi código, y lo que hacen es buscar un mensaje en un archivo JSON, y eso es todo. Eso es internacionalización, ¿verdad? Bueno, para el desarrollador en este caso, sí, eso es probablemente todo. Pero entonces, ¿qué sucede después, verdad? La pantalla de inicio de sesión está implementada. ¿Dónde están las traducciones? Bueno, no existen en este punto. Así que tiene que haber alguien que le diga a los traductores, tienes que empezar a trabajar. Aquí es donde ya se desmorona porque ¿quién les dice que el traductor necesita empezar a trabajar? Es un proceso manual.

De acuerdo, por ahora, es un proceso manual. Los traductores se ponen a trabajar, ¿y qué es esto? Están trabajando en una aplicación diferente. Nunca había visto eso antes. Así que este es un editor CAT, editor de traducción asistida por computadora, y proporciona a los traductores una interfaz de usuario para crear traducciones. Suena simple, ¿verdad? Pero, ¿cómo llegan las traducciones del desarrollador al traductor y luego de vuelta al desarrollador? Hay un paso de entrega manual que incluye importar y exportar todas las traducciones de todas esas dos herramientas. Así que la biblioteca E1N y el editor CAT. Ya estás viendo que, oh, mierda, sí, tenemos mucho que coordinar. Pero, por supuesto, no termina ahí porque una vez que los traductores han terminado, ¿qué sucede después, verdad? Lo más probable es que los diseñadores necesiten revisarlo. Los diseñadores necesitan saber si las traducciones ahora están desbordadas y necesitan ajustar las interfaces de usuario. Así que todo el juego comienza de nuevo.

3. Challenges of Coordination and Integration

Short description:

Los traductores necesitan ser compatibles con la aplicación de los diseñadores. El proceso de coordinación actual implica cientos de integraciones, lo que lleva a la pérdida de datos. La coordinación del pipeline es un desafío significativo.

Ahora los traductores de alguna manera necesitan informar a los diseñadores y ser compatibles con la aplicación que los diseñadores usan. En este caso, quieren ver directamente en su herramienta de pantalla de UI si las traducciones funcionan para la UI. Y en este caso, está bien, les et vos creations parlent tous les langues. Lo siento, gente francesa. Están decidiendo, sí, funciona. Así que lo envían de vuelta a los traductores y así sucesivamente.

Ya vemos un problema importante aquí. El problema principal es que, sí, necesitamos coordinar entre todas esas personas, pero cada uno tiene un trabajo diferente. Los desarrolladores tienen el trabajo de una biblioteca e1n donde necesitan asegurarse de que las traducciones se muestren. Eso es muy diferente del trabajo de los traductores que, ya sabes, tienen el trabajo de crear y gestionar traducciones. Lo mismo ocurre con los diseñadores. Tienen un trabajo diferente y su trabajo es asegurarse de que la UI funcione en todos los mercados en los que la aplicación o pieza de software está activa. Lo mismo se aplica a los auditores, gerentes de producto y todos los demás. Todos tienen una aplicación de elección para su trabajo.

Y el problema es que el status quo actual es que, sí, hay buenas soluciones para desarrolladores. Y, sí, hay buenas soluciones para diseñadores y para traductores. Auditores no en este momento y gerentes de producto también inestables. Pero para desarrolladores, diseñadores y traductores, existen buenas soluciones. El problema es que se requieren cientos de integraciones entre ellos para lograr que todo se haga y cualquier integración siempre significa que hay una pérdida de datos. Correcto. Esta aplicación dice algo que esta aplicación no entiende y el traductor dice algo que los diseñadores no entienden. Todo explota. Recuerda, nuestro objetivo es ayudar a una empresa a globalizarse en un día. Si tenemos este problema, cientos de integraciones, eso tomará más de un día. Así que esto no funcionará. El segundo problema, sin embargo, es el pipeline. Correcto. Es bueno si tienes una aplicación que funciona para todo, pero necesitas coordinar este pipeline. Y esto es algo donde nosotros como ingenieros de software y, ya sabes, la audiencia es principalmente desarrolladores en este momento. Ya tenemos un sistema así.

4. CI CD Pipelines and Change Control System

Short description:

El control de versiones y los pipelines de CI CD juegan un papel crucial en la internacionalización del software. Cada etapa del pipeline, desde la creación de traducciones hasta la revisión de diseño y la auditoría, asegura que se obtengan las aprobaciones necesarias antes de desplegar al usuario.

Se llama Control de Versiones y pipelines de CI CD. Sabemos exactamente cuándo hay algo mal en el código. Aplica los mismos principios ahora a la internacionalización del software y rápidamente te das cuenta de que si estás implementando una pantalla de inicio de sesión, debería haber un pipeline de CI CD ejecutándose que te diga oye, escucha, falta una traducción. Los traductores necesitan crear las traducciones. Y una vez que los traductores han terminado, otro pipeline se ejecuta que dice, oye, los diseñadores ahora necesitan revisar el diseño. Y después de que los diseñadores han aprobado la revisión, pasa a la auditoría. Y solo cuando la auditoría lo aprueba, porque no quieres estar legalmente en problemas en algunas regiones. Si tu proyecto se vuelve grande, cada texto, todo lo que muestras al usuario será auditado. Solo cuando la auditoría dice sí, entonces los desarrolladores dicen sí, los traductores dicen sí, los diseñadores dicen sí y la auditoría dice sí, entonces lo despliegas al usuario. Eso es CI CD en resumen. Y hemos tenido eso durante los últimos 10 años en la ingeniería de software.

5. Interoperable File Format and Lix Change Control

Short description:

Para lograr el objetivo de hacer que una empresa sea global en un día, se necesitan dos cosas. Primero, un formato de archivo interoperable para aplicaciones que elimine integraciones e incompatibilidades. Segundo, un sistema de control de cambios llamado Lix, que es como el control de versiones pero diseñado específicamente para la internacionalización del software. El formato de archivo Inlang proporciona una solución, permitiendo que todas las aplicaciones trabajen sobre él sin importación-exportación. Al combinar Inlang con Lix, se genera un gráfico de cambios para cada cambio en el archivo, lo que permite la colaboración y automatización. A diferencia de los sistemas de control de versiones tradicionales, Lix se ejecuta en el navegador web y comprende cambios en varios tipos de archivos, incluidos los archivos binarios.

OK, en conclusión, ¿cómo podemos alcanzar el objetivo de hacer que una empresa sea global en un día? Se necesitan dos cosas. Primero, se necesita un formato de archivo interoperable para aplicaciones. Necesitamos un formato de archivo donde cada aplicación pueda trabajar sobre él. No más integraciones o incompatibilidades entre aplicaciones. Segundo, necesitamos algo como el control de versiones que tienen los ingenieros de software, pero ahora lo necesitamos en el contexto de la internacionalización del software. Y llamamos a este sistema Lix, el sistema de control de cambios. Por qué lo llamamos un sistema de control de cambios y no un sistema de control de versiones, lo explicaré en un segundo.

Primero, veamos el formato de archivo interoperable para aplicaciones. Esta es la solución que estamos esbozando con Inlang. Será un formato de archivo abierto, y puedes construir aplicaciones sobre él para todas las personas y equipos que están involucrados en el pipeline de internacionalización. El gran beneficio es que todas las aplicaciones que la gente usa, simplemente abren el mismo archivo. No hay importación-exportación entre todas esas aplicaciones, lo que elimina enormemente la sobrecarga y asegura que no haya pérdida de datos entre las aplicaciones. Comparado con el antes y el después, así que está el status quo actual, existen buenas soluciones de polling para desarrolladores, tal vez diseñadores, tal vez traductores, pero realmente quieres un formato de archivo para simplemente construir todas las aplicaciones sobre él porque entonces obtienes interoperabilidad. Bien, eso es hermoso.

Como mencioné, necesitas una segunda pieza, ¿verdad? Resolver la pieza de la aplicación es una cosa. ¿Cómo resolvemos el problema de CICD? Bueno, nuestra idea es que tendrás este formato de archivo Inlang, y vamos a tener este sistema de control de cambios Lix, y podrás arrastrar y soltar este archivo Inlang en el sistema de control de cambios, y lo que obtienes es control de cambios. Lo que es control de cambios, obtendrás un gráfico de cambios para todo lo que sucedió en ese archivo Inlang. Así que alguien cambió la traducción, lo sabes. La auditoría lo aprobó, lo sabes. Y con esa información de cambio, puedes comenzar a construir colaboración basada en archivos. Esto es muy novedoso, nunca visto antes, pero también puedes comenzar a automatizar enormemente eso. Lo que nosotros como ingenieros de software tenemos con CICD, ahora lo estamos llevando a la internacionalización, localización, globalización, como quieras llamarlo, del software a través del sistema de control de cambios Lix. ¿Por qué se llama control de cambios y no control de versiones? Porque se ejecuta en el navegador web, que es un diferenciador, pero segundo, también comprende cambios en todo tipo de archivos. No solo funciona para archivos de texto. El archivo Inlang es un archivo binario y el sistema de control de cambios Lix es capaz de comprender lo que cambió en este archivo binario y es capaz de hacer eso para cualquier otro archivo binario que puedas imaginar a través de plugins. Así que lo llamamos control de cambios porque comprende cambios en archivos y no solo los versiona. Comprende que la traducción en este archivo binario cambió. Bien. Así que eso es bastante bueno. Ahí vamos.

6. Solving Internationalization and Lix Launch

Short description:

Para resolver la internacionalización del software, se necesita un formato de archivo interoperable para construir un ecosistema de aplicaciones para varios roles. Además, el sistema de control de cambios Lix permite la coordinación y control de cambios. Después de más de dos años de desarrollo, se lanzará una pre-lanzamiento público de Lix el 16 de diciembre, seguido de la especificación del archivo .inlang en el primer trimestre de 2025. La internacionalización del software se volverá más sencilla con Lix, lo cual no solo es beneficioso para la internacionalización del software. Sigue a Inlang HQ o Lix CCS en Twitter para actualizaciones.

Entonces, para recapitular, lo que necesitas para resolver la internacionalización del software es primero un archivo interoperable, que sea abierto para que las aplicaciones puedan construir sobre él y emerja un ecosistema. Un ecosistema de aplicaciones para traductores, diseñadores, auditores, y así sucesivamente. Y segundo, necesitas poder controlar todos los cambios y coordinar entre todos esos diferentes grupos. Y para eso estamos construyendo el sistema de control de cambios Lix.

Bien. ¿Por qué es esto hermoso? Porque obtienes ese gráfico de cambios y así sucesivamente. Hemos estado en esto por más de dos años y tenemos un prototipo del archivo Inlang de esto, que algunas personas ya usan. Está en forma de un directorio, pero me complace anunciar que el 16 de diciembre, vamos a lanzar una pre-lanzamiento público del sistema de control de cambios Lix. Como mencioné, no solo funcionará para archivos Inlang, sino para todo tipo de archivos que puedas imaginar y podrás construir tus propios plugins y obtener control de cambios para ello. Y luego, en el primer trimestre de 2025, seguiremos con la especificación del archivo .inlang que nuestros usuarios actuales aún no han visto. Pero para todos los demás, esta será la versión final 1.

0, por así decirlo, del ecosistema Inlang y formato de archivo. Bien. Espero que hayas aprendido un poco de la charla. Si te llevas algo de esto, la internacionalización del software se volverá realmente simple y el sistema de control de cambios Lix no solo es beneficioso para la internacionalización del software.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Escalando con Remix y Micro Frontends
Remix Conf Europe 2022Remix Conf Europe 2022
23 min
Escalando con Remix y Micro Frontends
Top Content
This talk discusses the usage of Microfrontends in Remix and introduces the Tiny Frontend library. Kazoo, a used car buying platform, follows a domain-driven design approach and encountered issues with granular slicing. Tiny Frontend aims to solve the slicing problem and promotes type safety and compatibility of shared dependencies. The speaker demonstrates how Tiny Frontend works with server-side rendering and how Remix can consume and update components without redeploying the app. The talk also explores the usage of micro frontends and the future support for Webpack Module Federation in Remix.
Enrutamiento en React 18 y más allá
React Summit 2022React Summit 2022
20 min
Enrutamiento en React 18 y más allá
Top Content
Routing in React 18 brings a native app-like user experience and allows applications to transition between different environments. React Router and Next.js have different approaches to routing, with React Router using component-based routing and Next.js using file system-based routing. React server components provide the primitives to address the disadvantages of multipage applications while maintaining the same user experience. Improving navigation and routing in React involves including loading UI, pre-rendering parts of the screen, and using server components for more performant experiences. Next.js and Remix are moving towards a converging solution by combining component-based routing with file system routing.
Sistemas de Diseño: Caminando la Línea Entre Flexibilidad y Consistencia
React Advanced 2021React Advanced 2021
47 min
Sistemas de Diseño: Caminando la Línea Entre Flexibilidad y Consistencia
Top Content
The Talk discusses the balance between flexibility and consistency in design systems. It explores the API design of the ActionList component and the customization options it offers. The use of component-based APIs and composability is emphasized for flexibility and customization. The Talk also touches on the ActionMenu component and the concept of building for people. The Q&A session covers topics such as component inclusion in design systems, API complexity, and the decision between creating a custom design system or using a component library.
Entendiendo la Arquitectura Fiber de React
React Advanced 2022React Advanced 2022
29 min
Entendiendo la Arquitectura Fiber de React
Top Content
This Talk explores React's internal jargon, specifically fiber, which is an internal unit of work for rendering and committing. Fibers facilitate efficient updates to elements and play a crucial role in the reconciliation process. The work loop, complete work, and commit phase are essential steps in the rendering process. Understanding React's internals can help with optimizing code and pull request reviews. React 18 introduces the work loop sync and async functions for concurrent features and prioritization. Fiber brings benefits like async rendering and the ability to discard work-in-progress trees, improving user experience.
Componentes de Full Stack
Remix Conf Europe 2022Remix Conf Europe 2022
37 min
Componentes de Full Stack
Top Content
RemixConf EU discussed full stack components and their benefits, such as marrying the backend and UI in the same file. The talk demonstrated the implementation of a combo box with search functionality using Remix and the Downshift library. It also highlighted the ease of creating resource routes in Remix and the importance of code organization and maintainability in full stack components. The speaker expressed gratitude towards the audience and discussed the future of Remix, including its acquisition by Shopify and the potential for collaboration with Hydrogen.
Thinking Like an Architect
Node Congress 2025Node Congress 2025
31 min
Thinking Like an Architect
Top Content
In modern software development, architecture is more than just selecting the right tech stack; it involves decision-making, trade-offs, and considering the context of the business and organization. Understanding the problem space and focusing on users' needs are essential. Architectural flexibility is key, adapting the level of granularity and choosing between different approaches. Holistic thinking, long-term vision, and domain understanding are crucial for making better decisions. Effective communication, inclusion, and documentation are core skills for architects. Democratizing communication, prioritizing value, and embracing adaptive architectures are key to success.

Workshops on related topic

Domina los Patrones de JavaScript
JSNation 2024JSNation 2024
145 min
Domina los Patrones de JavaScript
Top Content
Featured Workshop
Adrian Hajdin
Adrian Hajdin
Durante esta masterclass, los participantes revisarán los patrones esenciales de JavaScript que todo desarrollador debería conocer. A través de ejercicios prácticos, ejemplos del mundo real y discusiones interactivas, los asistentes profundizarán su comprensión de las mejores prácticas para organizar el código, resolver desafíos comunes y diseñar arquitecturas escalables. Al final de la masterclass, los participantes ganarán una nueva confianza en su capacidad para escribir código JavaScript de alta calidad que resista el paso del tiempo.
Puntos Cubiertos:
1. Introducción a los Patrones de JavaScript2. Patrones Fundamentales3. Patrones de Creación de Objetos4. Patrones de Comportamiento5. Patrones Arquitectónicos6. Ejercicios Prácticos y Estudios de Caso
Cómo Ayudará a los Desarrolladores:
- Obtener una comprensión profunda de los patrones de JavaScript y sus aplicaciones en escenarios del mundo real- Aprender las mejores prácticas para organizar el código, resolver desafíos comunes y diseñar arquitecturas escalables- Mejorar las habilidades de resolución de problemas y la legibilidad del código- Mejorar la colaboración y la comunicación dentro de los equipos de desarrollo- Acelerar el crecimiento de la carrera y las oportunidades de avance en la industria del software
IA a demanda: IA sin servidor
DevOps.js Conf 2024DevOps.js Conf 2024
163 min
IA a demanda: IA sin servidor
Top Content
Featured WorkshopFree
Nathan Disidore
Nathan Disidore
En esta masterclass, discutimos los méritos de la arquitectura sin servidor y cómo se puede aplicar al espacio de la IA. Exploraremos opciones para construir aplicaciones RAG sin servidor para un enfoque más lambda-esque a la IA. A continuación, nos pondremos manos a la obra y construiremos una aplicación CRUD de muestra que te permite almacenar información y consultarla utilizando un LLM con Workers AI, Vectorize, D1 y Cloudflare Workers.
React Patterns Made Simple
React Day Berlin 2024React Day Berlin 2024
62 min
React Patterns Made Simple
Top Content
Featured Workshop
Adrian Hajdin
Adrian Hajdin
Aprende patrones de React ampliamente utilizados, incluyendo HOCs, Compound Components, Provider Patterns, Functions as Child, y Portals, para escribir código más limpio y eficiente y crear aplicaciones escalables y mantenibles.Visión general En esta masterclass, los espectadores aprenderán sobre patrones clave de React que pueden hacer su código más eficiente, legible y mantenible. Presentaremos cada patrón, explicaremos cómo funciona y demostraremos ejemplos prácticos. Al final de la sesión, los participantes tendrán una comprensión sólida de cómo usar estos patrones en sus proyectos.Objetivos de aprendizajeHOCs Compound Components Provider Patterns Functions as Child Portals Modularidad Mantenibilidad Aplicación en el mundo real.
Llevando tu aplicación web a nativa con Capacitor
JSNation 2023JSNation 2023
111 min
Llevando tu aplicación web a nativa con Capacitor
WorkshopFree
Mike Hartington
Mike Hartington
Entonces, tienes una increíble aplicación web que has construido y quieres llevarla de tu navegador web a la App Store. Seguro, hay muchas opciones aquí, pero la mayoría requerirá que mantengas aplicaciones separadas para cada plataforma. Quieres que tu código base sea lo más cercano posible en la Web, Android e iOS. Afortunadamente, con Capacitor, puedes tomar tu aplicación web existente y crear rápidamente aplicaciones nativas para iOS y Android para distribuir en tu App Store favorita.
Contenido: Este masterclass está dirigido a desarrolladores principiantes que tienen una aplicación web existente o están interesados en el desarrollo móvil. Repasaremos:- ¿Qué es Capacitor?- ¿Cómo se compara con otras soluciones multiplataforma?- Usando Capacitor para construir una aplicación nativa utilizando tu código web existente- Organizando nuestra aplicación para su distribución en tiendas de aplicaciones móviles con convenciones de nombres, iconos, pantallas de inicio y más
Masterclass de alto rendimiento Next.js
React Summit 2022React Summit 2022
50 min
Masterclass de alto rendimiento Next.js
Workshop
Michele Riva
Michele Riva
Next.js es un marco convincente que facilita muchas tareas al proporcionar muchas soluciones listas para usar. Pero tan pronto como nuestra aplicación necesita escalar, es esencial mantener un alto rendimiento sin comprometer el mantenimiento y los costos del servidor. En este masterclass, veremos cómo analizar el rendimiento de Next.js, el uso de recursos, cómo escalarlo y cómo tomar las decisiones correctas al escribir la arquitectura de la aplicación.