Przejdź do trybu offline z Player FM !
Python en español #22: Tertulia 2021-03-02
Archiwalne serie ("Kanał nieaktywny" status)
When? This feed was archived on May 08, 2022 09:32 (). Last successful fetch was on July 13, 2021 01:05 ()
Why? Kanał nieaktywny status. Nasze serwery nie otrzymały odpowiedzi od kanału przez zbyt długi czas.
What now? You might be able to find a more up-to-date version using the search function. This series will no longer be checked for updates. If you believe this to be in error, please check if the publisher's feed link below is valid and contact support to request the feed be restored or if you have any other concerns about this.
Manage episode 293557121 series 2332301
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.
(1<<19**8,)*2 (1<<19**8,)*4**7
Build a Compiler Bomb: Python 3, 13 byte source, 9,057,900,463 byte (8.5GiB) .pyc-file / Python 3, 16 byte source, >32TB .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.
[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 -- Python 3.6 Release Schedule https://www.python.org/dev/peps/pep-0494/.
PEP 373 -- Python 2.7 Release Schedule https://www.python.org/dev/peps/pep-0373/.
[51:08] A veces para ver los cambios de un proyecto, a veces no hay más remedio que examinar el propio sustema de control de versiones. Documentar los cambios debería ser obligatorio, pero no todos los proyectos lo usan https://es.wikipedia.org/wiki/Changelog.
[53:28] El valor de los DeprecationWarning: https://docs.python.org/3/library/exceptions.html#DeprecationWarning. ¿Cuándo los arreglas?
Deuda técnica.
Estrategia: Bloquear dependencias.
Acumular actualizaciones tampoco es buena idea.
Que tus tests comprueben tus dependencias suele ser una mala práctica, pero para los tests de integración puede ser buena idea para asegurarse la estabilidad del ecosistema del proyecto.
[58:13] Los problemas de bloquear dependencias de forma transitiva.
pip freeze
https://pip.pypa.io/en/stable/cli/pip_freeze/.virtualenv
: https://pypi.org/project/virtualenv/.
[01:02:56] pip https://pypi.org/project/pip/ no tiene "hooks" https://es.wikipedia.org/wiki/Hooking, pero las versiones recientes tienen un proceso de resolución de dependencias bastante sofisticado.
[01:05:43] Paquete "safety" https://pypi.org/project/safety/.
[01:07:38] Salto de fe al hacer
pip install
. Paquetes maliciosos.- Ataque a cadena de suministro https://es.wikipedia.org/wiki/Ataque_a_cadena_de_suministro.
[01:09:23] Motivación económica para secuestrar el DNS https://es.wikipedia.org/wiki/Dns.
[01:10:58] Nombres inexplicables de paquetes en PIP.
[01:11:28] RFC 2606: Reserved Top Level DNS Names https://datatracker.ietf.org/doc/html/rfc2606.
- Por ejemplo, http://example.org/ .
[01:13:53] Recursos en español de Python:
Pybonacci: https://pybonacci.org/.
Chema Cortés: https://blog.ch3m4.org/.
AlgoriSoft: https://algorisoft.com/. Cursos de Django https://www.djangoproject.com/.
[01:16:28] Comparativa entre Bokeh https://bokeh.org/ y Plotly https://plotly.com/python/.
- Gráficos dinámicos en JavaScript para el navegador web, pero alimentado desde Python en el servidor.
[01:19:46] La grabación se cortó aquí debido a "un problema técnico" (entre la silla y el teclado de Jesús Cea). Se ha perdido más o menos la última media hora.
[01:19:55] Final.
29 odcinków
Archiwalne serie ("Kanał nieaktywny" status)
When? This feed was archived on May 08, 2022 09:32 (). Last successful fetch was on July 13, 2021 01:05 ()
Why? Kanał nieaktywny status. Nasze serwery nie otrzymały odpowiedzi od kanału przez zbyt długi czas.
What now? You might be able to find a more up-to-date version using the search function. This series will no longer be checked for updates. If you believe this to be in error, please check if the publisher's feed link below is valid and contact support to request the feed be restored or if you have any other concerns about this.
Manage episode 293557121 series 2332301
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.
(1<<19**8,)*2 (1<<19**8,)*4**7
Build a Compiler Bomb: Python 3, 13 byte source, 9,057,900,463 byte (8.5GiB) .pyc-file / Python 3, 16 byte source, >32TB .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.
[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 -- Python 3.6 Release Schedule https://www.python.org/dev/peps/pep-0494/.
PEP 373 -- Python 2.7 Release Schedule https://www.python.org/dev/peps/pep-0373/.
[51:08] A veces para ver los cambios de un proyecto, a veces no hay más remedio que examinar el propio sustema de control de versiones. Documentar los cambios debería ser obligatorio, pero no todos los proyectos lo usan https://es.wikipedia.org/wiki/Changelog.
[53:28] El valor de los DeprecationWarning: https://docs.python.org/3/library/exceptions.html#DeprecationWarning. ¿Cuándo los arreglas?
Deuda técnica.
Estrategia: Bloquear dependencias.
Acumular actualizaciones tampoco es buena idea.
Que tus tests comprueben tus dependencias suele ser una mala práctica, pero para los tests de integración puede ser buena idea para asegurarse la estabilidad del ecosistema del proyecto.
[58:13] Los problemas de bloquear dependencias de forma transitiva.
pip freeze
https://pip.pypa.io/en/stable/cli/pip_freeze/.virtualenv
: https://pypi.org/project/virtualenv/.
[01:02:56] pip https://pypi.org/project/pip/ no tiene "hooks" https://es.wikipedia.org/wiki/Hooking, pero las versiones recientes tienen un proceso de resolución de dependencias bastante sofisticado.
[01:05:43] Paquete "safety" https://pypi.org/project/safety/.
[01:07:38] Salto de fe al hacer
pip install
. Paquetes maliciosos.- Ataque a cadena de suministro https://es.wikipedia.org/wiki/Ataque_a_cadena_de_suministro.
[01:09:23] Motivación económica para secuestrar el DNS https://es.wikipedia.org/wiki/Dns.
[01:10:58] Nombres inexplicables de paquetes en PIP.
[01:11:28] RFC 2606: Reserved Top Level DNS Names https://datatracker.ietf.org/doc/html/rfc2606.
- Por ejemplo, http://example.org/ .
[01:13:53] Recursos en español de Python:
Pybonacci: https://pybonacci.org/.
Chema Cortés: https://blog.ch3m4.org/.
AlgoriSoft: https://algorisoft.com/. Cursos de Django https://www.djangoproject.com/.
[01:16:28] Comparativa entre Bokeh https://bokeh.org/ y Plotly https://plotly.com/python/.
- Gráficos dinámicos en JavaScript para el navegador web, pero alimentado desde Python en el servidor.
[01:19:46] La grabación se cortó aquí debido a "un problema técnico" (entre la silla y el teclado de Jesús Cea). Se ha perdido más o menos la última media hora.
[01:19:55] Final.
29 odcinków
Wszystkie odcinki
×Zapraszamy w Player FM
Odtwarzacz FM skanuje sieć w poszukiwaniu wysokiej jakości podcastów, abyś mógł się nią cieszyć już teraz. To najlepsza aplikacja do podcastów, działająca na Androidzie, iPhonie i Internecie. Zarejestruj się, aby zsynchronizować subskrypcje na różnych urządzeniach.