Grupos de excepciones (PEP 654), PYPI y hasta bitcoins y blockchains (¡sin hype!)
Autor: Jesús Cea & Otros - Contacto: python2021@podcast.jcea.es
Fecha de grabación: 2021/02/23 - Duración: 02:02:37
Fecha de publicación: 2021/05/27
Palabras clave: Tertulia
Descarga el audio: M4A (31541372 bytes) - OPUS (15456687 bytes)
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.
Javier, conectando desde Madrid.
Miguel Sánchez, email: msanchez@uninet.edu, conectando desde Canarias.
Eduardo Castro, email: info@ecdesign.es. Conectando desde A Guarda.
Víctor Ramírez, twitter: @virako, programador python y amante de vim, conectando desde Huelva.
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.
id()
se reutilizan cuando se liberan objetos.
id()
. No es una identidad persistente,
depende de su direcciñon de memoria y la memoria se
reutiliza cuando se liberan objetos.Lista de correo de Python Ideas: https://mail.python.org/mailman3/lists/python-ideas.python.org/.
Si usas la funcionalidad, la sintaxis y semántica de las excepciones se modifica.
Como ocurrió con async
y await
, si alguno de los
paquetes nuevos usa esta funcionalidad, te contaminará tu
propio código.
Tener varias versiones instaladas de Python.
make altinstall
es tu amiga para poder instalar varias
versiones diferentes de Python a la vez en el sistemas
operativo.
Diferencia entre llamar a python3
y llamar a python3.6
.
Matriz de tests.
Flake8: https://pypi.org/project/flake8/.
Si código Python 3 funciona en Python 2... ¿El código era Python 3 realmente?
Proyectos con compatibilidad mal especificada.
pyenv: https://pypi.org/project/pyenv/.
Pylint: https://pypi.org/project/pylint/.
Reformateador de código "nazi".
Se acabaron las discusiones de estilo.
¿Puede un formateador "nazi" ser configurable? ¿No es un oxímoron?
gitlint: https://jorisroovers.com/gitlint/.
vim-autopep8: https://vim-autopep8.readthedocs.io/en/latest/.
Grupos de excepciones: PEP 654 -- Exception Groups and except* https://www.python.org/dev/peps/pep-0654/.
async
/await
.PEP 622 -- Structural Pattern Matching https://www.python.org/dev/peps/pep-0622/.
PEP 634 -- Structural Pattern Matching: Specification https://www.python.org/dev/peps/pep-0634/.
PEP 635 -- Structural Pattern Matching: Motivation and Rationale https://www.python.org/dev/peps/pep-0635/.
PEP 636 -- Structural Pattern Matching: Tutorial https://www.python.org/dev/peps/pep-0636/.
Happy birthday, Python, you're 30 years old this week: Easy to learn, and the right tool at the right time https://www.theregister.com/2021/02/20/python_at_30/.
Compilación en sistemas operativos modernos: https://github.com/smontanaro/python-0.9.1.
Programar funciones de comparación personalizadas.
Definir tipos personalizados que sepan compararse entre sí.
Problemas al migrar un sistema de persistencia de Python 2 a Python 3.
import PIL
, la librería que reemplazó
hace eones?
Confuso.
Casos similares (hay muchos más):
python-dateutil https://pypi.org/project/python-dateutil/.
Beautiful Soup: https://pypi.org/project/beautifulsoup4/.
dnspython https://pypi.org/project/dnspython/.
Antes había contadores de descargas.
Ahora tenemos: (depende de Google)
PyPI Download Stats https://pypistats.org/.
pypinfo https://pypi.org/project/pypinfo/.
Encima dependes de ellos y queman el mercado para servicios comerciales.
La resignación y pasividad de los usuarios.
Por ejemplo: Videojuegos en red con servidores.
GeoCities https://es.wikipedia.org/wiki/GeoCities.
Package signing & detection/verification: https://github.com/pypa/warehouse/milestone/16.
Red distribuida por IPFS https://es.wikipedia.org/wiki/Sistema_de_archivos_interplanetario o BitTorrent https://es.wikipedia.org/wiki/BitTorrent.
PYPI proporciona RSS https://es.wikipedia.org/wiki/Rss.
PyPI recent updates https://pypi.org/rss/updates.xml.
PyPI newest packages https://pypi.org/rss/packages.xml.
Dinámicas de colaboración en proyectos de código abierto.
Core developer de Python: Mariatta Wijaya - What is a Python Core Developer? https://www.youtube.com/watch?v=hhj7eb6TrtI.
La importancia de la realimentación.
La compresión de datos en WebDAV.
Que la gestión de base de datos sea Python.
Bajar la barrera de entrada al proyecto.
Blockchain https://es.wikipedia.org/wiki/Cadena_de_bloques.
BitCoin desarrolla ideas muy interesantes.
Prueba de trabajo: https://es.wikipedia.org/wiki/Sistema_de_prueba_de_trabajo.
Cypherpunk: https://en.wikipedia.org/wiki/Cypherpunk.
Contrato inteligente: https://es.wikipedia.org/wiki/Contrato_inteligente.
Datos abiertos: https://es.wikipedia.org/wiki/Datos_abiertos.