logo

midulive


Transcribed podcasts: 746
Time transcribed: 15d 5h 20m 39s

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

Os voy a contar un peligro muy importante, ¿vale?
Porque, ojo, cuidado con esto, vais a alucinar con esta historia
y yo creo que en el mundo de la programación a veces se nos olvida este tipo de problemas que podemos encontrarnos.
No sé si conocéis este servicio que se llama polifal.io.
Este servicio, a ver, levante la mano si alguien lo ha utilizado, porque a lo mejor nadie lo ha utilizado.
Pero es verdad que hay muchas empresas que lo utilizan, incluso empresas bastante top.
Yo esto, por ejemplo, es una dependencia que yo la quité directamente de mi empresa, ¿vale?
Entonces, los que no lo conozcáis, no os preocupéis que yo os lo comento.
Levanto el pie, ¿vale? Nunca, nunca, ¿vale?
Veo que poca gente lo ha utilizado porque hay veces que no lo utilizáis sin saberlo, que eso también suele pasar.
No lo conoce ni el creador.
Mira, te sorprenderá, te sorprenderá.
Polifal.io lo puede estar utilizando millones de personas.
Millones de personas en el mundo.
Seguramente sin saberlo, ya sea por scripts de terceros y tal, lo utiliza un montón de gente.
Y el creador, además, es bastante famoso y lo creó Financial Times, o sea que imagínate.
Os explico para qué sirve.
Polifal.io, básicamente lo que hace, es un script en el que tú le puedes decir, oye, ¿qué es lo que quieres en tu página web?
¿Qué es lo que quieres soportar?
Y le dices, quiero soportar hasta todo lo que tiene Enmascript 2015.
Pues tú le das aquí, ¿vale?
Esto lo que hace es incluirte polyfills.
Los polyfills son pequeñas bibliotecas de JavaScript que lo que hacen es añadir esa funcionalidad al navegador.
Pero, ¿cómo?
Parcheando el JavaScript.
Por ejemplo, imagínate que quieres soportar Internet Explorer 6, no tienes soporte nativo a promesas, pero tú quieres utilizar promesas.
Con un polyfill, el polyfill lo que haría es añadir el JavaScript necesario para poder utilizar promesas en tu código sin tener que tener ningún problema, ¿vale?
Sin tener que preocuparte.
Entonces, aquí si le das, aquí podrías ver todas las features o características del lenguaje que vas a poder utilizar.
Por ejemplo, array.from, array.off, number.lo que sea, object.assign.
¿Por qué?
Porque hay navegadores que no soportan esto.
Son antiguos, obviamente.
Monkey patching.
A ver, el monkey patching sería la técnica con la que haces el polyfill, ¿vale?
El polyfill sería algo en concreto.
Y el monkey patching sería básicamente la técnica que puedes utilizar para hacer polyfill.
Pero no es la única, hay bastante, hay otras que podrías utilizar.
¿Qué es lo que se hacía?
Pues una vez que tú le decías cuál era los polyfills que querías utilizar porque querías tenerlo, pues esto te generaba una URL.
Tú lo cargabas en tu navegador, ¿vale?
Esto no sé por qué aparece, porque debería aparecer todo.
Design modification, no sé qué, no sé si es porque no, no sé si es porque no baja muy fino o porque beta sabe por qué.
A ver, default, tal, tal, tal, pero sale vacío.
Debería aparecer aquí un montón de JavaScript.
No sé por qué ahora no aparece, pero debería aparecer un montón de JavaScript.
Entonces, esto tú lo tenías que poner arriba del todo para que te cargase compatibilidad de todo esto.
Hay muchas librerías y de hecho, si vosotros buscáis en Google, vais a ver que hay incluso, yo qué sé, a ver si os lo encuentro, pero polyfile.io.
Vais a ver que hay un montón de, mira, 100.000 resultados, ¿eh?
¿Qué es lo que hace? No sé qué.
Mira, el tutorial de JavaScript, polyfill y transpiladores.
Pues fijaos que aquí lo están justamente recomendando.
Dos librerías interesantes de polyfile son polyfill.io, servicio que brinda un script con polyfile dependiendo de las características, tal, tal, tal.
Entonces, ya sabéis lo que es, ya sabéis lo que hace.
Y ahora os explico el peligro.
El tema es que esto lo tenías que poner dentro de, en tu página web, ¿vale?
Tú tenías que cargar este JavaScript en tu página web y esto detectaba automáticamente todos los polyfiles que tenías que cargar.
Claro, en este caso, ahora entiendo por qué sale vacío, porque seguramente el navegador que estoy utilizando ya está utilizando, ya tiene soporte de todo esto.
Pero si yo pongo que cargue, a ver si encontramos algo bastante moderno.
2022, vamos a ver, 2021.
A ver, yo creo que este...
Nada, tampoco.
Y a ver, Safari.
A ver si en Safari hay alguna cosita aún que...
¿Veis?
Esto lo que hacía es que detectaba si el navegador le faltaba alguna de esas funcionalidades y entonces te la cargaba automáticamente.
Está bastante interesante porque así cada navegador solo cargaba el JavaScript que le faltaba.
Esto, que a veces me dice la gente, es que he intentado utilizar esta funcionalidad que tú hablas y me he petado el navegador.
Claro, porque a lo mejor tu navegador que estás soportando no funciona todavía con esa característica, ¿vale?
La historia del peligro es que mucha gente ponía esto en la página web, ¿vale?
Ponía polifal.io ese script arriba de la página web, pero el problema que muchas veces tenemos es que no controlamos esto, ¿no?
O sea, tú pones este script en tu página web, arriba del todo, dices, ah, bueno, pues ya lo tengo hecho.
Bueno, pues amigos, ojo, cuidado, porque resulta que este producto, este proyecto pone que lo han vendido.
Se lo han vendido justamente a una empresa china, a una empresa china, Strategic Cooperation.
Bueno, pues aquí tenéis el anuncio.
Es que han comprado, esta empresa china súper random ha comprado este producto.
Y por lo tanto, ¿qué pasa con esto?
Pues que ahora, imaginad, millones, porque son millones de páginas web que están utilizando este servicio,
ahora ahí se le puede inyectar lo que sea.
Se le puede inyectar cualquier JavaScript.
O sea, no teníamos ni puñetera idea, pero es que ahora, por lo que sea, puede ser que se le inyecte el JavaScript que ellos quieran.
Andrew Betts, que era el creador, dice, si tu página está utilizando polifal.io, quítalo inmediatamente.
Creé este servicio como un proyecto, pero nunca he tenido el dominio.
Y ya no tengo ninguna influencia sobre esta venta, porque lo han vendido.
Entonces, imaginaos esto, venderlo a uno de terceros.
Dice, no hay ninguna página que hoy requiera polifal en polifal.io.
Casi todo ya está funcionando, no sé qué, no sé cuánto.
Claro, dice, hay dominios que sirven third-party scripts que tienen seguridad, o sea, que les preocupa bastante la seguridad.
El equipo de Google Analytics, por ejemplo, pueden modificar.
Claro, la gente de Google Analytics podría inyectar cualquier cosa, pero claro, Google Analytics, digamos que es un dominio de confianza.
Confianza.
Pero imagínate una empresa random, China, compra ahora este servicio, un dominio que lo están cargando millones de páginas a Internet.
Puede ser, puede ser fiable, ¿eh?
Quién sabe.
Pero no tiene buena pinta.
No tiene buena pinta.
De hecho, lo peor de todo es que si nos vamos a polifal.io y miráis en los términos y condiciones, y por aquí buscáis virus, os dice, no somos responsables de virus y no tienes que introducirlos.
No garantizamos que polifal.io sea seguro, libre de bugs o de virus.
Tú eres el responsable de configurar tu información.
O sea, deberías crear, o sea, utilizar cualquier protección de virus de software.
O sea, tú imagínate cómo de tranquilo estás leyendo esto.
Ahora es mi culpa, efectivamente.
Me fío más de una empresa random china que de Google.
Yo no es porque sea random, no es porque sea china ni porque sea random, sino es por un tema de visibilidad.
No es porque sea random o china.
Es que podría ser el bar Paco y al ser tan desconocida y no tener ningún tipo de, digamos, interés a lo mejor, yo lo que creo es que podría ser bastante peligroso.
Es que ahora tiene un control una empresa que yo no sé ni a qué se dedica.
Pues no, la verdad, no me quedo tranquilo.
Que yo ya os digo, yo tampoco cargo Google Analytics ni nada de esto.
Fijaos que en las Isus, también aquí, dice la gente, ¿es verdad que polifal.io ahora es de una empresa china?
¿Vale?
Fijaos, es que es china, es que esto es muy random, tío.
Es que es muy, muy random.
Es muy random.
Pues dice por aquí que sí, que sí, que es totalmente, que es verdad.
Que tal, que la gente se prepare.
Total, que si estáis utilizando polifal.io, revisadlo, ¿vale?
Porque yo creo que no tiene buena pinta.
Hizo falta que lo comprara una empresa china para que los devs se pongan las pilas y lo quiten de sus proyectos.
Sí, porque la verdad es que yo siempre me ha parecido muy mala idea.
No es la mejor práctica para hacerlo.
Sí que era interesante en su día, ¿vale?
Pero tal, es open source.
Pero aunque sea open source, ojo, cuidado, porque tú puedes tener el código,
pero una vez que lo despliegas puede cambiar ciertas cosas.
Entonces tú puedes tener el código, sí, pero luego lo que despliegas no será exactamente lo mismo.
Entonces tened cuidado, tened cuidado.
Pero...