Python en español #26: Tertulia 2021-03-30
Description
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 de
vim, 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 en https://audionautix.com/ con licencia
- Creative Commons Attribution 4.0 International
License.
<timestamp compact="1" offset="50" ts="50">[00:50 ]<topic> Preludio.</topic></timestamp>
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.
- toc2audio https://docs.jcea.es/toc2audio/.
La publicación de audios es inminente.
Diversas plataformas de podcast
https://es.wikipedia.org/wiki/Podcasting.Spotify https://es.wikipedia.org/wiki/Spotify.
¿Y publicar en Youtube?
Estadísticas de descarga.
<timestamp compact="1" offset="50" ts="500">[08:20 ]<topic> Autonomía digital.</topic></timestamp>
¡Muerte al MP3! https://es.wikipedia.org/wiki/MP3
<timestamp compact="1" offset="50" ts="620">[10:20 ]<topic> Jesús Cea se queja de que la encuesta de programadores
de Python no es sobre Python.</topic></timestamp>- Python Developers Survey 2020 Results
https://www.jetbrains.com/lp/python-developers-survey-2020/
- Python Developers Survey 2020 Results
<timestamp compact="1" offset="50" ts="715">[11:55 ]<topic> Python Packaging: Lo estás haciendo mal
https://www.youtube.com/watch?v=OeOtIEDFr4Y.</topic></timestamp>https://github.com/astrojuanlu/charla-python-packaging.
La charla ha gustado bastante en general.
Flit https://pypi.org/project/flit/.
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.toml
https://www.python.org/dev/peps/pep-0621/.Pecado que Jesús Cea comete constantemente: ¡instalar
paquetes a nivel de sistema operativo!. No le da problemas
porque hace tantas barbaridades que se cancelan unas a
otras. ¡Tú mejor que sigas las recomendaciones de Juan Luis
Cano https://twitter.com/juanluisback!pipenv es el mal https://pypi.org/project/pipenv/.
pip-tools https://pypi.org/project/pip-tools/.
- pip-compile.
pipdeptree https://pypi.org/project/pipdeptree/.
<timestamp compact="1" offset="50" ts="2128">[35:28 ]<topic> A la hora de fijar dependencias, no es lo mismo
bibliotecas que aplicaciones.</topic></timestamp><timestamp compact="1" offset="50" ts="2458">[40:58 ]<topic> ¿Estar a la última o actualizar cuando no hay más
remedio?</topic></timestamp>¡Tests de integración!
https://es.wikipedia.org/wiki/Prueba_de_integraci%C3%B3n<timestamp compact="1" offset="50" ts="2715">[45:15 ]<topic> Un 100% de cobertura de código no garantiza que se
ejecuten todos los estados del código.</topic></timestamp>
<timestamp compact="1" offset="50" ts="2950">[49:10 ]<topic> Tests de mutaciones
https://es.wikipedia.org/wiki/Prueba_de_mutaci%C3%B3n.</topic></timestamp>hypothesis https://pypi.org/project/hypothesis/.
mutant https://pypi.org/project/mutant/.
<timestamp compact="1" offset="50" ts="3050">[50:50 ]<topic> Flit https://pypi.org/project/flit/.</topic></timestamp>
PEP 420 -- Implicit Namespace Packages
https://www.python.org/dev/peps/pep-0420/.PEP 621 -- Storing project metadata in pyproject.toml
https://www.python.org/dev/peps/pep-0621/.
<timestamp compact="1" offset="50" ts="3335">[55:35 ]<topic> PEP 427 -- The Wheel Binary Package Format 1.0
https://www.python.org/dev/peps/pep-0427/.</topic></timestamp>Conda: https://docs.conda.io/en/latest/.
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 los
paquetes que nos interesan.ELF (Executable and Linkable Format):
https://en.wikipedia.org/wiki/Executable_and_Linkable_Format.<timestamp compact="0" offset="50" ts="3790">[01:03:10 ]<topic> ¿Alguien usando un sistema operativo viejo va a
instalar una versión moderna de Python?</topic></timestamp>Si puedes instalar Python desde código fuente, seguro
que puedes compilar mi librería desde código fuente
también.Ojo con los paquetes binarios avanzados en CPUs
antiguas.SSE:
https://en.wikipedia.org/wiki/Streaming_SIMD_Extensions.cmov:
https://en.wikipedia.org/wiki/Predication_(computer_architecture)#History.
<timestamp compact="0" offset="50" ts="4248">[01:10:48 ]<topic> Docker
https://es.wikipedia.org/wiki/Docker_(software).</topic></timestamp><timestamp compact="0" offset="50" ts="4280">[01:11:20 ]<topic> Réplicas locales de PyPI https://pypi.org/ y
PyPI privados.</topic></timestamp><timestamp compact="0" offset="50" ts="4485">[01:14:45 ]<topic> ccache https://ccache.dev/.</topic></timestamp>
Ansible: https://es.wikipedia.org/wiki/Ansible_(software).
<timestamp compact="0" offset="50" ts="4738">[01:18:58 ]<topic> HPy https://hpyproject.org/.</topic></timestamp>
<timestamp compact="0" offset="50" ts="4810">[01:20:10 ]<topic> ¿Proponer temas esotéricos? ¿Mandar deberes?</topic></timestamp>
<timestamp compact="0" offset="50" ts="4865">[01:21:05 ]<topic> Más sobre HPy https://hpyproject.org/.</topic></timestamp>
API alternativa para módulos Python en C.
https://es.wikipedia.org/wiki/Interfaz_de_programaci%C3%B3n_de_aplicaciones.Permite generar un Wheel
<a href="https://www.python.org/dev/peps/p