Python en español #26: Tertulia 2021-03-30 - a podcast by Jesús Cea, Samuel de Ancos y Juan Ignacio Rodríguez de León
from 2021-06-17T23:00
Diseccionamos la charla de Juan Luis Cano"Python Packaging: Lo estás haciendo mal"y mucho DevOpshttps://podcast.jcea.es/python/26
Este audio tiene mucho ruido producido por el roce del micrófono
de Jesús Cea en la ropa.
Participantes:
Jesús Cea, email:jcea@jcea.es, twitter:@jcea,https://blog.jcea.es/,https://www.jcea.es/. Conectando desde Madrid.
Felipem, conectando desde Cantabria.
Víctor Ramírez, twitter:@virako,
programador python y amante devim, conectando desde
Huelva.Javier, conectando desde Madrid.
Audio editado por Pablo Gómez, twitter:@julebek.
La música de la entrada y la salida es"Lightning Bugs", de Jason
Shaw. Publicada enhttps://audionautix.com/con licencia
-Creative Commons Attribution 4.0 International
License.
[00:50] Preludio. Hay que automatizarlo todo, y lo que no se puede
automatizar, se documenta.Detalles de calidad de grabación.
Lo que falta para publicar los audios.
- toc2audiohttps://docs.jcea.es/toc2audio/.
La publicación de audios es inminente.
Diversas plataformas de podcasthttps://es.wikipedia.org/wiki/Podcasting.
¿Y publicar en Youtube?
Estadísticas de descarga.
[08:20] Autonomía digital. ¡Muerte al MP3!https://es.wikipedia.org/wiki/MP3
[10:20] Jesús Cea se queja de que la encuesta de programadores
de Python no es sobre Python.- Python Developers Survey 2020 Resultshttps://www.jetbrains.com/lp/python-developers-survey-2020/
[11:55] Python Packaging: Lo estás haciendo malhttps://www.youtube.com/watch?v=OeOtIEDFr4Y. La charla ha gustado bastante en general.
Mucha documentación online está anticuada. Viene bien una
lista de"buenas prácticas"actualizadas.El peso del"legado"anticuado.
El ecosistema se está moviendo muy rápido.
Buenas prácticas:https://packaging.python.org/. Esperemos
que alguien mantenga eso actualizado.PEP 621 -- Storing project metadata in pyproject.tomlhttps://www.python.org/dev/peps/pep-0621/.
Pecado que Jesús Cea comete constantemente: ¡instalar
paquetes a nivel de sistema operativo!. No le da problemasporque hace tantas barbaridades que se cancelan unas a
otras. ¡Tú mejor que sigas las recomendaciones de Juan LuisCanohttps://twitter.com/juanluisback!pipenv es el malhttps://pypi.org/project/pipenv/.
pip-toolshttps://pypi.org/project/pip-tools/.
- pip-compile.
pipdeptreehttps://pypi.org/project/pipdeptree/.
[35:28] A la hora de fijar dependencias, no es lo mismo
bibliotecas que aplicaciones.[40:58] ¿Estar a la última o actualizar cuando no hay más
remedio?¡Tests de integración!https://es.wikipedia.org/wiki/Prueba_de_integraci%C3%B3n
[45:15] Un 100% de cobertura de código no garantiza que se
ejecuten todos los estados del código.
[49:10] Tests de mutacioneshttps://es.wikipedia.org/wiki/Prueba_de_mutaci%C3%B3n. hypothesishttps://pypi.org/project/hypothesis/.
[50:50] Flithttps://pypi.org/project/flit/. PEP 420 -- Implicit Namespace Packageshttps://www.python.org/dev/peps/pep-0420/.
PEP 621 -- Storing project metadata in pyproject.tomlhttps://www.python.org/dev/peps/pep-0621/.
[55:35] PEP 427 -- The Wheel Binary Package Format 1.0https://www.python.org/dev/peps/pep-0427/. Problemas para que los Wheel soporten las nuevas versiones
de Python.Cuando sale una nueva versión de Python, suele ser
necesario esperar para tener soporte Wheels de lospaquetes que nos interesan.ELF (Executable and Linkable Format):https://en.wikipedia.org/wiki/Executable_and_Linkable_Format.
[01:03:10] ¿Alguien usando un sistema operativo viejo va a
instalar una versión moderna de Python?Si puedes instalar Python desde código fuente, seguro
que puedes compilar mi librería desde código fuentetambién.Ojo con los paquetes binarios avanzados en CPUs
antiguas.
[01:10:48] Dockerhttps://es.wikipedia.org/wiki/Docker_(software). [01:11:20] Réplicas locales de PyPIhttps://pypi.org/y
PyPI privados.[01:14:45] ccachehttps://ccache.dev/.
[01:18:58] HPyhttps://hpyproject.org/. [01:20:10] ¿Proponer temas esotéricos? ¿Mandar deberes? [01:21:05] Más sobre HPyhttps://hpyproject.org/. API alternativa para módulos Python en C.https://es.wikipedia.org/wiki/Interfaz_de_programaci%C3%B3n_de_aplicaciones.
Permite generar un Wheelhttps://www.python.org/dev/peps/pep-0427/que funciona en
varias versiones de Python.Buen rendimiento tanto en CPython como en PyPyhttps://www.pypy.org/.
Posible APIhttps://es.wikipedia.org/wiki/Interfaz_de_programaci%C3%B3n_de_aplicacionesfuturo para CPython.
[01:29:02] Ayuda para adecentar la página web de los podcasts:https://podcast.jcea.es/python/. La publicación de los audios es inminente.
Reusaremos el podcast"Python en español"https://podcast.jcea.es/python/. He pedido permiso a mis
antiguos compañeros.CSS:https://es.wikipedia.org/wiki/Hoja_de_estilos_en_cascada.
Hay tanto retraso en la publicación que cualquier"feedback"tardará en salir y en notarse sus efectos.
[01:35:10] Canal de Telegram de coordinación:https://t.me/joinchat/y__YXXQM6bg1MTQ0. [01:36:10] Machete Modehttps://nedbatchelder.com/blog/202103/machete_mode_tagging_frames.html. Usarlo para depurar un bug.
Pena de muerte en producción.
Ideas locas: James Powellhttps://twitter.com/dontusethiscode.
Conocimiento íntimo del lenguaje y de su implementación.
- Javier disfruta dando charlas de temas profundos y
esotéricos.
- Javier disfruta dando charlas de temas profundos y
[01:42:30] El parche de Memory Leak ya se ha integrado el
Python.- bpo-35930: Raising an exception raised in a"future"instance will create reference cycles #24995https://github.com/python/cpython/pull/24995.
[01:43:30] Despedida y deberes futuros. Security funding& NYUhttps://discuss.python.org/t/new-packaging-security-funding-nyu/7792.
TUF (The Update Framework)https://theupdateframework.io/.
PEP 458 -- Secure PyPI downloads with signed repository
metadatahttps://www.python.org/dev/peps/pep-0458/.PEP 480 -- Surviving a Compromise of PyPI: End-to-end
signing of packageshttps://www.python.org/dev/peps/pep-0480/.En honor a Eduardo, que no se ha conectado hoy, metemos
ruido de teclado para que nuestro editor Pablo no lo eche demenos.
[01:48:20] Final.
Further episodes of Python en español
Further podcasts by Jesús Cea, Samuel de Ancos y Juan Ignacio Rodríguez de León
Website of Jesús Cea, Samuel de Ancos y Juan Ignacio Rodríguez de León