Python en espanol #12: Tertulia 2020-12-22

Published: April 28, 2021, 10 a.m.

Ciclos de memoria, "core developers" y dataclasses https://podcast.jcea.es/python/12\n

En lo que sigue, cuando se habla de CPython, se refiere al\nint\xe9rprete de referencia de Python, que est\xe1 escrito en lenguaje\nC: https://www.python.org/downloads/.

\n

Participantes:

\n\n

Audio editado por Pablo G\xf3mez, twitter:\n@julebek.

\n

La m\xfasica de la entrada y la salida es "Lightning Bugs", de Jason\nShaw. Publicada en https://audionautix.com/ con licencia\n- Creative Commons Attribution 4.0 International\nLicense.

\n
    \n
  • \n

    [00:52] Seguimos hablando del bug comentado la semana pasada.

    \n\n
  • \n
  • \n

    [02:17] El "bytecode" https://es.wikipedia.org/wiki/Bytecode\n que genera Python es muy mejorable.

    \n
        >>> import dis\n    >>> def suma(valores):\n    ...   s=0\n    ...   for i in valores:\n    ...     s+=i\n    ...   return s\n    ... \n    >>> dis.dis(suma)\n      2           0 LOAD_CONST               1 (0)\n                  2 STORE_FAST               1 (s)\n\n      3           4 LOAD_FAST                0 (valores)\n                  6 GET_ITER\n            >>    8 FOR_ITER                12 (to 22)\n                 10 STORE_FAST               2 (i)\n\n      4          12 LOAD_FAST                1 (s)\n                 14 LOAD_FAST                2 (i)\n                 16 INPLACE_ADD\n                 18 STORE_FAST               1 (s)\n                 20 JUMP_ABSOLUTE            8\n\n      5     >>   22 LOAD_FAST                1 (s)\n                 24 RETURN_VALUE\n
    \n\n
  • \n
  • \n

    [08:32] Recogida de basuras.

    \n\n
  • \n
  • \n

    [11:27] Herramientas de monitorizaci\xf3n:

    \n
      \n
    • DTrace: http://dtrace.org/blogs/. Monitoriza el sistema\n operativo entero, incluyendo las aplicaciones, todo\n integrado, de forma segura y sin modificar el software.
    • \n
    \n
  • \n
  • \n

    [13:32] Funcionalidades de auditor\xeda de Python:

    \n\n
  • \n
  • \n

    [16:47] M\xe1s herramientas de monitorizaci\xf3n:

    \n\n
  • \n
  • \n

    [17:52] M\xe1s sobre DTrace\n https://es.wikipedia.org/wiki/DTrace_(Sun_Microsystems) y Python:

    \n\n
  • \n
  • \n

    [22:12] Tracemalloc.

    \n\n
  • \n
  • \n

    [23:02] Seguimos hablando del bug comentado la semana pasada.

    \n
      \n
    • \n

      bug bpo35930: "Raising an exception raised in a "future"\n instance will create reference cycles":\n https://bugs.python.org/issue35930.

      \n
    • \n
    • \n

      \xa1Se ofrece una caja de cervezas!

      \n
    • \n
    • \n

      Brainstorming.

      \n
    • \n
    • \n

      Diagn\xf3stico detallado.

      \n
    • \n
    • \n

      weakref \u2014 Weak references:\n https://docs.python.org/3/library/weakref.html.

      \n
    • \n
    • \n

      Se sube la apuesta a caja y media de cervezas :-).

      \n
    • \n
    • \n

      La excepci\xf3n salta en un hilo y se "transporta" y almacena\n para que se pueda acceder desde otro hilo.

      \n
    • \n
    • \n

      Test reproducible.

      \n
    • \n
    \n
  • \n
  • \n

    [36:42] Aviso legal.

    \n
      \n
    • Machine learning para identificar los diferentes hablantes.
    • \n
    \n
  • \n
  • \n

    [38:27] Las futuras notas de las grabaciones ser\xe1n EXHAUSTIVAS\n (como est\xe1is comprobando leyendo esto :).

    \n
  • \n
  • \n

    [39:17] Ideas para "cebar" las tertulias.

    \n
      \n
    • Muchos temas recurrentes, se ve que hay temas "flotando"\n en el aire.
    • \n
    \n
  • \n
  • \n

    [40:37] C\xf3mo organizar las tertulias, diferentes intereses y\n profundidad. Din\xe1mica de la tertulia.

    \n
  • \n
  • \n

    [42:32] \xbfC\xf3mo se organizan los "core developers"?

    \n\n
  • \n
  • \n

    [52:22] \xa1V\xedctor quiere m\xe1s bugs para aprender!

    \n
      \n
    • Bugs marcados como "easy", como forma de entrada a\n desarrolladores nuevos.
    • \n
    \n
  • \n
  • \n

    [53:42] \xbfQu\xe9 partes de CPython est\xe1n escritas en C y cu\xe1les en\n Python?

    \n
      \n
    • \n

      Se escribe en C lo que no tiene m\xe1s remedio, por rendimiento\n o porque interact\xfaa con el sistema operativo.

      \n
    • \n
    • \n

      M\xe1s adelante de la conversaci\xf3n Jes\xfas Cea explica c\xf3mo ver\n si un m\xf3dulo concreto est\xe1 en C o en Python sin tener que ir\n al c\xf3digo fuente.

      \n
    • \n
    \n
  • \n
  • \n

    [57:32] PyPy https://www.pypy.org/. Int\xe9rprete de Python\n escrito en Python.

    \n\n
  • \n
  • \n

    [58:27] \xbfIncluir otros lenguajes en la implementaci\xf3n de\n CPython?

    \n\n
  • \n
  • \n

    [01:05:02] Python 3.9. Mejoras.

    \n
      \n
    • Dificultades para utilizar la \xfaltima versi\xf3n de Python, en\n funci\xf3n de lo que tenga el cliente.
    • \n
    \n
  • \n
  • \n

    [01:08:07] Dataclasses:\n https://docs.python.org/3/library/dataclasses.html.

    \n\n
  • \n
  • \n

    [01:23:07] Horarios de las tertulias. Mucha discusi\xf3n y algunas\n ideas. De momento no habr\xe1 cambios. Hace falta m\xe1s feedback.

    \n
      \n
    • Se agradecer\xeda que la gente que deje las tertulias,\n explicase por qu\xe9 se ha ido.
    • \n
    \n
  • \n
  • \n

    [01:30:27] Jes\xfas Cea explica c\xf3mo ver si un m\xf3dulo concreto est\xe1\n en C o en Python sin tener que ir al c\xf3digo fuente.

    \n
  • \n
  • \n

    [01:31:18] M\xe1s sobre la din\xe1mica de las tertulias.

    \n
      \n
    • \n

      Debate sobre presentarse o no en tertulias abiertas, o tener\n la c\xe1mara apagada.

      \n
    • \n
    • \n

      Va siendo necesario tener algun repositorio para que la\n gente de la tertulia pueda compartir cosas.

      \n
        \n
      • \xbfLista de correo espec\xedfica para las tertulias?
      • \n
      \n
    • \n
    \n
  • \n
  • \n

    [01:36:42] Actas de las tertulias y publicar las grabaciones de\n una pu\xf1etera vez. \xbfAlg\xfan ingeniero de sonido en la sala?\n \xbfBaratito?

    \n
  • \n
  • \n

    [01:39:08] El "nivel" de las listas de correo. \xbfD\xf3nde est\xe1n las\n conversaciones interesantes? (aparte de la tertulia semanal :-).

    \n
      \n
    • \n

      La maldici\xf3n de lo b\xe1sico e "introducci\xf3n a". Igual para que\n haya conversaci\xf3n interesante, hay que hacer preguntas\n interesantes :-).

      \n
    • \n
    • \n

      Python-Madrid antes de que llegase Meetup.

      \n
    • \n
    • \n

      Jes\xfas Cea sugiere listas como "python-ideas":\n https://mail.python.org/mailman3/lists/python-ideas.python.org/.\n Tambi\xe9n la lista de programaci\xf3n Python en espa\xf1ol:\n python-es@python.org.

      \n
    • \n
    • \n

      Javier tiene intereses muy extra\xf1os :-).

      \n
    • \n
    \n
  • \n
  • \n

    [01:54:52] Cierre.

    \n
  • \n
  • \n

    [01:56:42] Final.

    \n
  • \n