logo

midulive


Transcribed podcasts: 605
Time transcribed: 13d 3h 7m 36s

This graph shows how many times the word ______ has been mentioned throughout the history of the program.

¿Por qué no usaré NextDS?
Kenzie Dodds. Es un artículo
de 14 minutos. ¡Qué interesante
es este artículo que está escrito
en una página web que está
hecha...
No sé si lo veis. No, no lo veis.
Espérate. Una página
que está hecha con
NextDS.
¡Ay, qué risa!
Obviamente, es verdad, no la ha hecho él.
Es verdad, ya está. No os lancéis.
No os lancéis. Ya está. No, pero no la ha hecho él.
Es verdad, pero no deja de ser paradójico.
Pero bueno, en fin, la hipotenusa.
Tienes un nuevo proyecto o tienes proyectos que ya existen
y quieres actualizar
a una aproximación más moderna. O igual
no estás satisfecho con
el framework moderno actual o lo que sea.
He estado utilizando Remix. Hay que tener
en cuenta una cosa. Más que nada para que la gente
tenga contexto. Kenzie Dodds ahora
creo que ya no está en el equipo de Remix, pero
sí que ha sido parte del equipo de Remix durante un
tiempo. O sea, que hay que tener en cuenta que
claro, si tú quieres pensar
que puede tener un interés personal
o un bias de su opinión,
pues que lo sepáis, ¿vale? Ya no trabaja
en Remix, pero sí que ha trabajado en Remix durante
un tiempo, ¿no? He estado utilizando Remix desde que se
lanzó en 2020. Estuvo en el equipo por
10 meses. Estuvo ayudando a la comunidad.
Remix es un full stack web
framework y que intenta resolver
los problemas que se ha encontrado la gente cuando
creaba aplicaciones web
como con Next.js. Next.js
es una alternativa muy popular a Remix.
Me encanta esto porque es Next.js la alternativa
a Remix, al revés. Y la gente me
pregunta por qué elegiría Remix
en lugar de Next.js, ¿no? Y entonces
dice, ¿en qué se enfoca? Y aquí explica
esto, ¿no? Que sepáis que si ves
que esta página web está hecha con Next.js
es porque la ha hecho un equipo totalmente
separado que no tiene nada que ver conmigo. O sea,
que le pagó, ¿no? Y ha hecho la plataforma
y ya está. Y entonces dice, cualquier
cosa que uses probablemente está
bien. Cosa en la que estoy bastante de acuerdo.
O sea, sinceramente. Utiliza Remix,
utiliza Next.js, utiliza Naxx, utiliza
Svelte, utiliza lo que te dé la
gana y deja que todo el mundo
utilice lo que quiera, ¿sabes? O sea, es que
cualquier herramienta que utilices al final
son herramientas para que creemos las
cosas. Así que no te lo tomes como que es un equipo
de fútbol. Yo, por ejemplo, no me tomo la opinión
de Kenzie Dodds como, ¡ay, Dios mío!
Pues me estoy cabreado. No, hay
salseo porque me parece interesante. Y no
por su opinión, sino por el timing. Sí que
es verdad que es un poco raro, ¿no? El hecho de
ser un día antes de la Next.js.com. Pero más
allá de eso, me parece bien su opinión
porque todas las opiniones al final son
interesantes. Voy a argumentar por qué yo
no usaré Next.js y es porque
creo que Remix es una mejor herramienta para
crear mejores experiencias de usuario. Esto
no quiere decir que...
No quiere decir que seas
una mala persona si estás usando Next.js.
Bueno, bueno, pero ahí lo dejas, ahí lo dejas.
Nah, hombre, no. Bueno, la web platform,
¿vale? Y aquí habla un poco de su idea
de la web platform y que porque Next.js...
¿Cómo ve la comparación entre Next.js y
Remix? Como él lo veía el tema de...
del testing. Y aquí hay
un punto bastante interesante, que seguro que muchas
veces hay gente que se la ha encontrado, que es el
tema de... No sé si habéis escuchado alguna vez
de Open Next. Open Next
es una alternativa
de Next.js que puedes desplegar
en cualquier sitio. Porque
al final, si tú intentas
desplegar Next.js en, por ejemplo,
un servidor de Amazon, es
bastante complejo porque tiene como
mucha magia que está atada
a Vercell. Eso es así. O sea,
ya lo hacen así, ¿por qué? Porque al final
es el caballo de Troya. Mucha gente se
queja de esto. Lo puedo entender, pero
también entiendo a Vercell. Al final
dices, bueno, es que es como
estoy haciendo un framework que sí que en realidad
lo puedes utilizar, pero si le quieres
sacar el 100%, pues hay algunas cosas que las
vas a tener ahí en
Vercell. Y lo mismo, me parece, para que
os hagáis a la idea, cuando Guillermo Rauch
se quejó de que Shopify compró
a Remix y que iba a hacer que Shopify
se aprovechase de Remix, también
me pareció que no tenía sentido
quejarse. Porque él estaba haciendo eso con
Next. Y entiendo, entendería las dos
cosas, ¿sabes? Porque dices, bueno, es que
tú estás haciendo eso y tiene sentido porque
al final es una empresa. Aunque
sea open source, aunque tal, al final
hay una empresa detrás que tiene sus intereses.
¿Por qué os vais a quejar?
No entiendo. No entiendo por qué se quejan uno y el otro,
pero puedo empatizar con la idea, ¿sabes?
Puedo empatizar con la idea porque lo dicen
o porque cualquiera, o como lo dice aquí
el bueno de Kenzie Dodds,
que habla de Open Next, que al final es
una alternativa para poder desplegar
Next.js en cualquier sitio,
¿vale? Y dice Open Next existe porque
Next.js es difícil de desplegar
en cualquier sitio, pero excepto
en Vercel. Y aprecio que la compañía
incentive su propio hosting,
que sea tan atractivo como sea posible,
pero es evidente que ese incentivo
ha despriorizado hacer
Next.js que sea fácil de desplegar en cualquier sitio.
Y es verdad. Y me parece que es un
punto de crítica válido. O sea, a mí la verdad
ahí, o sea, tiene
razón lo que dice. Yo creo que tiene toda la razón
del mundo, sin ningún tipo de duda.
Pero aquí cada uno pensará
cómo decriticable es
porque ya os digo que si Shopify con
Remix hiciese lo mismo, yo lo entendería
perfectamente, ¿sabes? Lo entendería
perfectamente. Pero bueno, es una cosa
que hay que tener en cuenta. O sea, me parece bien
y que si al final no lo harías,
pues está correcto.
Next.js se está comiendo React.
Bueno, esto sí que es polémico, ¿eh?
Dice, vale, el cómo me siento como
con Meta, como compañía, siempre me ha hecho
sentirme un poco regulinchis, ¿no?
Sin embargo, Vercell,
que ha estado comprando
has been buying up. Hostia, ¿buying up qué significa?
Voy a entender que la traducción es contratar
porque la verdad es que
es un poco raro, ¿eh? Algunos de los miembros
del equipo de React no me ha ayudado
a ver estas cosas mejor. Y desde entonces
el equipo de React se ha sentido
menos colaborativo.
Claro, a mí esto, la verdad,
a mí esto me da la sensación que lo está
viendo desde la perspectiva de Remix. O sea,
como que estuviese dentro del equipo de Remix.
Porque es raro que realmente esté diciendo esto, ¿no?
I know for...
Vale, lo sé por mí mismo
que parece que está intentando,
Vercell está intentando dibujar
o intentando que desdibujar
la línea entre Next.js y React.
Y hay mucha confusión de la gente
en qué es de React y qué es de Next.js.
Esto es totalmente cierto.
Esto es verdad.
Pero claro, es que las agentes
se ponen a aprender un framework.
O sea, una persona que aprenda Remix.
Imagínate que solo aprendes Remix.
Y no aprendes nada más.
Solo aprendes Remix. Vas directo a Remix.
No sabes Next.js ni nada, ¿no?
Pues lo que te va a pasar también va a ser
hostia, ¿qué es de React?
O sea, vas a pensar que mucha magia
también es parte de React en lugar de Remix.
Esto va a pasar muchas veces
cuando utilizas un framework.
En mi sensación, la verdad.
Bueno, dice aquí sobre el tema
Server Component y Server Actions.
Estaría más confortable, ¿vale?
Si React fuese de una fundación abierta.
Pero, bueno, React ahora mismo
no es de una fundación abierta.
Es verdad.
Pero sigue siendo de meta, ¿no?
Y así, pues serían más colaborativos.
No sé qué.
Dice que aquí el developer advocate
se ha puesto en contacto con él
al mismo momento que publicó este post.
Y eso es una buena señal.
Yo, la verdad, sobre este punto
voy a decir que no estoy de acuerdo.
Dice, no, no es así.
Antes de eso es lo que quiere evitar con Remix.
Porque Remix no tiene tantas cajas negras como Next.
Usa como base y expone todas las APIs del browser.
A ver, podemos estar de acuerdo o desacuerdo.
Pero lo que me refiero es que hay magias.
Como, por ejemplo, el hecho de que puedas exportar
una función que al final eso puede entender
una persona que puede ser parte de React.
Porque al final, cuando un framework es parte de React,
o sea, un framework de React es muy difícil
que sepas 100% que es nativo.
Y eso pasaba antes con el Get Initial Props,
que hay gente que pensaba que era parte de React.
O sea, yo a mí esto, es que esto que dices
no me parece verdad, la verdad.
Eso de que es lo que quiere evitar Remix.
Es que por más que lo quiera evitar,
al final es una cosa que va a pasar.
Si tú exportas un método que funciona por arte de magia,
al final quieras una...
Es que me parece bien, es que no me parece mal.
Quiero decir, no es que Remix me parece mal lo que hace.
Es que me parece fantástico.
O sea, al final el tema es que si tú, por lo que sea,
exportas un export asim function loader,
tú haces esto, ¿vale?
Exportas una función que no estás importando.
¿Sabes?
Es magia.
Es el sentido que tiene.
Al final los frameworks lo que hacen es magia.
Y esto me parece bien.
Sé que mi opinión queda un poco en entredicho
por culpa de la gorra, ¿eh?
Pero no sé, que tiene sentido.
Tiene sentido.
Si no, ¿sabes?
El hecho de decir export cons headers,
es que podrías quitarte esto y esto es magia.
Y está bien, es que eso son los frameworks.
O sea, yo quiero esta magia.
Yo quiero esta magia.
Pero entiende que si alguien solo aprendiese Remix,
podría decir, hostia, pues yo en React
hago un export cons headers y ya funciona y tal.
O sea, no sé, lo podría llegar a entender.
O sea, que cuando utilizas un framework,
a veces estas preguntas la gente lo va a hacer.
Lo que pasa es que Remix a lo mejor no se utiliza tanto
y no pasa tanto esto, ¿no?
Pero igualmente este, a mí este punto,
el punto de antes yo lo compro totalmente, ¿no?
Este punto me parece un poco pataleta,
sobre todo eso de que no sean colaboradores.
Experimentando en mis usuarios.
Guau, guau, guau.
Vale, este estoy cero de acuerdo, ¿eh?
Y os voy a decir por qué.
A ver, este punto de experimentando en mis usuarios,
¿puedo estar de acuerdo que los React Server Components y tal?
Bueno, que sí, que ha sido.
Pero es que estaban en alfa.
O sea, has experimentado porque tú has querido
hasta que no estaban en estable por no haberlos tocado.
Yo qué sé, es que al final eso me parece que es más responsable.
Es que se puede utilizar las páginas todavía.
Es que esto es poner en la parte del framework
lo que es una cosa tuya, ¿sabes?
En este caso digo, oye, que cada uno haga lo que quiera, ¿sabes?
Aquí se está quejando, ¿no?
De que los React Server Components,
que están en Canary, no sé qué.
Pero lo que dice React,
y esto es una cosa de React que no es de Next.js,
es que dice que al final tienen temas experimentales
que cualquier framework podrían utilizar.
Y que no está forzado.
¿Qué es esto, no?
Es que la gente, pues no lo pongas, ¿sabes?
O sea, ya está, no lo pongas.
Nadie te obligó a utilizarlo.
Puedes seguir utilizando el directorio páginas.
Si te sientes, ¿sabes?
No es tanto como experimentando en mis usuarios,
pero experimentas con tus usuarios porque tú quieras.
Nadie te va a obligar, ¿no?
Demasiada magia.
En esto estoy súper de acuerdo.
O sea, para que veáis.
Una cosa, y esto es que me sabe mal,
porque mucha gente dice,
ay, ¿cómo defiende a Next y tal?
El año pasado, cuando estuvimos en la Next.js.conf,
¿qué os dije de AppRouter?
Os dije que había cosas que no me convencían,
que realmente creo que se habían adelantado demasiado,
que es verdad esta línea.
Iba a haber muchos problemas en la...
¿Verdad, Secio?
Que dije que no me gustaba.
Lo dije.
O sea, que mucha gente...
Lo del fetch nunca me convenció.
Facundo, muy bien.
Me alegro que hay gente porque luego de la gente dirá,
ah, no sé qué.
No, pues yo dije y fui súper claro.
No me gustaba lo de que parché en el fetch.
Que eso es una cosa que lo dice en este punto
y estoy súper de acuerdo.
Demasiada magia.
Y en esto, ¿ves esto que dice Kenzie Dodds
de hacer un override del global fetch?
Entiendo por qué lo hace, pero no estoy de acuerdo.
A mí no me parece buena idea
que lo que ha hecho Vercel de parchear el fetch
sea buena idea para tener el caché automático.
Entiendo por qué lo hace.
O sea, no me lo tiene que explicar para convencerme.
Si ya me tiene convencido de por qué lo hacen.
Simplemente no me gusta la estrategia.
Porque me parece un error parchear esto.
Y es que sabía cuando lo anunciaron,
cuando lo vi con mis ojos,
que dije, es que esto va a ser
lo que se va a quejar todo el mundo.
Y ¿veis?
Too much magic.
Y aquí, las cosas como son.
Tiene toda la razón Kenzie Dodds.
O sea, es que tiene toda la razón.
Y me sabe mal porque Gonzi ha estado por aquí
y yo sé que a Gonzi le gusta.
Pero creo que es mucho mejor al final
oye, pues tener que importar el método y tal.
Pero ¿qué pasa?
Que si importas el método,
le quitas toda la magia del framework,
que no sé qué, no sé cuánto.
Es verdad.
Y hay muchas llamadas que no se pueden parchear
porque ya están dentro, por ejemplo,
en React Query, no sé qué, no sé cuánto.
Pero me da igual.
Sinceramente, a mí me da igual
porque no me gusta.
O sea, me parece que no es
hacia donde tiene que ir, ¿no?
Y es muy peligroso.
Y me parece que esto, al final,
el día de mañana,
nos puede explotar a todos en la boca
y no quiero, ¿sabes?
Entonces, creo que está de acuerdo.
Aquí, las cosas como son,
tiene toda la razón sobre demasiada magia.
Demasiada complejidad.
Bueno, dice que está escuchando
que la gente está encontrando en XGS
que es demasiado complejo, no sé qué.
A ver, la verdad es que sí que está siendo
más complejo.
El tema del app router,
la complejidad que yo veo que está pasando
es que es bastante difícil.
¿Por qué le tira tanto hate a Next?
¿Yo?
¿O Kenzie Dodge?
Kenzie Dodge porque no le gusta
y yo no le estoy tirando hate.
Yo, básicamente, estoy dando un poco
mi opinión al respecto.
El tema de la complejidad.
La verdad, sinceramente,
sí que siento que NextGS
se ha estado haciendo más complejo.
O sea, este año ha sido una cosa compleja, difícil.
Primero, el cambio de paradigma mental
de los React Server Components.
Añadido con el app router.
Añadido con la cachet de fetch.
Añadido, no, es como demasiado,
un montón de cosas.
Entonces, yo creo que si hubiéramos visto
esta migración como por pasos,
¿sabes?
Como de una forma más paulatina,
más estable en cada uno de los pasos,
creo que hubiera estado chulo.
O sea, nos hubiera ayudado
a no verlo tan complejo.
Porque el app router es obvio
que es mucho más potente,
que es mucho más interesante,
pero el problema ha sido que
metes el app router,
pero cambias toda la forma
de hacer los headers,
de hacer el fetching de datos,
haces todo,
pa, pa, pa.
Claro, aglutinas un montón de cambios
que encima los añades
al cambio de paradigma
a los React Server Components
y metes un cacao, tío,
y encima los sacas en alfa.
¿Sabes?
Ahí está.
Ese es el tema, ¿no?
Alguien que viene hoy
a aprender NextES
no lo tiene tan complejo.
Hostia, ¿eh?
No sabría decirte.
Porque puede ser que sí,
si no has visto absolutamente nada,
puede que no te cueste tanto,
pero quieras o no,
los React Server Components,
ya solo los React Server Components,
solo los React Server Components,
tiene una curva de aprendizaje importante,
el tener que meter el Use Client,
que a mí no me gusta nada,
eso de tener que poner
la cadena de texto arriba,
todos los cambios que han tenido que haber
a nivel de framework.
O sea, creo que a lo mejor
todos los cambios,
si se hubieran presentado
de otra forma, ¿sabes?
Porque, a ver, avanzar,
necesitamos avanzar en NextES,
pero creo que a lo mejor
el cómo se ha hecho
no ha sido la estrategia idónea.
Esa es mi opinión, ¿vale?
Mi opinión es
que los cambios están bien,
pero que a lo mejor
los cambios tendrían que haber llegado
de otra forma, ¿sabes?
Eso es lo que quiero decir.
Eso es como yo lo siento,
porque creo que se ha mezclado
como en un batido ahí
demasiadas cosas
que te lo han presentado de golpe
y que ha costado, ¿no?
Antes le gustaba y ahora no.
No, sí, a ver,
si lo estoy diciendo, Gabo,
a mí el approuter me gusta,
pero entiendo,
o sea, no se puede decir
que el approuter
haya hecho las cosas más fáciles, ¿no?
O sea, yo creo que podemos estar
todos de acuerdo en algo, ¿no?
De que ha hecho las cosas
más complicadas.
Incluso, aunque tú aprendas de cero,
el hecho de que en NextES
ahora tienes componentes
de servidor y de cliente
que tienes que poner el use client,
el cómo funciona un servidor,
si renderiza uno de cliente,
luego puedes utilizar uno de servidor
y todo este tipo de cosas.
Al principio se me hizo complejo
el aprender en NextES.
Más que todo porque lo veía todo
como si fuera React, claro, totalmente.
Yo creo que lo siguiente sería
un poco más de herramientas
para el desarrollo.
Por ejemplo, ver mejor el estado
de AKH, cliente, servidor y tal.
Pues puede ser, ¿no?
Midu Framework.
Está muy fachero.
Gracias, hombre.
Bueno, complejidad.
Estoy de acuerdo.
Y sabéis lo malo,
lo malo es que creo
que no va a ir a mejor.
O sea, creo que se va a complicar
un poquito más.
Estabilidad.
Estabilidad.
Esto no estoy de acuerdo.
Esto me lo he leído, ¿vale?
Estabilidad.
Dice que NextES está en la versión 13
y que Ria Router ha estado
por mucho más tiempo
y solo va por la versión 6.
Esta frase me parece,
por parte de Kenzie Dodds,
que está como hasta hecha
con mala intención.
Porque Kenzie Dodds
es un desarrollador
que tiene muchos años de experiencia
como para decir esta frase.
Esta frase es como
intentar venderte algo
de la forma más rastrera posible
como diciendo,
no, como NextES está en la versión 13
y Ria Router,
que lleva mucho tiempo,
está solo en la versión mayor 6,
pues es muy raro, tío.
O sea, cuando sabes perfectamente
que no tiene absolutamente nada que ver.
Y de hecho,
muchas veces se pueden saltar
incluso versiones.
O sea, te puede saltar versiones.
O sea, Chrome está en la versión 130,
y eso significa
que es que no tiene
ningún tipo de sentido.
O sea, no tiene ningún...
Esta frase no tiene
ningún tipo de sentido,
de verdad.
Porque al final
no se trata muchas veces
de que sea que cambia mucho
o que no es estable,
sino que muchas veces
lo que pasa
es que simplemente
para hacer un anuncio muy grande
como para entender
que es algo
que es un cambio muy gordo,
le saca una mayor.
Bueno, total,
que un problema
que ha habido
con el App Router
es que hemos visto
que muchos frameworks
han tenido que...
es que ha sido muy difícil
porque la documentación
se ha tenido que duplicar,
todo se ha tenido que duplicar.
Lo hemos visto con Subabase,
lo complicado que era
utilizar Subabase
justamente porque se duplicaba
toda esta información.
Y yo creo que,
claro,
tenías lo de Page
y lo de App Router,
y eso es lo que
ha costado bastante, ¿no?
A ver,
¿qué más...?
Esto de Stability,
esto de Stability,
la verdad,
me parece un poco
regulinchis,
sinceramente,
porque NextGS,
si una cosa tiene,
es que tú puedes actualizar
de la versión 12 a la 13
y no tienes que tocar nada,
no tienes por qué moverte
al App Router,
¿sabes?
O sea,
puedes utilizar Pages
y ya está,
o sea,
no hay ningún tipo de...
Y me parece que NextGS
realmente sí que pone foco
en la estabilidad,
independientemente
de la versión mayor
en la que esté,
que eso no significa
absolutamente nada,
o sea,
absolutamente nada.
Entiendo el ataque
que hace
de los React Server Components,
pero no sé,
o sea,
se supone que el equipo de React
dice que sí que está estable
para frameworks,
o sea,
que no sé.
Incremental Migration.
Sí,
yo en este caso,
o sea,
yo creo que sí que veo estable
NextGS,
no he visto un problema
de inestabilidad
en ese sentido,
¿no?
Capability.
Bueno,
Capability como que,
que bueno,
que no hay una comparativa
y no sé qué,
cuando reescribimos
un e-commerce
de NextGS
con Remix,
demostramos que Remix
resultó una mejor experiencia
de usuario
con mucho menos código.
La verdad es que Remix
me parece un framework maravilloso,
o sea,
está muy chulo,
yo lo he utilizado
unas cuantas veces,
a mí personalmente
me da un poco de pereza,
pero me da un poco de pereza
por diferentes cosas,
¿vale?
Me da un poco de pereza
por un lado
porque el equipo
en general
es bastante,
o sea,
tanto Michael Jackson
como Ryan Florence,
es gente que son muy buenos,
pero,
tío,
es que
hay una pelea constante
que a mí personalmente
me da bastante palo
y como que prefiero,
prefiero más
poner el foco en astro,
¿sabes?
Que no tener que ver
estas peleas,
que estar peleando ahora
con NextGS,
con no sé qué,
y la verdad,
este tipo de artículo
me va un poco
en esa línea
en la que están
en ese bucle constante
que a mí no me gusta mucho,
¿sabes?
Por otro lado,
creo que Remix,
que está súper chulo,
a mí todo el tema este
de que intentan hablarte
de Ria Router,
no sé qué,
no sé cuánto,
también me da un poco
de pereza
porque me gustaría
que Remix
fuese totalmente
algo nuevo,
diferente,
y déjame de hablar,
no me hagas comparaciones
con Ria Router,
el tema de la documentación
y todo esto,
y luego que a mí
personalmente
lo que me gustaría mucho
es que hubiese
mejor documentación,
a mí la documentación
que tienen
como que no me termina
de gustar mucho,
en mi opinión,
pero,
aún así,
me gusta bastante
el framework,
creo que tiene ideas
buenísimas,
y es innegable
que gracias a Remix
tenemos los
Nested Routes
en Next.js,
en eso,
o sea,
no hay ningún tipo
de duda,
¿vale?
O sea,
gracias a Remix,
gracias a Remix,
hemos conseguido
que Next.js
pues se pongan
mal las pilas
y así son las cosas,
y lo bueno de Next.js
es que obviamente
tiene equipos más grandes,
por eso tienen
una documentación
mucho mejor,
y ojalá Remix
llegase algún día
a ese momento,
ojalá,
porque para mí
es lo que le faltaría,
ya sería buenísimo,
¿eh?
Y este es el típico,
esto es,
¿no?
Raven Florence,
está más lejos
de estar listo,
no sé qué,
o sea,
está todo el rato aquí,
hostia,
Fresh,
mira,
Fresh me encanta,
y,
y,
ahí te voy a ir,
no sé,
es que es,
basta ya,
tío,
haced Remix
que sea increíble,
pero basta ya,
¿eh?