Archive
Browse all posts by month and year.
January 2025
- Viene con un regalo: no todo es lo que parece
- Confundiendo a los usuarios usando sitios habituales de alojamiento de información
- Polución de parámetros en distintas tecnologías
December 2024
- Las extensiones de los navegadores y algunos consejos sobre su seguridad
- Los generadores de números seudoaleatorios y la seguridad
- Los vehículos, los nuevos servicios y los mismos fallos de siempre
November 2024
- ¿De quién es la responsabilidad de los fallos de seguridad?
- ¿80-20 o mejor... tanto como puedas?
- Diez años por aquí
- La seguridad de esos servicios que utiliza y conoce poca gente
October 2024
- Cuidado con los secretos divulgados en las nubes
- Despliegue de URLs, interacción en Slack y sus riesgos
- Entrada a los programas, visibilidad y posibilidades de espiar
September 2024
- Cross-site scripting y OAuth... ¿problemas?
- Factor múltiple de autentificación y algunos problemas
- Abuso de los comentarios en GitHub
- Los nombres son importantes en la nube
- Interesante visualización de contraseñas frecuentes
August 2024
- Operaciones modulares y sesgos en la aleatoriedad
- Los peligros del correo con HTML y CSS
- Los protocolos de la web explicados
- Las amenazas en los tiempos de la IA
July 2024
June 2024
May 2024
- Un método sencillo de generación de números seudoaleatorios
- Algunas ideas sobre seguridad en Flask
- Operación triangulación: un ataque con información detallada
March 2024
- Cadenas de bloques, contratos inteligentes y difusión de programas maliciosos
- En el congreso Industria 4.0 hablando de Ciberseguridad Industrial
- XS-Leaks. XSS para extraer información sobre los usuarios
- Seguridad, facilidad de uso y pensar en las personas
February 2024
- Generación de paquetes Android, seguridad y tranquilidad
- Ciberseguridad, cumplimiento y gestión de recursos
January 2024
- Un ataque para viajar todo lo que se quiera en el metro de Boston
- Vale la pena optimizar en el momento adecuado
December 2023
- Lo que todo programador debería saber sobre la memoria
- Seguridad de las contraseñas: los sitios y lo que se sabe
- ¿Un ataque sofisticado o 'paso de contarte lo que sucedió'?
November 2023
- El phishing: los usuarios lo tienen realmente difícil
- Un par de informes sobre ciberseguridad del año 2022
- La codificación de los mensajes y el phishing
- Comprendiendo mejor las baterías
- La superficie de ataque de la Inteligencia Artificial
October 2023
- Las vulnerabilidades y su estudio para mejorar la seguridad
- Phishing y diplomáticos: cambiando los objetivos
- Las inteligencias artificiales y los desarrolladores segun McKinsey
September 2023
August 2023
- Descubrimiento de secretos a partir de la iluminación de los LED
- ChatGPT, los plugins y el descontrol sobre nuestra información
July 2023
- ChatGPT y el phishing: no está mal
- 25 años de bcrypt y un poco de historia sobre la seguridad de las contraseñas
June 2023
- Los niveles OSI y los posibles ataques sobre ellos
- Buenas prácticas en criptografía
- Ataques de voz a asistentes conectados
- Un desbordamiento de enteros de 40 segundos
- Ascon: criptografía ligera para dispositivos limitados
May 2023
- Acceso a APIs, credenciales y uso desde clientes
- Conozco tu PIN: sobre altavoces, acelerómetros y formas creativas de espiar
- Ataque contra el reciclado de credenciales en PayPal
April 2023
- Métodos alternativos de detección de bots
- Inyección de fallos en eBay para conseguir sistemas más robustos
- ¿En quién confían las inteligencias artificiales?
- Software libre y entrenamiento de las inteligencias artificiales
March 2023
February 2023
January 2023
- GitHub y OWASP
- Estrategias para encontrar fallos programando
- Los múltiples usos de SSH
- El protocolo de la web: HTTP
- Un par de listas de cabeceras de seguridad para la web
December 2022
- Un fallo en SQLite relacionado con la representación de valores
- Algunas tendencias sobre ciberseguridad en empresas
- DevOps y la ciberseguridad según un informe de Google
- Extrayendo información de un teclado que aún conserva algo de calor
November 2022
- ¿2FA ya no es suficiente? Pues vamos a por el tercer factor
- Nueva imagen y algunas novedades
- Condena personal por ocultar datos sobre una brecha de seguridad en Uber
- Una introducción breve a las APIs y su seguridad
- Más fallos sofisticados: Thunderbird y la lectura de mensajes cifrados
October 2022
- OAuth como herramienta para ataques de envío de spam
- Reflejos y videoconferencias. ¿Estás mostrando demasiado?
- Previsualización y ataques
- La complejidad de los navegadores y la dificultad de crear uno desde cero
September 2022
- Extracción de información de sistemas infectados a través de las luces LED
- Un viejo artículo sobre los generadores de números seudoaleatorios y las consecuencias de su elección
- 'Mejorando' el sistema de entretenimiento de su coche
- El modelo 'repair café' como mecanismo de aprendizaje
August 2022
- Mejorando la gestión de la memoria en C++ para mejorar la seguridad
- Explicando los fallos en el arranque seguro de un Google Nest
- Un análisis de los fallos que permitían infectar teléfonos de NSO
- Errores en Java por falta de verificación... ¿multiplícate por cero?
July 2022
- La documentación de las APIs. El caso de gov.uk
- Escribiendo programas maliciosos en el registro del sistema
- Políticas de contraseñas: lo estamos haciendo mal
- Investigadores de seguridad y persecución legal
June 2022
- Cuando el desarrollador quiere llamar la atención sobre la cadena de suministro
- Vulnerabilidades, parcheos y quién puede resolver los problemas
- La granulariad, las APIs, y un proxy para solucionarlo
- La prioridad de los desarrolladores no suele ser la seguridad
- Algunos consejos sobre la seguridad en APIs
May 2022
- Las inversión en ciberseguridad y las organizaciones
- Las cuentas de usuario y f-droid
- Lo que podemos aprender sobre el fallo de Log4j y la cadena de suministro
- Compartición de recursos entre dominios (CORS)
April 2022
- Los dominios, la identidad y lo que puede pasar cuando no se tiene cuidado
- La cadena de suministro y a qué principios debemos prestar atención
- La cadena de suministro y la seguridad
March 2022
- JavaScript y las prestaciones
- La protección de secretos en sistemas
- HTTP, fuzzing e inseguridad con componentes seguras
- Sobre el diseño de las APIs de Slack
- El cable ethernet como antena. Nuevos ataques laterales
February 2022
- Lo encontré en un foro y resuelve mi problema
- Comentarios sobre el OWASP Top 10
- Algumos mitos sobre computación distribuida
January 2022
- Un caso real de un generador de contraseñas malas y cómo hacerlo bien
- Desarrollo de criptografía para no especialistas
- Ataques a los datos de entrenamiento de inteligencias artificiales
- Sobre la verificación en tiempo de ejecución del kernel de Linux
- Algunos (pocos) datos sobre generadores de números aleatorios
December 2021
- El FBI limpiando sistemas infectados, al menos parcialmente.
- Desbordamientos de enteros en aplicaciones del mundo real
- No guardar secretos en repositorios de código
- Las contraseñas. Más complicado de lo que solemos pensar.
November 2021
- GitHub y sus cambios en los nuevos formatos de los tokens de autentificación
- Una guía sobre OAuth
- ¿Corre riesgo Python de quedar como un lenguaje marginal?
- Las URLs y los programas de escritorio. Otro problema de seguridad.
- Estás desarrollando tu propia criptografía. Y (¿no?) lo sabes.
October 2021
- El ecosistema del cibercrimen: algunos actores, distribución de tareas y sus conexiones
- Una condición de carrera en el manejo de sesiones en GitHub
- Desarrollar. Teniendo en cuenta la seguridad
- Se lo que escribiste en tu última videoconferencia
September 2021
- Los fallos de seguridad en curl por culpa del lenguaje C
- Repaso de un viejo fallo de seguridad: contaminación de parámetros de HTTP
- ¿Java es un lenguaje seguro?
- Recuperar información sobre un binario en ejecución (bash)
August 2021
- Desarrollo seguro: algunas piezas sobre las que construir
- Más de 20 años de la inyección SQL y todavía sigue allí
- Más ataques a la privacidad: los 'faviconos'
- Optimización con llamadas recursivas al final
- Sobre el diseño de formularios seguros en HTML
July 2021
- Un ejemplo de interacción insegura entre sistemas seguros: YouTube
- Los robots que navegan por la web y nuestra privacidad
- Los coches y la divulgación de datos personales
- Las APIs también deben tener en consideración la seguridad
June 2021
- Un tutorial sobre cookies y seguridad
- Un recordatorio sobre diversos mecanismos de seguridad web
- Algunos consejos prácticos sobre criptografía para programadores
- Ataques laterales para obtener información: la memoria como WiFi
May 2021
- IoT, nuestra casa y la seguridad
- Espiar lo que tecleamos en una videoconferencia
- Complejidad y diseño de sistemas seguros
- Un ejemplo de uso del OAuth de Google con Node.js
- ¿Necesita evolucionar Python para mejorar?
April 2021
- Ataques a través de fallos en códigos de terceros
- Algunos hallazgos sobre la seguridad de un marcapasos.
- Aleatoriedad en sistemas informáticos. Una introducción breve.
- Formas alternativas de conocer mejor a nuestros atacantes.
March 2021
- No desarrolles tu propia criptografía
- El correo y su realidad a través de las implementaciones
- Teoría de la aleatoriedad y seguridad
- Abusando de los clientes de correo
February 2021
- Seguridad al desarrollar para sistemas industriales (Industria 4.0)
- Algunas estructuras de datos y algoritmos usados en casos reales
- Probando forestry.io
- SSH Agent y las sesiones
- Proteger nuestras APIs de ataques de CSRF
- Cadenas de caracteres que pueden ser peligrosas
January 2021
- Lecciones aprendidas en la aplicación de un modelo de madurez en la seguridad de los programas
- Sobre el funcionamiento del DNS
- Protegiendo la intimidad de los usuarios de Signal
- Ocupación de nombres en paquetes de Ruby
December 2020
- Promoción del UTF-8
- Técnicas novedosas de exfiltración de información: la vibración de los ventiladores
- Zoom, seguridad, comodidad y campañas de 'información'
November 2020
- En esLibre, hablando de mi chatbot como gestor de información personal
- Dropbox, Python y la comprobación de tipos
- Análisis de amenazas de un sistema de cifrado entre extremos para videoconferencia
- Esquema del sistema de ficheros en un sistema Linux
- Si quieres tener la información correcta en el avión, apaga y vuelve a encender
October 2020
- Algoritmos de diferencias y git
- Pruebas y verificación de programas
- Vulnerabilidades frecuentes en 'smart contracts'
- Programación y coste en tiempo y en memoria
September 2020
August 2020
- Filtros de Bloom y optimización fallida
- Equipos distribuidos y desarrollo
- Proyecto de OWASP sobre seguridad de APIs
- Sobre el método usado para generar ficheros .zip
- Automatización de lo que se ve en el perfil de GitHub
- Los procedimientos almacenados y los sistemas
July 2020
- Machine Learning para elegir un método de compresión
- Make y makefiles siguen siendo herramientas de actualidad
- Teoría de la probabilidad y gestión de sistemas
June 2020
April 2020
- ¿Te interesan los navegadores web? Una lista de recursos
- OAuth 2.0 y OpenId. Autorización e identidad entre servicios.
- Estructura y funcionamiento de Unix
- Estructura interna de Git cuando se usan sus instrucciones
March 2020
- Números aleatorios desde el espacio
- Reducción de costes para un servicio en la nube
- Cuidado con los consejos sobre contraseñas
- Algunos datos sobre la seguridad en los dominios más importantes
February 2020
- Técnicas de Facebook para evitar el bloqueo de la publicidad
- ¿Depende tu sistema de programas vulnerables?
- Aleatoriedad y bloqueos en el kernel de Linux
- Scrapping con Google Sheets. Obteniendo información de la web
January 2020
- ¿Puedo tener problemas de seguridad utilizando Python? Puedo tener problemas de seguridad utilizando Python
- Sobre aprender a programar y la frase 'independiente del lenguaje'
- Almacenamiento de información sobre nuestra navegación: cookies y LocalStorage
- Seguridad en entornos corporativos con sistemas tradicionales
December 2019
- Las herramientas sencillas también nos pueden ayudar a encontrar problemas de seguridad
- En informática los nombres largos son una mala idea
- Identificación de características basada en el tiempo
November 2019
- Gestión de sistemas grandes distribuidos
- Las claves (ya) no importan
- Anonimización de datos personales y ataques
October 2019
- Mejorar la seguridad eligiendo mejores lenguajes
- Un gestor de contraseñas también puede traerte problemas
- Alguien cambió lo que no debía. Un caso real
- Seguridad para gente normal
September 2019
- Cabeceras más humanas para la web
- Las credenciales se pueden escapar por donde menos te lo esperas
- Algunas ideas sobre código correcto
- Concurrencia en Python
- Sobre el tamaño y el desarrollo de Windows 10
August 2019
- La liga de la entropía y la aleatoriedad
- Modelado de amenazas y argumentos a su favor
- Programadores, decisiones de seguridad y riesgos
July 2019
- Analizando vulnerabilidades por lenguajes
- Eficiencia en Python al ordenar
- Una guía sobre cookies para la web
June 2019
- Información sobre Cross Site Request Forgery en OWASP
- Introducción e historia de los contenedores
- ¿Dónde guardas tus secretos?
May 2019
- ¿Eres predecible?
- ¿Llegó la hora de matar la web?
- Falsedades que los programadores pueden creer sobre la numeración telefónica
April 2019
- La seguridad y los gestores de contraseñas
- Interacciones inseguras entre sistemas de ayuda y otros
- La seguridad, el análisis de riesgos, lo viejo y lo nuevo
- La complejidad y la seguridad: el caso de las tarjetas de memoria
March 2019
- JMAP: evoluciones alternativas abiertas para el viejo correo electrónico
- Los consejos, a veces, son como las opiniones
- Un malote en tu bañera de hidromasaje
- Computación biológica y el problema del viajante de comercio
February 2019
- Europa se despierta: apoyando la seguridad en el software libre
- Algunas intrucciones útiles cuando estamos usando una terminal
- Falsedades que los programadores creen sobre los nombres
- Las restricciones sobre contraseñas generan contraseñas peores
- ¿Cuándo mandar avisos de seguridad a los usuarios?
January 2019
- Los cambios frecuentes de contraseña son contraproducentes
- Diez años del BSIMM
- ¿Exigimos contraseñas mejores?
- ¿Quién programó esto?
December 2018
November 2018
- Generación de números aleatorios y velocidad
- Consejos de seguridad en GitHub y otros alojamientos de código
- Funciones inseguras, ¿todavía?
October 2018
- Cabeceras de seguridad en el protocolo HTTP
- Divulgación coordinada de fallos de seguridad
- Coches informáticos
- Cadenas de formato en Windows
September 2018
- Vulnerabilidades en los lenguajes que nos permiten desarrollar programas
- Fallos en el kernel de Linux
- Algunos aspectos prácticos de la autentificación de dos factores
July 2018
- Cuatro ideas para asegurar la autentificación
- Seguir la corriente resolviendo problemas y la seguridad
- La gestión de secretos: más cerca y más lejos de lo que crees
June 2018
- La aleatoriedad y algunas ayudas de la física
- Programas de línea de instrucciones y algunos consejos de seguridad
- El uso de algoritmos evolutivos en Facebook para buscar fallos
May 2018
- El uso de las cabeceras de los sitios web populares para aprender de seguridad
- El uso de identificadores en protocolos, la seguridad y la privacidad
- Secretos compartidos. Cuidado con la confianza.
April 2018
- Phishing y políticos de alto nivel
- Aprender a programar con fallos de seguridad
- Una charla sobre seguridad en aplicaciones web: principios y más
March 2018
- Autentificación, validación e identificación de los usuarios. Cada vez un poco más allá.
- Una historia de los números aleatorios en informática
February 2018
- Las reglas para creación de contraseñas son basura
- Colisiones en el sistema de resumen SHA1
- Comunicación de bots usando Slack
- Sistemas de recuperación de contraseñas
- Sistemas masivos de ficheros y control de versiones
January 2018
- La autentificación de dos factores y los usuarios
- Un estudio sobre correo autentificado en EEUU
- Consejos para desarrollar una carrera en ciberseguridad
December 2017
November 2017
- Principios de seguridad de Saltzer y Schroeder
- Fuzzing para detección de fallos en Google
- Consejos sobre seguridad para trabajadores en movilidad
- Innovación informática en el Gobierno de Gran Bretaña
October 2017
- Seguridad y tranquilidad para los usuarios
- Inseguridad social
- ¿Se preocupa de la seguridad la gente de seguridad?
- Seguridad en internet de las cosas
- Los nombres y la seguridad. El caso de Python y PyPI
- Aleatoriedad y juegos interesantes
September 2017
- ¿Cómo son las preguntas de seguridad?
- Una (otra) introducción a la seguridad en aplicaciones web
- Un programador aburrido
- Libros sobre programación en C
August 2017
July 2017
- Algunos errores comunes tratando de arreglar problemas de 'Cross Site Scripting'
- La forma de programar
June 2017
- ¿Se desarrollan los antivirus de manera segura?
- Cifrado, seguridad y protección de la informacón: FBI contra Apple
May 2017
- ¿Cuál es tu segundo lenguaje de programación?
- El correo como sustituto de las contraseñas
- Seguridad informática y niños
- Bases de seguridad en aplicaciones web
- Pistas sobre la semilla para generar números aleatorios
April 2017
- El direccionamiento del Internet de las cosas
- Registrando IPs de nuestros dispositivos en una hoja de cálculo en la nube
- Inseguridad en las empresas de seguridad
March 2017
- Principios de seguridad de Saltzer y Schroeder
- Buscando código erróneo en foros de ayuda
- Diseño hardware para generar aleatoriedad
- Identificación de programadores mediante su código
February 2017
- Estudio sobre el uso del goto en GitHub
- Seguridad de la gestión de acceso mediante SSH
- Calidad del software y lenguajes de programación
- Desarrollo seguro de aplicaciones móviles
- Reforzar el acceso a nuestros sistemas
January 2017
- Publicar en Telegram las entradas de este sitio usando Python
- Primeros pasos con Omega2
- Divulgación de vulnerabilidades en la industria del automóvil
- Almacenamiento seguro de contraseñas
December 2016
- Números aleatorios seguros en Javascript
- Números aleatorios seguros
- Obsolescencia de algoritmos criptográficos vs realidad
- Condiciones de carrera
- Compartir la WiFi sin precauciones
- Los empleados y las contraseñas
November 2016
- El juramento del programador
- ¿Quién actualizará los juguetes de los niños?
- ¿Cómo encajan las actualizaciones en los procedimientos actuales?
- Estudio sobre vulnerabilidades en el firmware de dispositivos
October 2016
- Estudio sobre reutilización de certificados en dispositivos
- Software libre en tu empresa, ¿todo tu código es realmente tuyo?
- Algunos trucos para esconder programas maliciosos
- La privacidad, los datos y los usuarios
September 2016
- La responsabilidad de las empresas en los ataques
- Sobre generadores de sitios web estáticos
- ¿En quién confías? El compilador
- Algunas cuestiones que hay que tener en cuenta con el modelado de amenazas
August 2016
- El copyright puede facilitar algunos fraudes
- Ataques por ocupación de nombres de paquetes en diversos lenguajes
July 2016
- Primeros pasos con Pine64
- Primeros pasos con el C.H.I.P.
- Amazon. Elogio de los métodos formales
- Seguridad, usabilidad e incentivos
June 2016
May 2016
- Desarrollar software cuando el software no es tu objetivo
- Seguridad para usuarios no interesados en seguridad
April 2016
- Un informe sobre productos criptográficos
- Transplantes de código para arreglar fallos
- Correo para la gestión de accesos
- Hacen falta más expertos en desarrollo seguro
March 2016
- Biometría y autenticación
- La seguridad como argumento publicitario
- Ataques a la BIOS en Apple
- Almacenamiento seguro de claves
February 2016
- Seguridad y aseguradoras
- Java después de veinte años
- Explicación de los principales algoritmos de minería de datos
January 2016
- Es difícil identificar los correos de phishing correctamente
- .es, la web anticuada
- DevOps y seguridad
- Control de versiones desde Python
- Programando discos SSDs
- Un fallo viejo en máquinas virtuales
- Alguien puede estar tratando de conocerte mejor
- Claves falsas para despistar al atacante
- Sobre inclusión más segura de contenidos con iframes
- Algunas técnicas contra el análisis de ejecutables
- SSL para todos en CloudFare y la escala
December 2015
- Desbordamientos de enteros recientes
- Lecciones aprendidas desarrollando GitHub pages
- Condiciones de carrera en algunos sitios famosos
- Errores al final
- Añadiendo filtros de correo a mi sistema con sievelib
- El valor de tu clave
- Jugando con IMAP en Python
- Eliminar la aleatoriedad en un juego
November 2015
- Más fallos con una larga historia
- Firmar el código que se ejecuta en el cliente o en el servidor
- Motivos por los que debería gustarnos Java
- Las actualizaciones ... ¿como ventaja competitiva?
- Actualizando. Espere
- Elogio de Python por el equipo de ingeniería de PayPal
- Demandas por fallos de software: los coches
- Command and Control con GMail
- Informe sobre ciberseguridad nacional en EEUU
October 2015
- Infecciones e internet
- Más sobre borrado seguro de datos
- Recuperación de contraseñas con preguntas personales
- Mala seguridad, routers y ataques
- Anatomía de un ataque
- ¿Te puedes fiar del vendedor de tu ordenador?
- Algunos problemas de la biometría
- Informe sobre la seguridad de datos en empresas
- Sobre GCC, LLVM, competencia, obsolescencia y avances
September 2015
- Aleatoriedad y juego en línea
- Un informe sobre ciberseguridad en Europa
- Sobre re-identificación de datos anónimos
August 2015
July 2015
- Manejo de memoria en Gmail
- Análisis de intentos de entrada a una instalación de Wordpress
- Medidas anti-fraude molestas
- Adjuntos MIME
- Insertar fórmulas de libreoffice en un CSV
June 2015
- Evaluación del generador de números seudo-aleatorios
- El viajante y su Tesla
- Mejorando las prestaciones de la biblioteca matemática en glib
- Aleatoriedad y seguridad
- Contraseñas y dispositivos móviles
May 2015
- Conferencia sobre 16 años de Hispasec
- Hola Lola. Construyendo un hexápodo sencillo
- Diez fallos de seguridad que harán que te despidan
- Desbordamiento de enteros en YouTube
- Las primeras contraseñas
- Desarrollo seguro: las pistas de Adobe
April 2015
- Todo lo que necesitas saber de POODLE
- Algunos detalles sobre simuladores de Fórmula 1
- Seguridad en proyectos ágiles
- Construir sistemas seguros y compartir herramientas
- Borrado remoto de datos en relojes Pebble
- Publicar en Linkedin las entradas de este sitio usando Python
- Algunos artículos sobre pruebas
- Bugs con una larga historia. El caso de LZO
March 2015
- OAUTH y seguridad
- Los nombres y las cosas
- Seguridad y principio del mínimo privilegio
- Aprender programación en 2014
- Consejos sobre claves
- Seguridad e Internet de las cosas
- Heartbleed, código y memoria
- Mitos sobre /dev/urandom y más sobre aleatoriedad y su medida
February 2015
- Desbordamientos de memoria y Toyota
- Mantener una web estática con Git
- PCI y Europa
- Tarjetas, seguridad e incentivos
- Una pata robótica
- Cabeceras de seguridad HTTP que deberías estar usando
- Fallos y seguridad
- Aleatoriedad y juegos
- Desarrollo seguro en el móvil
- Habemus tags
- Leer código de otros y buenos consejos de programación
January 2015
- Mostrar la contraseña en el formulario o no
- Publicar en Facebook las entradas de este sitio usando Python
- Técnicas para evitar ataques comunes a la memoria
- Una introducción a la criptografía elíptica
- Atacando a un jugador de póquer
- Fundamentos de gestión de cuentas
- PCI y desarrollo seguro
- Extraer enlaces de una página web
- Números aleatorios seguros en Java
- Una introducción a la autentificación basada en riesgos
- Coches y ataques
- Las optimizaciones del compilador y la seguridad
December 2014
- Presentación de RSA en Scientific American
- Consejos para almacenar las claves
- Inyección de SQL basada en la evaluación de enteros en expresiones anidadas
- Cuidado con la gestión de nombres
- Ataques cada vez más enfocados
- ¿En qué confíamos?
- Generador de números aleatorios de Intel
- Algunos datos sobre el uso de ssh
- Las claves muy largas también pueden ser problemáticas
- Algunos enlaces interesantes sobre claves
- Publicar en Twitter las entradas de este sitio usando Python
- La abstracción detrás de un programa sencillo