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.
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.
su juventud.
Ensamblador:
https://es.wikipedia.org/wiki/Lenguaje_ensamblador.
coste oculto. Especializarse.
Python Vigo: https://www.python-vigo.es/.
Se intentaba montar algo en La Coruña.
Makerspaces: A Industriosa https://aindustriosa.org/.
Asociación Python España: https://www.es.python.org/.
Lista de correo Python-es:
https://mail.python.org/mailman/listinfo/python-es.
Internet.
https://es.wikipedia.org/wiki/ESP8266, ESP32
https://es.wikipedia.org/wiki/ESP32.
Developers Survey 2020 Results
https://www.jetbrains.com/lp/python-developers-survey-2020/.
publicarlas.
Las notas jugarán un papel importante en las grabaciones.
Capítulos.
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.
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.
semana pasada. Explicaciones.
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.
cProfile https://bugs.python.org/issue24676, visto en
tertulias anteriores?
Bug poco prioritario.
Jesús Cea propone algunos rodeos al problema.
cero.
Hacer un proyecto pequeño.
Intentar no extenderse mucho, no hacer "muchas cosas".
Si no tiene base, el código del novato va a ser malo y con
mucho más esfuerzo del necesario. Hace falta cierto
tutelaje.
Examinar un proceso ajeno "pequeño" y estudiarlo.
Project Euler: https://projecteuler.net/.
Ventajas de un libro: Aprendizaje estructurado, gradual y
que prioriza lo importante.
Aprende Python en un fin de semana || Libro – PDF – EPUB –
Descargar
https://elcientificodedatos.com/aprende-python-en-un-fin-de-semana/.
Python España: Aprende Python
https://www.es.python.org/pages/aprende-python.html.
Comunidades locales.
¿Alguien que no sabe programar en absoluto entiende qué
significa a = a + 1?
Commodore VIC-20:
https://en.wikipedia.org/wiki/Commodore_VIC-20.
Escribir código a mano puede ayudar.
sirven para algo? ¿Son spam?
OWASP: https://owasp.org/.
OWASP Top Ten Web Application Security Risks:
https://owasp.org/www-project-top-ten/.
Listas de correo de seguridad.
Desbordamiento de búfer:
https://es.wikipedia.org/wiki/Desbordamiento_de_buffer.
Podcast: Security Now https://twit.tv/shows/security-now.
Hispasec: Noticias de seguridad diaria: Una al Día:
https://unaaldia.hispasec.com/.
The CERT C Secure Coding Standard
https://www.amazon.com/CERT-Secure-Coding-Standard/dp/0321563212.
Cada lenguaje tiene sus propios fallos de seguridad típicos,
propios de las idiosincrasias o el estilo de ese lenguaje.
https://www.python.org/dev/peps/pep-0578/
conocidos https://es.wikipedia.org/wiki/Framework.
Si el "framework" es popular y se le encuentra un bug, eres
susceptible a un ataque masivo.
Hay que preocuparse de tenerlo actualizado.
Django: https://www.djangoproject.com/.
Ataque de cadena de suministro:
https://es.wikipedia.org/wiki/Ataque_a_cadena_de_suministro.
Docker: https://www.docker.com/.
¿Quién se preocupa de actualizarlo?
respecto a otros lenguajes de programación?
DB-API 2.0: PEP 249 -- Python Database API Specification
v2.0 https://www.python.org/dev/peps/pep-0249/.
Aunque un lenguaje de programación sea razonablemente
seguro, los programadores introducen fallos de seguridad en
su código. Algunos ejemplos.
eval:
https://docs.python.org/3/library/functions.html#eval.
https://es.wikipedia.org/wiki/Ataque_a_cadena_de_suministro.
Poison packages – “Supply Chain Risks” user hits Python
community with 4000 fake modules:
https://nakedsecurity.sophos.com/2021/03/07/poison-packages-supply-chain-risks-user-hits-python-community-with-4000-fake-modules/.
Cualquiera puede subir un módulo nuevo a PYPI:
https://pypi.org/.
La reputación no basta.
Trabajo ingrato.
Depender del trabajo voluntario es un problema.
Hay una diferencia entre código con bugs y ataques
maliciosos conscientes.
Ejemplo, Antivirus. VirusTotal:
https://www.virustotal.com/gui/, Hispasec
https://hispasec.com/es/.
Un clásico de 1984: "Reflections on Trusting Trust":
https://users.ece.cmu.edu/~ganger/712.fall02/papers/p761-thompson.pdf.
mucha gente que no cobra, que lo hace por amor al arte.
Referencia obligada a XKCD https://xkcd.com/:
Dependency https://xkcd.com/2347/.
Wikipedia XKCD: https://es.wikipedia.org/wiki/Xkcd.
OpenSSL https://es.wikipedia.org/wiki/OpenSSL:
WordPress: https://es.wikipedia.org/wiki/WordPress.
código abierto.
Red Hat: https://es.wikipedia.org/wiki/Red_Hat.
Opinión de Jesús Cea: Se vende tranquilidad, no seguridad.
Desplazas la responsabilidad a otro.
Gestión de riesgo. Proteger su puesto de trabajo.
"No han despedido nunca a nadie por comprar IBM":
https://loscuenca.com/2010/04/nunca-han-despedido-a-nadie-por-contratar-a-______/
todos los habituales y habla gente que no ha hablado nunca.
Documentación Python en Español:
https://docs.python.org/es/3/.
Documentación oficial de Python en español
https://pyar.discourse.group/t/documentacion-oficial-de-python-en-espanol/238/23.
Documentación oficial de Python en Español
https://elblogdehumitos.com/posts/documentacion-oficial-de-python-en-espanol/.
docs.python.org en Español
https://elblogdehumitos.com/posts/docspythonorg-en-espanol/.