THE BLOG

Ideas worth exploring.

Notes on software, security, and the ideas behind them. Explore a topic, learn something new, and go a little deeper.

Article

Pruebas de hipótesis paso a paso: una diferencia no basta

Cómo planificar y ejecutar una prueba de hipótesis con dos proporciones: hipótesis, supuestos, valor p, potencia e intervalos para evaluar una mejora sin confundir significancia con utilidad.

·9 min read
Article

5 Pourquoi : le cas d'école du Jefferson Memorial n'a pas la fin qu'on raconte, et comment chercher plus d'une cause

Le cas d'école des 5 Pourquoi, les moucherons du Jefferson Memorial, confronté aux archives ; deux postmortems réels, GitLab et AWS ; l'arbre des causes de l'INRS ; des règles pour savoir quand s'arrêter, et un script qui vérifie une analyse.

·18 min read
Article

PDCA et IA : vérifier les gains avant de généraliser

Appliquer le PDCA à un projet d’intelligence artificielle : diagnostic, hypothèse, pilote, indicateurs et décision. Un cas de support montre pourquoi un gain de temps peut cacher une dégradation du service.

·9 min read
Article

5W2H (QQOQCCP) : sept questions qui rendent un plan d'action exécutable, et celle qui a trois sens

Le 5W2H, ou QQOQCCP, oblige chaque action d'un plan à dire quoi, pourquoi, où, quand, qui, comment et combien. L'origine des questions, les deux usages de la grille, les trois sens du pourquoi, un script qui vérifie un plan, et ce que la grille ne fait pas.

·15 min read
Article

ASGI Event by Event: How scope, receive and send Keep a Connection Open, and Why an Async WSGI Would Not

A raw ASGI app traced under Uvicorn: what scope, receive and send carry, how a request body arrives in pieces, how the app notices a client leave, how a WebSocket pushes, and why wrapped WSGI code ran one request at a time.

·17 min read
Article

ROI logiciel : mesurer les gains sans surestimer les économies

Mesurer le retour sur investissement d’un produit ou service logiciel : coûts, marge, temps libéré et attribution des gains. Un cas chiffré et un simulateur montrent les hypothèses qui changent la décision.

·10 min read
Article

Perfect Secrecy and Kerckhoffs' Principle: How a Provably Unbreakable Cipher Was Broken

Shannon's definition of perfect secrecy, the one-time pad and the theorems that set its price, with every hypothesis stated. Then Kerckhoffs' principle, and what Venona shows about breaking a cipher that cannot be broken.

·13 min read
Article

Análisis de datos: los cuatro tipos y qué información usa cada uno

Análisis descriptivo, predictivo, diagnóstico y prescriptivo aplicados a un mismo problema: qué pregunta responde cada fase, qué datos necesita, cómo se usan y por qué existen dos formas de ordenarlas.

·10 min read
Article

Método científico aplicado al desarrollo de software y la seguridad

Cómo tratar los supuestos de seguridad como hipótesis falsables: el ciclo del método científico en el trabajo diario, sus límites y un registro de premisas para convertir creencias en pruebas repetibles.

·4 min read
Article

Descriptive vs Inferential Statistics: What Seven Numbers Can Tell You

Descriptive statistics summarizes the data you have. Inferential statistics uses a sample to estimate what you do not have. One seven-number sample shows where the first ends and the second begins.

·3 min read
Article

Classic Algorithms Explained

An exploration of essential algorithms including Karatsuba multiplication, binary search and sorting algorithms, with a link to graph traversal—plus Python implementations and complexity analysis.

·4 min read
Article

Artificial Vision and Computer Vision: From Pixels to Understanding

An introduction to computer vision and image processing. From spatial domain operations to frequency transforms, with practical Python examples using OpenCV.

·11 min read
Article

Dynamic Programming

Learn how dynamic programming works, when to use it, and how to model solutions using top-down memoization and bottom-up tabulation.

·2 min read
Article

Economía Básica

Conceptos fundamentales de economía: transacciones, oferta y demanda, crédito, ciclos económicos, y más. Una guía práctica para entender cómo funciona la economía.

·15 min read
Article

Indicadores Económicos: Ocho Números para Leer una Economía

Ocho indicadores económicos (PIB, inflación, desempleo, balanza comercial, tasa de interés, confianza del consumidor, deuda y tipo de cambio): qué miden, cómo se calculan y por qué ninguno cuenta solo la historia completa.

·13 min read
Article

Building a Production-Ready Remote MCP Server

Lessons from building a remote MCP server in Python. Challenges with stateful sessions, input validation, scoped tool access, and authorization in horizontally scaled production environments.

·6 min read
Article

SOLID Python

The five SOLID design principles applied to Python. Practical examples of SRP, OCP, LSP, ISP, and DIP to write cleaner, more maintainable code.

·9 min read
Article

Time Value of Money: Why a Dollar Today Beats a Dollar Tomorrow

The time value of money explained: compound interest, present and future value, annuities, and net present value. With formulas, worked examples, a chart, and Python code.

·10 min read
Article

JSON-RPC V2.0

JSON-RPC is a stateless, light-weight remote procedure call (RPC) protocol

·3 min read
Article

Most Useful Git Commands

A practical reference for the git commands I use the most. From stash tricks and interactive rebase to worktrees, bisect, and recovery with reflog.

·7 min read
Article

WSGI vs ASGI Protocols

Comprehensive guide comparing WSGI and ASGI protocols in Python web development. Learn key differences, implementation examples, and when to use each protocol for optimal web application performance.

·2 min read
Article

Réflexions 2024

Un résumé des livres que j'ai lus et des choses que j'ai apprises en 2024.

·3 min read
Article

Concurrency and Multithreading

Understanding concurrency, parallelism, and multithreading. How threads share memory, why concurrency matters for performance, and practical patterns with async Python.

·5 min read
Article

Functional Programming

A practical introduction to functional programming in Python: pure functions, immutability, composition, and common patterns.

·3 min read
Article

Python Great Features

Exploring duck typing, Abstract Base Classes, Protocols, and caching decorators. The features that make Python flexible and expressive beyond the basics.

·8 min read
Article

Python Virtual Environments

How to isolate project dependencies with virtual environments. Creating, activating, freezing requirements, and packaging Python projects with Docker.

·7 min read
Article

Terminal Basics

A beginner-friendly guide to the command line. What shells, terminals, and commands are, plus essential operations for navigating and managing files.

·17 min read
Article

Python Basics

Python is a great language for beginners and experts alike. Let's explore the basics of Python. From modules, packages, scope, and more. Let's dive in!

·5 min read