Python en español

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


Listen Later

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: [email protected], 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_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 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.

                            • [01:10:48] Docker

                              https://es.wikipedia.org/wiki/Docker_(software).

                              • [01:11:20] Réplicas locales de PyPI https://pypi.org/ y

                                PyPI privados.

                              • [01:14:45] ccache https://ccache.dev/.

                              • Ansible: https://es.wikipedia.org/wiki/Ansible_(software).

                              • [01:18:58] HPy https://hpyproject.org/.

                              • [01:20:10] ¿Proponer temas esotéricos? ¿Mandar deberes?

                              • [01:21:05] Más sobre HPy https://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 Wheel

                                  https://www.python.org/dev/peps/pep-0427/ que funciona en
                                  varias versiones de Python.

                                • Buen rendimiento tanto en CPython como en PyPy

                                  https://www.pypy.org/.

                                • Posible API

                                  https://es.wikipedia.org/wiki/Interfaz_de_programaci%C3%B3n_de_aplicaciones
                                  futuro 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 Mode

                                    https://nedbatchelder.com/blog/202103/machete_mode_tagging_frames.html.

                                    • Usarlo para depurar un bug.

                                    • Pena de muerte en producción.

                                    • Ideas locas: James Powell https://twitter.com/dontusethiscode.

                                    • Conocimiento íntimo del lenguaje y de su implementación.

                                      • Javier disfruta dando charlas de temas profundos y
                                      • esotéricos.
                                      • [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 #24995
                                          https://github.com/python/cpython/pull/24995.
                                        • [01:43:30] Despedida y deberes futuros.

                                          • Security funding & NYU

                                            https://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

                                            metadata https://www.python.org/dev/peps/pep-0458/.

                                          • PEP 480 -- Surviving a Compromise of PyPI: End-to-end

                                            signing of packages
                                            https://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 de
                                            menos.

                                          • [01:48:20] Final.

                                            ...more
                                            View all episodesView all episodes
                                            Download on the App Store

                                            Python en españolBy Jesús Cea


                                            More shows like Python en español

                                            View all
                                            Libros para Emprendedores by Luis Ramos

                                            Libros para Emprendedores

                                            1,115 Listeners