Python en español

Jesús Cea
Python en español

Python en español.

  1. 12/07/2021

    Python en español #29: Tertulia 2021-04-20

    Plataformas centralizadas, GIL, aprendizaje automático, Pydantic y Python 3.10, y hemos renunciado a llevar la cuenta de los gazapos que metemos en cada tertulia https://podcast.jcea.es/python/29 Participantes: 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. Felipem, conectando desde Cantabria. Juan José, Nekmo, https://nekmo.com/, https://github.com/Nekmo/. Madrileño conectando desde Málaga. Jesús, conectando desde Ferrol. Eduardo Castro, email: info@ecdesign.es. Conectando desde A Guarda. 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. [00:52] "Vamos a ir cortando" es la entrada de Jesús Cea para que alguien proponga temas durante media hora más. [02:27] ¡Ha salido el primer podcast!: Python en español #7: ¡Metapodcast de relanzamiento! https://podcast.jcea.es/python/7. Plataformas de podcasting. No necesitas ninguna plataforma, puedes usar directamente el feed RSS https://es.wikipedia.org/wiki/Rss. Funkwhale https://funkwhale.audio/. toc2audio https://docs.jcea.es/toc2audio/. Jesús Cea tiene su propia plataforma de podcasting, herramientas, etc. Quiere evitar la centralización a toda costa. [07:37] Mercurial https://es.wikipedia.org/wiki/Mercurial y Git https://es.wikipedia.org/wiki/Git. En Mercurial https://es.wikipedia.org/wiki/Mercurial es imposible modificar la historia. Es imposible hacer nada sofisticado en Git https://es.wikipedia.org/wiki/Git sin recurrir a Google. Mercurial - Filosofía y visión de alto nivel: https://www.jcea.es/artic/mercurial_madrid/. Bitbucket https://bitbucket.org/ ya no soporta Mercurial. Hay alternativas pequeñitas. Por ejemplo, Heptapod https://heptapod.net/. Más referencias en https://www.mercurial-scm.org/wiki/MercurialHosting. ¡Evita la centralización! Al final, el 99.9% de los proyectos de código abierto los mantienen los autores originales en exclusiva. Microsoft to acquire GitHub for $7.5 billion https://news.microsoft.com/2018/06/04/microsoft-to-acquire-github-for-7-5-billion/. ¿Trabajar por visibilidad? Eso se cura con la edad. Mantener infraestructura propia tiene su coste, pero puedes pagar a alguien para que lo haga, promoviendo multitud de plataformas federadas en vez de centralizar internet más y más. En cada campo de internet, hay uno o dos ganadores y nadie más pinta nada. Jesús Cea se queja mucho de eso. [21:54] Herramientas de aprendizaje automático (Machine Learning) https://es.wikipedia.org/wiki/Aprendizaje_autom%C3%A1tico: Diferencia entre aprendizaje automático "de toda la vida" y el aprendizaje con refuerzo https://es.wikipedia.org/wiki/Aprendizaje_por_refuerzo. Redes neuronales: TensorFlow https://es.wikipedia.org/wiki/TensorFlow y Keras https://es.wikipedia.org/wiki/Keras. Procesado de texto: NLTK https://es.wikipedia.org/wiki/NLTK. scikit-learn https://scikit-learn.org/stable/index.html. Algunos libros: Python Machine Learning - Second Edition: Machine Learning and Deep Learning with Python, scikit-learn, and TensorFlow https://www.amazon.es/Python-Machine-Learning-Sebastian-Raschka/dp/1787125939/. Hay versión en castellano. "TensorFlow en un dia" https://www.amazon.es/TensorFlow-Day-Neural-Network-English-ebook/dp/B07H474R7Q/. Hay versión en castellano. Packt publica un libro gratis al día, muchos de aprendizaje automático: https://www.packtpub.com/free-learning. "Towards Data Science" https://towardsdatascience.com/. Medium https://medium.com/. Otra plataforma centralizada de las que tan

    2 h
  2. 29/06/2021

    Python en español #28: Tertulia 2021-04-13

    Tener varias versiones de Python en el mismo ordenador, estado de Durus, su licencia y cómo funciona la persistencia de datos https://podcast.jcea.es/python/28 Participantes: Jesús Cea, email: jcea@jcea.es, twitter: @jcea, https://blog.jcea.es/, https://www.jcea.es/. Conectando desde Madrid. Jesús, conectando desde Ferrol. Felipem, conectando desde Cantabria. 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. Sergio, conectando desde Vigo. Juan José, Nekmo, https://nekmo.com/, https://github.com/Nekmo/. Madrileño conectando desde Málaga. Miguel Sánchez, email: msanchez@uninet.edu, conectando desde Las Palmas. 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. [00:52] Presentaciones. [03:47] Utilizar diferentes versiones de Python en el mismo ordenador. Cada paquete instalado está vinculado a una instancia concreta de Python instalada en el sistema. Nunca hacer pip install, sino indicar la versión: pip3.9 install. A la hora de instalar paquetes Python en la versión nativa del sistema operativo, se puede usar pip o bien el gestor de paquetes del sistema operativo. Mezclar ambas es una receta para el desastre. [16:37] Un problema de los paquetes precompilados ("wheels" https://www.python.org/dev/peps/pep-0427/) es que no se suelen precompilar de forma retroactiva para la última versión de Python que acaba de salir. No suelen estar disponibles hasta que sale una versión nueva del paquete, lo que puede tardar meses. [19:52] ¿Bibliotecas para manejar imágenes, compatibles con PyPy https://www.pypy.org/? Numpy https://numpy.org/ aún no funciona en PyPy https://www.pypy.org/. [21:17] ¿Qué es PyPy https://www.pypy.org/ exactamente? Jit: Compilación al vuelo https://es.wikipedia.org/wiki/Compilaci%C3%B3n_en_tiempo_de_ejecuci%C3%B3n. Barrera de entrada muy grande para entrar en el proyecto. Curva de aprendizaje. Problemas con los módulos en C. No valoraron la importancia del ecosistema. HPy https://hpyproject.org/. [27:27] Experiencia de un par de semanas con Flit https://pypi.org/project/flit/. Jesús Cea lo está utilizando para publicar su biblioteca toc2audio https://docs.jcea.es/toc2audio/. Herramienta propuesta en la charla "Python Packaging: Lo estás haciendo mal" https://www.youtube.com/watch?v=OeOtIEDFr4Y, de Juan Luis Cano. https://github.com/astrojuanlu/charla-python-packaging. https://nbviewer.jupyter.org/format/slides/github/astrojuanlu/charla-python-packaging/blob/main/Charla%20Python%20packaging.ipynb#/ PEP 621 -- Storing project metadata in pyproject.toml https://www.python.org/dev/peps/pep-0621/. Lo importante que es tener enlaces directos al "changelog" o a la documentación en PyPI https://pypi.org/. [31:32] Módulos de documentación. Carencias. Docstrings. doctest https://docs.python.org/3/library/doctest.html. Sphinx https://pypi.org/project/Sphinx/. make html. Tema eterno: Incluir una biblioteca en la biblioteca estándar o como biblioteca estándar. ReST: reStructuredText https://docutils.sourceforge.io/rst.html. PEP 287 -- reStructuredText Docstring Format https://www.python.org/dev/peps/pep-0287/. docutils: https://pypi.org/project/docutils/. [40:02] ¿Formato tertulia o preguntas y respuestas? [41:22] Estado actual de Durus https://www.mems-exchange.org/software/DurusWorks/ y comentarios variados sobre el sistema de persistencia. Jesús Cea ha estado intentando conectar con los autores, con poco éxito. Jesús Cea tiene problemas con la licencia. ¿Abandonar el proyecto y pasarse a ZO

    1 h y 17 min
  3. 19/06/2021

    Python en español #27: Tertulia 2021-04-06

    Flit, estilos de código, reducir no es optimizar, muchas opiniones sobre cómo documentar software y minutos sobre el audio de las tertulias y su inminente publicación https://podcast.jcea.es/python/27 Participantes: Jesús Cea, email: jcea@jcea.es, twitter: @jcea, https://blog.jcea.es/, https://www.jcea.es/. Conectando desde Madrid. 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. 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. [00:52] Prólogo y comentarios sobre la calidad del audio en las grabaciones. Auriculares para evitar pedir demasiado al sistema de cancelación de eco, sobre todo si la sala tiene reverberación. ¡Manos fuera del teclado! [03:32] Consejos que ha dado Pablo Gómez para mejorar nuestras grabaciones. [04:52] Cómo conecta y graba las tertulias Jesús Cea. [06:22] Publicación inminente de las tertulias. toc2audio https://docs.jcea.es/toc2audio/. [07:22] Revisamos el micro de Jesús Cea y sus roces con la ropa en tiempo real. Fue muy entretenido. [09:32] Repaso de la tertulia pasada. toc2audio https://docs.jcea.es/toc2audio/ usa Flit https://pypi.org/project/flit/. Erratas de lo que se dijo la tertulia pasada sobre Flit https://pypi.org/project/flit/. [11:20] ¿Cómo se añaden comandos nuevos al sistema en MS Windows (en Python, claro)? [17:52] La nota legal de rigor y presentación de los tertulianos. [19:27] Revisión estética de "Python en Español" https://podcast.jcea.es/python/. ¿Algún voluntario? [20:52] Más sobre Flit https://pypi.org/project/flit/ Problemas con los namespaces (PEP 420 -- Implicit Namespace Packages https://www.python.org/dev/peps/pep-0420/). [21:42] Estilo de código. La mayor parte del código abierto lo mantiene una sola persona. Tener una cultura común de código abierto ayuda. PEP 8 https://pep8.org/. [24:44] Mejor explícito que implícito. "from X import Y as Z". Cuidado con las microoptimizaciones. Reducir no es optimizar, necesariamente. Comentarios obvios sin utilidad. Los comentarios deben explicar el contexto, no lo que puedes ver directamente en el código. Ejemplos de comentarios inútiles. Metacomentarios: Linter https://es.wikipedia.org/wiki/Lint. Vim https://es.wikipedia.org/wiki/Vim. [55:32] Temas de actualidad. Nuevas versiones (fallidas) de Python 3.8 y 3.9. Última alpha de Python 3.10. Caída de PyPI https://pypi.org/: PyPI Unavailable : https://status.python.org/incidents/rw171ylf8jw3. [57:27] Rarezas Python. What does this print, #1: https://blog.kevmod.com/2014/06/what-does-this-print-1/. Depende de la implementación. Da pistas de cómo funciona la implementación Python por dentro. Hay muchas ambigüedades en las implementaciones de Python. Hay muchas reglas implícitas no documentadas. [01:00:52] Uso de variables globales. Condiciones de carrera: https://es.wikipedia.org/wiki/Condici%C3%B3n_de_carrera. Conflictos entre múltiples instancias o múltiples hilos. Patrón de diseño "singleton" https://es.wikipedia.org/wiki/Singleton. ¿Qué es una variable global? "Contextvars": https://docs.python.org/3/library/contextvars.html. Jesús Cea amenaza con usar "Contextvars" https://docs.python.org/3/library/contextvars.html en su proyecto "toc2audio" https://docs.jcea.es/toc2audio/ por pura chulería. "Closures": https://es.wikipedia.org/wiki/Clausura_(inform%C3%A1tica). [01:08:02] ¿Cómo se hacen pruebas con "closures" https://es.wikipedia.org/wiki/Clausura_(inform%C3%A1tica) o decoradores sofi

    1 h y 27 min
  4. 17/06/2021

    Python en español #26: Tertulia 2021-03-30

    Diseccionamos la charla de Juan Luis Cano "Python Packaging: Lo estás haciendo mal" y mucho DevOps https://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 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. [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. 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. [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 Results https://www.jetbrains.com/lp/python-developers-survey-2020/ [11:55] Python Packaging: Lo estás haciendo mal https://www.youtube.com/watch?v=OeOtIEDFr4Y. https://github.com/astrojuanlu/charla-python-packaging. https://nbviewer.jupyter.org/format/slides/github/astrojuanlu/charla-python-packaging/blob/main/Charla%20Python%20packaging.ipynb#/ 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/. [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 mutaciones https://es.wikipedia.org/wiki/Prueba_de_mutaci%C3%B3n. hypothesis https://pypi.org/project/hypothesis/. mutant https://pypi.org/project/mutant/. [50:50] Flit https://pypi.org/project/flit/. 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/. [55:35] PEP 427 -- The Wheel Binary Package Format 1.0 https://www.python.org/dev/peps/pep-0427/. 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_Linkabl

    1 h y 49 min
  5. 09/06/2021

    Python en español #25: Tertulia 2021-03-23

    Pattern Matching en Python 3.10, Sans IO y Encuesta mundial de programadores Python https://podcast.jcea.es/python/25 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. Jesús, conectando desde Ferrol. Víctor Ramírez, twitter: @virako, programador python y amante de vim, conectando desde Huelva. Eduardo Castro, email: info@ecdesign.es. Conectando desde A Guarda. 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. [00:52] Advertencia de que el audio tiene lagunas y puede ser difícil seguir el hilo. [01:07] Conecta gente nueva y cambio de horario. ¡Queremos que las tertulias sean más cortas! [04:57] Python 3.10: ¿Mandar y cómo mandar deberes? ¿Probar las novedades cuando se anuncian o esperar a que entren en producción? [08:19] Presentaciones. [10:32] Jesús Cea ha enviado ya el parche para el bug que se discutió en navidades: Issue35930: Raising an exception raised in a "future" instance will create reference cycles https://bugs.python.org/issue35930. [11:12] Los que se autodenominan novatos también tienen mucho que aportar. [12:21] Unpacking en bucles for: PEP 3132 -- Extended Iterable Unpacking: https://www.python.org/dev/peps/pep-3132/. Busca en Internet: "Python tuple unpacking". PEP 448 -- Additional Unpacking Generalizations: https://www.python.org/dev/peps/pep-0448/. [15:57] Python Packaging: Lo estás haciendo mal https://www.youtube.com/watch?v=OeOtIEDFr4Y. https://github.com/astrojuanlu/charla-python-packaging. https://nbviewer.jupyter.org/format/slides/github/astrojuanlu/charla-python-packaging/blob/main/Charla%20Python%20packaging.ipynb#/ [18:07] Machete Mode: https://nedbatchelder.com/blog/202103/machete_mode_tagging_frames.html. [18:42] Pattern Matching en Python 3.10: 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/. Tema recurrente: ¿Compensa complicar la sintaxis del lenguaje? [22:27] ¡Combina todo eso con el Walrus operator (operador morsa)!: PEP 572 -- Assignment Expressions https://www.python.org/dev/peps/pep-0572/. Presentación en vídeo: Pattern Matching in Python 3.10: https://morioh.com/p/aa1e6d5352c3, minuto 8:47. [24:32] Temas recurrentes de Jesús Cea: complejidad accidental del lenguaje. ¿Python ha perdido el rumbo? Guido van Rossum https://es.wikipedia.org/wiki/Guido_van_Rossum está apoyando muchos cambios polémicos en Python. El principio del fin fue la implementación de async/await y dividir Python en dos mundos: síncrono y asíncrono. [27:02] Código que puede funcionar tanto en el mundo síncrono y asíncrono. Biblioteca asyncio: https://docs.python.org/3/library/asyncio.html. Biblioteca unsync: https://pypi.org/project/unsync/. inspect.iscoroutinefunction(object): https://docs.python.org/3/library/inspect.html#inspect.iscoroutinefunction. inspect.iscoroutine(object): https://docs.python.org/3/library/inspect.html#inspect.iscoroutine. inspect.isawaitable(object): https://docs.python.org/3/library/inspect.html#inspect.isawaitable. inspect.isasyncgenfunction(object): https://docs.python.org/3/library/inspect.html#inspect.isasyncgenfunction. inspect.isasyncgen(object): https://docs.python.org/3/library/inspect.html. [29:12] Lo bueno de tener dificultad para

    1 h y 32 min
  6. 07/06/2021

    Python en español #24: Tertulia 2021-03-16

    Evolución de la sintaxis de Python, comunidades locales y metareferencias a las grabaciones de las tertulias https://podcast.jcea.es/python/24 Participantes: Jesús Cea, email: jcea@jcea.es, twitter: @jcea, https://blog.jcea.es/, https://www.jcea.es/. Conectando desde Madrid. Jesús, conectando desde Ferrol. Víctor Ramírez, twitter: @virako, programador python y amante de vim, conectando desde Huelva. Eduardo Castro, email: info@ecdesign.es. Conectando desde A Guarda. Gato, desde Chile. 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. [00:53] Volvemos a estar poquita gente. Comunidades locales en Galicia. Python Vigo: https://www.python-vigo.es/. Makerspaces: https://en.wikipedia.org/wiki/Hackerspace. GPUL: Grupo de Programadores e Usuarios de Linux: https://www.gpul.org/. [05:48] Propuesta de cambio en la sintaxis de lambda. Ventaja de la sintaxis actual: al aparecer el término "lambda", se puede buscar en Internet. El lenguaje cada vez es más opaco y complejo. [09:58] Asistencia escasa en las últimas tertulias. ¿Cómo afrontarlo? ¿Proponer temas a lo largo de la semana? [12:23] Volvemos al cambio de sintaxis de lambda. PEP 617 -- New PEG parser for CPython https://www.python.org/dev/peps/pep-0617/. [15:03] Guido van Rossum https://es.wikipedia.org/wiki/Guido_van_Rossum está apoyando muchos cambios polémicos en Python. Nominación de Pablo Galindo al Steering Council: https://discuss.python.org/t/steering-council-nomination-pablo-galindo-salgado-2021-term/5720. [16:58] ¿Python intenta seguir la estela de otros lenguajes con los que compite? PEP 617 -- New PEG parser for CPython https://www.python.org/dev/peps/pep-0617/. El parser nuevo abre muchas posibilidades peligrosas. Lista de correo de Python-ideas: https://mail.python.org/mailman3/lists/python-ideas.python.org/. [23:38] ¿Dónde se almacenan los valores por defecto de los parámetros de una función? Librerías para procesar y generar bytecode https://es.wikipedia.org/wiki/Bytecode python. Ejemplo: simplificar la sintaxis de meter código ensamblador desde Python. Decoradores que manipulan las tripas de las funciones, a nivel de bytecode https://es.wikipedia.org/wiki/Bytecode. Módulo "dis" https://docs.python.org/3/library/dis.html. import dis >>> def a(): ... return 5 ... >>> dis.dis(a) 2 0 LOAD_CONST 1 (5) 2 RETURN_VALUE [30:13] Cómo mezclar código síncrono y asíncrono, en función del tipo de función que te llama. inspect.iscoroutinefunction(object): https://docs.python.org/3/library/inspect.html#inspect.iscoroutinefunction. inspect.iscoroutine(object): https://docs.python.org/3/library/inspect.html#inspect.iscoroutine. inspect.isawaitable(object): https://docs.python.org/3/library/inspect.html#inspect.isawaitable. inspect.isasyncgenfunction(object): https://docs.python.org/3/library/inspect.html#inspect.isasyncgenfunction. inspect.isasyncgen(object): https://docs.python.org/3/library/inspect.html. [32:03] Bibliotecas con "plugins". Namespaces: PEP 420 -- Implicit Namespace Packages https://www.python.org/dev/peps/pep-0420/. Problemas con el "modo desarrollo" del paquete. PEP 402 -- Simplified Package Layout and Partitioning: https://www.python.org/dev/peps/pep-0402/. Este PEP se rechazó. PEP 382 -- Namespace Packages https://www.python.org/dev/peps/pep-0382/. Ficheros pth: https://docs.python.org/3/library/site.html. [42:21] Charla Python Madrid: Python Packaging: Lo estás haciendo mal https://www.youtube.com/watch?v=OeOtIEDFr4Y. Buenas prácticas actuales. Se puso como deberes futuros. [45:11] Metareferencia:

    1 h y 25 min
  7. 31/05/2021

    Python en español #23: Tertulia 2021-03-09

    Hoy estamos poquitos en la tertulia y eso permite hablar a gente que nunca ha hablado antes: ¿Cómo puede aprender Python un novato? Python y seguridad https://podcast.jcea.es/python/23 Audio procesado con "rnnoise": https://jmvalin.ca/demo/rnnoise/. Participantes: Jesús Cea, email: jcea@jcea.es, twitter: @jcea, https://blog.jcea.es/, https://www.jcea.es/. Conectando desde Madrid. Jesús, conectando desde Ferrol. Víctor Ramírez, twitter: @virako, programador python y amante de vim, conectando desde Huelva. Gato, desde Chile. 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. [00:53] Hoy no se han conectado los habituales (Virako conectó un rato en medio de la sesión). Por suerte, Jesús, un oyente silencioso habitual, se apiadó de mí. ¿Cómo empezamos a programar en Python? Empezar con el tutorial: https://docs.python.org/es/3/tutorial/index.html. [05:43] Jesús Cea coleccionaba lenguajes de programación en su juventud. Forth: https://es.wikipedia.org/wiki/Forth. Ensamblador: https://es.wikipedia.org/wiki/Lenguaje_ensamblador. [06:23] "La mejor herramienta para cada trabajo" tiene un coste oculto. Especializarse. [07:23] Mercado laboral en España para trabajar en remoto. Los empleadores tienen exigencias poco realistas. [09:18] Hay mucho material para aprender. Saqueadores edición técnica: http://set-ezine.org/. [12:48] Formación formal. [14:03] Comunidades locales Python: Python Vigo: https://www.python-vigo.es/. Se intentaba montar algo en La Coruña. Makerspaces: A Industriosa https://aindustriosa.org/. [16:23] ¿Recursos que pueda usar un novato para aprender? Asociación Python España: https://www.es.python.org/. Lista de correo Python-es: https://mail.python.org/mailman/listinfo/python-es. Internet. [19:23] Raspberry PI https://www.raspberrypi.org/, ESP8266 https://es.wikipedia.org/wiki/ESP8266, ESP32 https://es.wikipedia.org/wiki/ESP32. [21:43] Puesta al día de la semana. [23:28] Encuesta mundial de programadores de Python: Python Developers Survey 2020 Results https://www.jetbrains.com/lp/python-developers-survey-2020/. [24:04] Ya estamos repasando las grabaciones, con vista a publicarlas. Las notas jugarán un papel importante en las grabaciones. Capítulos. [26:03] IPFS: https://es.wikipedia.org/wiki/IPFS. Peer 2 Peer: https://es.wikipedia.org/wiki/Peer-to-peer. webrtc: https://es.wikipedia.org/wiki/WebRTC. Contribuir compartiendo las fotos de Python España. BitTorrent: https://es.wikipedia.org/wiki/BitTorrent. [29:33] Métricas de calidad de código. Complejidad ciclomática: https://es.wikipedia.org/wiki/Complejidad_ciclom%C3%A1tica. Radon: https://pypi.org/project/radon/. Cobertura de test: Coverage https://pypi.org/project/coverage/. Cada pequeño paso ayuda. [35:08] Porcentaje de código nuevo y mantenimiento. [36:33] Se perdió parte de la grabación de la tertulia de la semana pasada. Explicaciones. Explicación de cómo se graban las tertulias. [41:13] Packt https://www.packtpub.com/. Muchos libros digitales sobre Python. Un libro gratis al día: https://www.packtpub.com/free-learning. Bot de telegram de notificaciones diarias: https://t.me/packtpubfreelearning. [44:33] Funciones que son malas prácticas en C. C++ 'strcpy' gives a Warning (C4996): https://stackoverflow.com/questions/4012222/c-strcpy-gives-a-warning-c4996 [46:23] Tema recurrente: ¿poner deberes? [48:08] ¿Progresos sobre Issue24676: Error in pickle using cProfile https://bugs.python.org/issue24676, visto en tertulias anteriores? Bug poco prioritario. Jesús Cea propone algunos rodeos al problema. runpy: https://docs.pyth

    2 h y 12 min
  8. 27/05/2021

    Python en español #22: Tertulia 2021-03-02

    Os dejamos con la miel en los labios, pero hasta ese momento hablamos de la interacción entre las clases abstractas y MYPY, más complejidad en la sintaxis de Python con el PEP 637, PIP, dependencias varias y seguridad, y los tipos de PEP que hay. ¿Bokeh o Plotly? Haberte conectado en directo... https://podcast.jcea.es/python/22 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 Las Palmas. 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. José Juan. 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. [00:53] Vamos progresando en la publicación de las grabaciones. Pablo Gómez, twitter: @julebek, nuestro sufrido editor de audio, está enviando a Jesús Cea ya algunos audios procesados. La calidad de los audios originales es bastante mala. Capítulos en audios: Biblioteca toc2audio https://docs.jcea.es/toc2audio/. Jesús Cea quiere notas exhaustivas de cada grabación. El audio es casi redundante. Lo que estás leyendo ahora mismo, vaya. [06:45] El aviso legal de rigor para grabar los audios y publicarlos luego. [06:58] Presentaciones. [09:58] Jesús Cea habla mucho. [10:53] Interacción entre clases abstractas https://docs.python.org/3/library/abc.html y MYPY http://mypy-lang.org/. [18:28] Expansión explosiva del tamaño del bytecode https://es.wikipedia.org/wiki/Bytecode generado por un programa trivial Python. Ojo, teclear este código tal cual puede tumbar tu máquina y puedes necesitar reiniciar, perdiendo lo que estés haciendo con el ordenador. (132TB .pyc-file (if you have enough memory, disk space and patience) https://codegolf.stackexchange.com/questions/69189/build-a-compiler-bomb/69415#69415. 16 bytes of Python code compiles to 32 terabytes of bytecode https://www.reddit.com/r/Python/comments/llccey/16_bytes_of_python_code_compiles_to_32_terabytes/. [27:48] GitHub actions: https://github.com/features/actions. [28:43] PEP 637 -- Support for indexing with keyword arguments https://www.python.org/dev/peps/pep-0637/. La sintaxis de Python es cada vez más compleja. Jesús Cea se sorprende de que Guido van Rossum https://es.wikipedia.org/wiki/Guido_van_Rossum esté "pervertiendo" tanto Python. Muchos cambios de sintaxis se justifican para ciertos usuarios (cálculo numérico) y resulta que a esos usuarios no les está preguntando nadie. Los lenguajes empiezan simples y se van complicando... siendo reemplazados por otros lenguajes que empiezan simples. Estos temas se han tratado con frecuencia y profundidad en tertulias anteriores. El lenguaje se particiona en "sublenguajes" y "subculturas". BNF (Backus–Naur form): https://es.wikipedia.org/wiki/Notaci%C3%B3n_de_Backus-Naur. JavaScript: The Good Parts: https://www.amazon.com/JavaScript-Good-Parts-Douglas-Crockford/dp/0596517742. ¿Cómo aprende Python la gente novata? Grupos de excepciones: PEP 654 https://www.python.org/dev/peps/pep-0654/. asyncio https://docs.python.org/3/library/asyncio.html contamina todo tu código. Trio: https://pypi.org/project/trio/. [44:26] Metaconversacion sobre temas recurrentes en la tertulia. ¿Puesta al día anual sobre temas recurrentes? [45:08] ¿Cómo se numeran los PEP https://www.python.org/dev/peps/? Cuando se actualiza un PEP, no cambia de numeración. Black: https://pypi.org/project/black/. Los PEP incluyen una sección de cambios, historia del PEP. PEP 494 -- Pyth

    1 h y 21 min

Acerca de

Python en español.

También te podría interesar

Para escuchar episodios explícitos, inicia sesión.

Mantente al día con este programa

Inicia sesión o regístrate para seguir programas, guardar episodios y enterarte de las últimas novedades.

Elige un país o región

Africa, Oriente Medio e India

Asia-Pacífico

Europa

Latinoamérica y el Caribe

Estados Unidos y Canadá