Why is Silicon Valley abandoning React?

Procesado:

💭 Hacer Pregunta

📊 Análisis

Resumen del video: ¿Por qué Silicon Valley está abandonando React?

RESUMEN

El video analiza las razones por las que empresas de Silicon Valley están abandonando React, a pesar de su popularidad. Un CTO de una empresa unicornio, fuente anónima del video, indica que el éxito masivo de React está generando problemas. El presentador del video entrevista a ingenieros de 24 empresas y recopila información que apunta a problemas de rendimiento, complejidad y un aumento del tiempo de aprendizaje y mantenimiento. Se discuten alternativas como Svelte, Astro y el uso de Vanilla JS con bibliotecas específicas, ofreciendo diferentes perspectivas sobre el tema.

Ideas Principales

  • Problemas de rendimiento y escalabilidad en React: Se mencionan problemas de rendimiento, tiempos de renderizado lentos, memory leaks, depuración compleja y limitaciones del core de React.
  • Sobrecarga de dependencias: El gran número de paquetes npm (100 a 2000) en proyectos React genera problemas de auditoría y mantenimiento.
  • Complejidad creciente de React: El presentador argumenta que React se ha vuelto más complejo, dificultando su aprendizaje y haciendo más difícil encontrar ingenieros con un profundo entendimiento de su modelo mental.
  • Alternativas a React: Se proponen alternativas como Svelte (destacando su sintaxis sencilla), Astro (ideal para sitios web estáticos o simples) y la utilización de Vanilla JS con bibliotecas específicas para la interfaz de usuario.
  • El problema de diseñar para la escalabilidad: Se critica el uso excesivo de frameworks como Next.js en proyectos donde no son necesarios, lo que lleva a problemas de rendimiento y complejidad innecesaria. Se argumenta que en muchos casos, soluciones más simples serían más eficientes, como usar React básico o incluso Vanilla JS para el back-office y Astro para el front-end.
  • Web Assembly 2.0: Se menciona como una tecnología futura que podría mejorar el rendimiento, aunque su aplicación aún está limitada y en desarrollo.

Insights

El video no solo presenta los problemas asociados con React, sino que también analiza las razones detrás de estas dificultades, como la complejidad añadida a la framework con el tiempo y el uso inadecuado de React en proyectos donde soluciones más ligeras serían más apropiadas. Además, ofrece alternativas y sugerencias para evitar los inconvenientes señalados, promoviendo una evaluación cuidadosa de las necesidades del proyecto antes de elegir un framework.

🎯 Sabiduría

Análisis del video: ¿Por qué Silicon Valley está abandonando React?

RESUMEN

Un presentador anónimo discute el declive de React en Silicon Valley, citando problemas de rendimiento, complejidad y la creciente preferencia por alternativas como Svelte y Astro.

IDEAS

  • Las empresas de Silicon Valley están abandonando React silenciosamente.
  • El éxito de React podría ser la razón de su declive en Silicon Valley.
  • Los CTOs cuestionan el compromiso a largo plazo con React.
  • Se están explorando alternativas a React sin publicidad.
  • La complejidad de depuración y los problemas de rendimiento de React son notables.
  • Los memory leaks y bugs en React son un problema creciente.
  • La sobrecarga de dependencias de React (100-2000 paquetes) dificulta las auditorías.
  • La escasez de ingenieros que comprenden el modelo mental de React es significativa.
  • La evolución de React ha complicado innecesariamente su aprendizaje.
  • La comunidad React no se actualiza lo suficientemente rápido.
  • Volver a JavaScript vanilla y bibliotecas UI específicas es una alternativa.
  • Svelte es un framework prometedor para el 2025, a pesar de las controversias.
  • El uso del "$" en frameworks como Svelte y Vue es un punto de controversia.
  • El mercado de frameworks front-end está saturado, pero hay mejores opciones.
  • Astro es una alternativa superior, especialmente para sitios web simples.
  • Muchos sitios web podrían funcionar mejor con Astro que con React o Next.js.
  • Las empresas a menudo crean problemas al usar frameworks innecesarios.
  • Una multinacional está sufriendo problemas de compilación con Next.js.
  • Para sitios web estáticos simples, Astro es una opción mucho más eficiente.
  • Los monolitos, aunque mal vistos, no son intrínsecamente malos.
  • Los problemas radican en la mala implementación de los frameworks.
  • La lógica del negocio es independiente del framework escogido.
  • Usar React como motor de plantillas no es óptimo.
  • Web Assembly 2.0 está en desarrollo y mejorará el rendimiento.
  • Los modelos híbridos y los micro frontends son opciones para migrar gradualmente.

INSIGHTS

  • El éxito masivo puede generar complejidad y obsolescencia.
  • La simplicidad y la eficiencia son cruciales en el desarrollo web.
  • La selección adecuada de herramientas es vital para el éxito.
  • La formación y actualización continua son esenciales en la tecnología.
  • La sobreingeniería es un riesgo común en el desarrollo de software.
  • La elección del framework debe responder a las necesidades reales del proyecto.
  • La comunidad y la documentación adecuadas son cruciales para el aprendizaje.
  • La evolución tecnológica impulsa la búsqueda de soluciones más eficientes.
  • El desarrollo ágil y experimental es preferible a reescrituras completas.
  • La comprensión del modelo mental subyacente es clave para usar cualquier herramienta eficazmente.

CITAS

  • "No es que está fallando porque está mal, está fallando porque ha tenido éxito demasiado bien."
  • "...aunque me aunque inicie sesión no me va a dejar, ¿eh? Ahora ya la han arreglado bastante..."
  • "...el dólar es un poco ya un smell. Un smell."
  • "Ya el mercado de frameworks está saturado."
  • "...el 90 y pico por de las páginas web del mundo se podrían hacer con Astro y sería mucho mejor opción..."
  • "El problema no son los monolitos, son los monolitos mal hechos."
  • "Usar React como motor de plantillas no es muy óptimo."
  • "...lo que es performance critical path no lo puedes hacer con web assembly."

HÁBITOS

  • Mantenerse actualizado con las nuevas tecnologías y tendencias.
  • Evaluar cuidadosamente las herramientas antes de adoptarlas.
  • Priorizar la simplicidad y la eficiencia en el desarrollo.
  • Buscar la mejor herramienta para cada necesidad del proyecto.
  • Buscar y seguir a innovadores en el campo del desarrollo web.
  • Participar en la comunidad y compartir conocimientos.
  • Experimentar y adaptar nuevas tecnologías gradualmente.

HECHOS

  • React tiene problemas de rendimiento y escalabilidad.
  • React presenta problemas de memory leaks y bugs.
  • Muchas empresas utilizan React sin necesidad.
  • Svelte es un framework de front-end en ascenso.
  • Astro es un framework estático adecuado para muchos sitios web.
  • Web Assembly 2.0 está en desarrollo.
  • Los micro frontends son poco usados en startups.

REFERENCIAS

  • React
  • Svelte
  • Astro
  • Next.js
  • Vue.js
  • JavaScript Vanilla
  • Web Assembly
  • Web Assembly 2.0

CONCLUSIÓN EN UNA FRASE

Adaptar las herramientas al proyecto, no al revés, para asegurar la eficiencia y el éxito.

RECOMENDACIONES

  • Evitar la sobreingeniería y usar frameworks sólo si es necesario.
  • Priorizar la simplicidad y la eficiencia sobre la complejidad.
  • Experimentar con diferentes frameworks antes de tomar una decisión definitiva.
  • Considerar Svelte o Astro como alternativas a React para proyectos simples.
  • Mantenerse actualizado con las últimas tendencias tecnológicas.
  • Formarse continuamente en nuevas tecnologías y metodologías.
  • No adoptar tecnologías solo por su popularidad.
  • Analizar las necesidades del proyecto antes de escoger una tecnología.
  • Optimizar el código para mejorar el rendimiento y la escalabilidad.
  • Buscar la mejor herramienta para cada necesidad específica.
  • Implementar modelos de desarrollo ágil y adaptable.
  • Considerar modelos híbridos y micro frontends para migraciones graduales.
  • Profundizar en la comprensión del modelo mental de las herramientas elegidas.

🔮 Sabiduría PRO

Powered by SOLUTORIA AI

¿Por qué la gente está dejando ya de<br>utilizar Ra en Silicon Valley? Bueno, es<br>una pena que el artículo está cortado,<br>está cortado, aunque estado buscando por<br>ahí a ver si hablaban más de esto, pero<br>parece ser que sí que hay un montón un<br>montón de gente que está hablando<br>justamente de esto, ¿no? Que muchas<br>empresas en Silicon Valley están dejando<br>de utilizar RAC. Es curioso, ¿no? Cuanto<br>más lo está utilizando la inteligencia<br>artificial, pues parece ser que cada vez<br>más startups están intentando no<br>utilizar React. Dice Rak, "No es que<br>está fallando porque está mal, está<br>fallando porque ha tenido éxito<br>demasiado bien." Estos son las palabras<br>de un CTO de Silicon Valley, de una<br>empresa, unicornio. Dice que nada,<br>tomándose unas cervezas por ahí, estaba<br>hablando de esto, ¿no? y que había un<br>patrón en todas las conversaciones que<br>tenía con los CTeos, que mientras que<br>Ríak está dominando en un montón de<br>trabajos, charlas, conferencias, debates<br>de Twitter y tal, los CTOs y los<br>ingenieros líderes están ahora mismo<br>cuestionando realmente el tener este<br>compromiso a largo plazo con RaC y están<br>explorando alternativas muchas veces sin<br>hacer esto público, o sea, bastante<br>brutal. Vale, en los próximos 6 meses ha<br>estado hablando con un montón de<br>ingenieros de al menos 24 empresas y ha<br>estado descubriendo algo que parece ser<br>que le sorprende, ¿no? Que dice, "Bueno,<br>es que aunque me aunque inicie sesión no<br>me va a dejar, ¿eh? Ahora ya la han<br>arreglado bastante porque antes se<br>podían hacer muchas cosas con eso de<br>poder saltártelo, pero no, ahora ya te<br>deja ya tienes que pagar ya en medium,<br>medium, suéltame del brazo." O sea, y<br>sabéis lo que creo que esto cada vez va<br>a ser más común porque claro, va a ser<br>tan raro que la gente esté por escribir,<br>¿sabes?, por escribir artículos que la<br>gente lo que va a hacer simplemente es<br>escribir pues esto, eh, escribir de pago<br>porque ya la gente como va a ir a HGPT,<br>pues si quieres escribir algo en<br>condiciones vas a tener que pagar. Mira,<br>aquí tienen un resumen, eh, los key<br>paints dicen problemas de rendimiento,<br>no escala los tiempos de renderizado,<br>memory leaks de buging, depurar,<br>bastante complejo, eh, y encontrarte con<br>límites del core de React. Luego eh<br>metaframeworks prone, que si mucho que<br>si remix que si custom server se render<br>pipelines, que al final tarda semanas en<br>hacer onboarding a nuevos programadores.<br>Luego overload de dependencias de 100 a<br>2000 paquetes de npm por cada base de<br>código que dice que las hacer una<br>auditoría se convierte en verdaderas<br>pesadillas. La verdad es que,<br>100. Entiendo que esto es todas las<br>dependencias, me imagino. Son todas las<br>dependencias contando a sus<br>dependencias. bottleneck. O sea, hay<br>cuellos de botellas porque hay realmente<br>pocos ingenieros que realmente sepan y<br>entiendan el modelo mental de<br>Ra veo más. Esto sí que es curioso. Cada<br>vez la gente domina menos RC. Es muy<br>raro, tío. Es muy raro. Lleva más tiempo<br>que nunca y me sorprende porque hay<br>cosas que yo comento en mi curso de Ra y<br>hay gente que es en hay gente que que es<br>senior, que hay cosas que comento aquí y<br>no tienes ni idea, tío. O sea, cosas<br>básicas de React, de cómo funciona el<br>modelo de React mental, de cómo son los<br>rerrenderizados, que no sé qué, que no<br>sé cuánto. O sea, eso es alucinante. Ya<br>si hablamos de los React server<br>components y todo esto ya alucinas. Os<br>digo una cosa, no quiero decir que sea<br>culpa solo de desarrolladores. Yo esto<br>también se lo achaco a Rao Rak ha<br>evolucionado regulinchis. ¿Por qué?<br>Porque la idea es que no todo lo tienes<br>que hacer más difícil. Si lo haces más<br>difícil, pues a mí se me ha hecho bien<br>difícil aprender React. eso es<br>que no has aprendido con mi cus. es que<br>salen muchas cosas y la gente no se<br>actualiza y sigue adelante con lo que ya<br>sabe. También puede ser, pero no sé, o<br>sea, quiero achacarle también a Rak, o<br>sea, no no os voy a engañar, quiero<br>achacarle también a Ríak el hecho de que<br>de que ha complicado ciertas cosas que a<br>lo mejor antes eran más sencillas.<br>Bueno, y dice por aquí los secretos de<br>las salidas que ahora se está volviendo<br>a hacer vanila JS y utilizar pues<br>bibliotecas muy concretas para la UI que<br>sea muy crítica. utilizar frameworks que<br>están basados en compilación como Selt.<br>Yo la verdad es que ojo, ojo, si es 2025<br>sería la que sea 2025 el año de<br>Selt, tío. O sea, ya alucino, ¿eh? O<br>sea, ya alucinaría, ¿eh? Podría ser,<br>quién sabe. Yo ya es que ya me lo espero<br>todo. Ojalá haríamos haríamos el mejor<br>curso del mundo porque me encanta Selt,<br>¿eh? Mira que le pillo un poco de<br>tirria, tío. Lo compró Versel, que tenía<br>que ser lo mejor. Y es que con el tema<br>de las runas estas que las runas, pero<br>qué pena, ¿eh? Porque mira que me gusta<br>el tema de cómo es la sintaxis. Mira que<br>me gusta. Es que está bien bonito, pero<br>no sé, no sé. Tengo que hacer las paces<br>con Svelt, amigos. Tengo que hacer las<br>paces porque la verdad es que me gusta.<br>No sé, me cabreé, me cabreé un poco con<br>el tema de las runas, ¿no? No estaba<br>contento y porque me parecía como mucho<br>mejor antes, pero es que la sintaxis me<br>encanta. Bueno, es que la sintaxis más<br>clara, más sencilla y más, no sé, más<br>simple que hay. Más simple que esta no<br>hay nada. No hay nada. O sea, es<br>tremendo lo bien lo bien que está hecho<br>por intentar hacerlo mejor. No entiendo<br>por qué no te gustan las runas. No sé<br>porque me gustaba mucho más como era<br>antes el tema de tener una variable y ya<br>está. El hecho de que te lo cambien, el<br>tener que volver a hacer ahí con con el<br>dólar. El dólar para mí, voy a decir<br>algo muy polémico, ¿eh? Pero el dólar es<br>un poco ya un smell. Un smell. El dólar<br>es estoy ocultando a simple vista alguna<br>complejidad muy rara, ¿no? No, el dólar<br>de PHP, me refiero más el dólar de, por<br>ejemplo, el que tiene Quick y el que<br>tiene Selt. No me termina, no me<br>termina. Me cuesta, me cuesta. Que igual<br>el día de mañana cambio de opinión, ¿eh?<br>Pero sobre todo en Quick, mira que me<br>gusta la idea que tiene Quick y tal,<br>pero luego entonces ya empiezas a ver<br>por todo on click dólar.<br>Tío, me gustan los dólares, pero no mi<br>código. Vale, bueno, a ver qué más dicen<br>por aquí. Island Architectus Astro. La<br>verdad es que, las Island<br>Architectus de Astro me parece, voy a<br>decir algo todavía más polémico. Dice,<br>"Ya el mercado de frengos está<br>saturado." Sí, está saturado,<br>pero pueden existir cosas mejor. O sea,<br>se me olvida poner dólar y se rompe<br>todo. Efectivamente, ese es el problema,<br>¿no? El tema es, voy a decir una cosa<br>muy polémica. Sé que os que os jode que<br>diga esto porque siempre luego en los<br>comentarios de YouTube me decís esto,<br>¿no? Ah, ya va a decir, dice que va a<br>decir algo polémico y luego no es<br>polémico. Bueno, pues yo creo que sí que<br>es polémico porque es este el típico la<br>típica cosa mucha gente no quiere<br>escuchar y a lo mejor luego me dicen,<br>"No, es que es un vendido de Astro, no<br>sé qué, no sé cuánto."<br>Pero<br>el 90 y pico por de las páginas web del<br>mundo se podrían hacer con Astro y sería<br>mucho mejor opción que lo que sea que<br>están utilizando y seguramente está<br>utilizando NextJes, están utilizando<br>Viw, están utilizando lo que tú quieras,<br>están utilizando React, están utilizando<br>Angular, el 90 y pico por de verdad. O<br>sea, ¿por qué lo digo? No es una AD. No<br>es una AD. Es porque es que hay hay<br>tantas páginas que en realidad son tan<br>simples que añadir algo, un framework,<br>un no sé qué, Blthor, eh, yo qué sé, la<br>de tonterías que están ahí, no sé, tío,<br>es que no vale la pena. Hay un montón de<br>páginas por ahí que no vale la pena<br>utilizar ni Next Nexis ni nada, hay un<br>montón. O sea, más del 90, mucho. Venga,<br>pongamos un 75. Pero es que, a ver, si<br>ya te puedes hacer la idea de que<br>cuántas páginas está utilizando<br>WordPress, pues no sé, tío. Es que y ves<br>cada cosas que la gente ha creado.<br>Luego, claro, son problemas que te creas<br>tú mismo. Es que eso es que no os puedo<br>decir la empresa, pero estas semanas<br>está haciendo la consultoría para una<br>multinacional, una empresa muy top,<br>tiene una tienda y tiene un monolito y<br>es un monolito hecho con Nextgs. Y el<br>problema no es nexts, o sea, el problema<br>no es que NextGs, no, el problema es que<br>no necesitas nexts, ese es el problema,<br>que no necesitas next, pero claro, ahora<br>has metido NextGs por todos los sitios,<br>en todos los sitios, porque has dicho,<br>"No, next GS, next GS, next GS, next GS<br>y ostras, tío, es que nos tarda 20<br>minutos en compilar." Bueno, pero si es<br>que tienes 50,000 páginas, mi inmensa<br>mayoría no necesitas NJS. Te puede valer<br>más la pena. Imagínate esta esta empresa<br>que yo digo de haber hecho con Astro el<br>90% de su plataforma, separarlo y claro,<br>me dicen, "No, es que claro, necesitamos<br>el backoffice porque tiene tiene login,<br>tiene no sé qué, tiene filtros, tiene<br>search, tiene no sé qué, no sé cuánto,<br>bla bla." Entonces necesitado mucha<br>interactividad, no sé qué, bla bla bla.<br>dices, "Ostras, pues es que casi que<br>hubieras hecho solo el back office con<br>Nexts si realmente lo necesitabas<br>tanto." Que yo la verdad es que tampoco.<br>Yo creo que el back office justamente lo<br>podías haber hecho con Rak pelado,<br>vanila, vanila, ¿sabes? Vit y reac y ya<br>está. Lo hubieras te hubieras<br>simplificado mucho la vida. Pero bueno,<br>pongamos que solo dejas a Inx y toda la<br>parte del frontal. Es que a lo mejor lo<br>hubieras hecho con Astro, te hubieras<br>quitado una de problemas, el tema de las<br>migraciones, el tema de Ríac, los Rever<br>componens. Claro, si es que tus páginas<br>son estáticas, todas las páginas<br>estáticas, todas las páginas. Si no<br>tiene nada, tenía como mucho, yo que sé,<br>tenía un botón arriba a la derecha, el<br>carrito arriba a la derecha. Es lo único<br>que cambia. Lo único, pues tío, yo que<br>sé, si solo cambia esto, es que por más<br>que tengas es que no te vale la pena. Y<br>claro, pues qué pasa, que como te creas<br>tú los problemas, luego las soluciones<br>que tienes que hacer son una locura. Y<br>estaban haciendo ya cosas mezclando HTML<br>que le devolvía al Bacen inyectando la<br>HTML para ver si no sé, no sé. Claro,<br>una vez que te metes ya es un rollo,<br>pero pero luego ves estas cosas y dices,<br>"Hostia, es que a lo mejor a día de hoy<br>lo haces con Astro y te quitas un montón<br>de problemas. Y ya os digo, el back<br>office ni siquiera astro bit y reac ya<br>está. Eh, los monolítos no se necesitan<br>hoy en día. Si se necesita escalar algo<br>es el Ben y entregar el front en cada<br>petición es muy barato, la verdad. Se<br>reflejan las gafas. Igual se ha visto.<br>Igual se ha visto cuál cuál era. Bueno,<br>eh, la verdad los monolitos no tienen<br>nada malo. No tien absolutamente malo,<br>eh, no hay nada nada malo de los<br>monolitos. De hecho, tienen muy mala<br>fama y Nexts es un monolito. Cualquier<br>NextGS es un monolito y tampoco pasa<br>nada. El problema no son los monolitos,<br>son los monolitos mal hechos. Es como<br>microservicioso. Microservicios mal<br>hechos. Per sé ninguna arquitectura<br>tiene ningún problema. Eh, una lógica de<br>negocio de carrito en compra no es<br>trivial. Claro que no es trivial. Si yo<br>no digo, no digo la lógica de negocio,<br>no digo que sea trivial, no digo que sea<br>fácil, pero el hecho de que la lógica de<br>negocio, independientemente que sea<br>NextJs o que sea, por ejemplo, en Astro<br>y que esa parte la hagas, que esté hecha<br>con RaC y que tengas la lógica de<br>negocio y tal, eso es indiferente. O<br>sea, no la lógica de negocio no se te va<br>a hacer más fácil o más difícil por una<br>cosa u otra, sino que es todo lo<br>contrario, es la UI, ¿no? Es verdad,<br>usar R como motor de plantillas no es<br>muy óptimo. Claro, es que ese es el<br>problema, esa muy buen comentario porque<br>mucha gente utiliza Ra motor de<br>plantillas efectivamente y no sirve, no<br>es un motor de plantillas, es que no es<br>para eso. Dice Web Assembly Microaps<br>para performance critical path. Yo la<br>verdad que este punto no estoy muy de<br>acuerdo porque lo que es performance<br>critical path no lo puedes hacer con web<br>assembly. O sea, esto o está mal<br>explicado, porque, a ver, por ejemplo,<br>tú no puedes poner en un carrito Web<br>Assembly. Web Assembly tiene un coste,<br>que, por cierto, están haciendo Web<br>Assembly 2, no sé si lo sabíais, pero<br>van a sacar la segunda parte de Web<br>Assembly. En serio, eh, no es ninguna<br>broma esto que os estoy comentando. Se<br>llama Web Assembly 2. Lo tenéis aquí. La<br>idea es que sea totalmente<br>retrocompatible, que bueno, va está<br>todavía más diseñado para que sea más<br>rápido, va a ser más compacto, pero<br>obviamente por más compacto que sea,<br>todavía no va a ser tan compacto como<br>puede ser JavaScript para darle<br>interactividad a un botón, pero tiene<br>bastante buena pinta, eh, están<br>mejorándolo bastante de las cosas que se<br>pueden hacer y todavía no está<br>disponible en los navegadores, pero<br>justo han terminado el 2.0, cero lo<br>terminaron en marzo y ahora la<br>especificación es es oficial, pero tened<br>en cuenta que hasta que llegue a todos<br>los navegadores pues puede tardar un<br>poquito. Igual le hacen algún cambio<br>porque creo que aunque es oficial y tal<br>es release candidate, o sea, que todavía<br>no es 100% cerrado, ¿vale? Así que nada,<br>que lo sepáis que muy pronto vamos a<br>tener web assembly 2.0 y luego<br>propietary UI framewor optimizado para<br>cada organización. Esto tampoco lo veo<br>muy para allá, pero bueno, aquí cada<br>uno. Lo que dicen los líders de<br>ingeniería, dice, para evitar<br>monoculturas, lo que claro, para no<br>elegir claramente, ah, como todo el<br>mundo usa Ría, pues vamos a usar RC para<br>controlar el coste total, balancear la<br>velocidad a corto plazo con el<br>mantenimiento al plazo a largo plazo,<br>¿vale? Modelos híbridos, experimentar<br>con microfrontes o islas antes de hacer<br>una reescritura total. Esto de<br>experimentar con microfrontends, yo la<br>verdad no sé qué empresa puede utilizar<br>microfrontens. Es que veo tan pocos<br>casos, tan pocas empresas, especialmente<br>startups, que necesiten microfrontends.<br>Muy pocas, muy pocas. ver a los<br>innovadores, una la nueva generación de<br>framewors que emerge que tengan un<br>margen, pero la verdad es que yo no he<br>visto ninguno así que realmente marque<br>mucha diferencia.