Python en español #20: Tertulia 2021-02-16
Description
Participantes:
Eduardo Castro, email:
info@ecdesign.es. Conectando desde A
Guarda.Jesús Cea, email: jcea@jcea.es, twitter:
@jcea, https://blog.jcea.es/,
https://www.jcea.es/. Conectando desde Madrid.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="53" ts="93">[01:33 ]<topic> Cómo documentar en Python.</topic></timestamp>
Google docs: https://docs.google.com.
Wikis en GitHub:
https://docs.github.com/en/communities/documenting-your-project-with-wikis/about-wikis.Ventajas de tener la documentación en el control de
versiones del proyecto.Ventajas de ir escribiendo la documentación mientras
escribes el propio código: Realimentación.Sphinx: https://www.sphinx-doc.org/en/master/.
sphinx.ext.autodoc:
https://www.sphinx-doc.org/en/master/usage/extensions/autodoc.html.plantuml: https://github.com/sphinx-contrib/plantuml.
Markdown: https://www.markdownguide.org/.
<timestamp compact="1" offset="53" ts="228">[03:48 ]<topic> La vieja guardia es escéptica con las novedades de
la semana.</topic></timestamp>- No hay balas de plata.
La documentación guía el desarrollo.
Paralelismo con los tests.
<timestamp compact="1" offset="53" ts="518">[08:38 ]<topic> Open source y la vergüenza: tests y documentación.</topic></timestamp>
<timestamp compact="1" offset="53" ts="568">[09:28 ]<topic> CPython Internals Book
https://realpython.com/products/cpython-internals-book/.</topic></timestamp><timestamp compact="1" offset="53" ts="673">[11:13 ]<topic> HPy https://hpyproject.org/. Nuevo API
https://es.wikipedia.org/wiki/Api para programar extensiones C
para Python, independizándote de la versión del intérprete y
compatible con cosas como PyPy: https://www.pypy.org/.</topic></timestamp><timestamp compact="1" offset="53" ts="798">[13:18 ]<topic> Internet Archive como biblioteca de libros modernos:
https://archive.org/details/inlibrary.</topic></timestamp>Funciona como una biblioteca tradicional.
Préstamo de libros.
Están escaneando a toda velocidad: 2.5 millones de libros en
el momento de escribir estas notas (mayo de 2021).Internet Archive: https://archive.org/.
Wayback Machine: https://web.archive.org/.
Preservación de videojuegos, páginas en flash, discos de
música...
<timestamp compact="1" offset="53" ts="1023">[17:03 ]<topic> Web de Python en Internet Archive.</topic></timestamp>
1997:
https://web.archive.org/web/19970606181701/http://www.python.org/.1998:
https://web.archive.org/web/19981212032130/http://www.python.org/.Un ejemplo de "batteries included":
https://commons.wikimedia.org/wiki/File:Python_batteries_included.jpg.
<timestamp compact="1" offset="53" ts="1073">[17:53 ]<topic> Jesús Cea echa de menos la internet distribuida.</topic></timestamp>
<timestamp compact="1" offset="53" ts="1103">[18:23 ]<topic> Pattern Matching en Python 3.10. PEP 622 -- Structural
Pattern Matching https://www.python.org/dev/peps/pep-0622/.</topic></timestamp>¿"match" y "case" serán palabras reservadas?
PEP 617 -- New PEG parser for CPython
https://www.python.org/dev/peps/pep-0617/.Se repasa la funcionalidad un poco por encima.
<timestamp compact="1" offset="53" ts="1668">[27:48 ]<topic> Logs fáciles de configurar y decorados con colorines:</topic></timestamp>
Daiquiri: https://daiquiri.readthedocs.io/en/latest/.
Colorama: https://pypi.org/project/colorama/. Compatible
con Windows.
<timestamp compact="1" offset="53" ts="1768">[29:28 ]<topic> Truco:
Python -i
: Ejecuta un script y pasa a modo
interactivo.</topic></timestamp>Comentado hace unas semanas.
También se puede hacer desde el propio código con
code.InteractiveConsole(locals=globals()).interact()
.Jesús Cea se queja de que usando la invocación desde código
no funciona la edición de líneas. Javier da la pista correcta:
para que funcione, basta con hacerimport readline
antes de
lanzar el modo interactivo.<timestamp compact="1" offset="53" ts="1848">[30:48 ]<topic> Manhole: https://pypi.org/project/manhole/.</topic></timestamp>
<timestamp compact="1" offset="53" ts="1913">[31:53 ]<topic> Breakpoints condicionales
https://docs.python.org/3/library/pdb.html#pdbcommand-condition.</topic></timestamp>breakpoint()
como función nativa: PEP 553 -- Built-in
breakpoint() https://www.python.org/dev/peps/pep-0553/.import pdb; pdb.set_trace()
.
<timestamp compact="1" offset="53" ts="2008">[33:28 ]<topic> Scraping a mano:</topic></timestamp>
scrapy shell:
https://docs.scrapy.org/en/latest/topics/shell.html.Jesús Cea no echa de menos Scrapy
https://docs.scrapy.org/en/latest/.
<timestamp compact="1" offset="53" ts="2163">[36:03 ]<topic> Indexador y buscador de documentos: Whoosh
https://whoosh.readthedocs.io/en/latest/intro.html.</topic></timestamp>Jesús necesitaba ignorar tildes, lo que impacta en la
extracción del lexema.El backend está documentado, para que te lo puedas currar tú
si lo necesitas.
<timestamp compact="1" offset="53" ts="2303">[38:23 ]<topic> ¿Cómo hacer copia de seguridad de un fichero de 600
gigabytes con pocos cambios internos?</topic></timestamp><timestamp compact="1" offset="53" ts="2458">[40:58 ]<topic> Eduardo Castro ha ganado un hackathon en Pontevedra.</topic></timestamp>
Software para Django: https://www.djangoproject.com/.
<timestamp compact="1" offset="53" ts="2798">[46:38 ]<topic> Experiencias agridulces con los hackathones
https://en.wikipedia.org/wiki/Hackathon.</topic></timestamp>- Netflix Prize https://en.wikipedia.org/wiki/Netflix_Prize.
<timestamp compact="1" offset="53" ts="3038">[50:38 ]<topic> Una URL puede no estar no disponible ya cuando escuchas
el podcast:</topic></timestamp>- Podcast: Programar es una mierda:
https://www.programaresunamierda.com/.
- Podcast: Programar es una mierda:
<timestamp compact="1" offset="53" ts="3148">[52:28 ]<top