// blog
Ingeniería de software, explicada con código real.Software engineering, explained with real code.
Sistemas y bajo nivel, Rust, seguridad, IA y web, y cómo aplicarlo en una empresa. Con fuentes primarias, en español e inglés.Systems and low-level, Rust, security, AI and the web, and how to put them to work in a business. With primary sources, in Spanish and English.
RustRust
Limitar una API por plan en Rust: GCRA, Redis y tower-rate-tierRate limiting an API by plan in Rust: GCRA, Redis and tower-rate-tier
Cómo limitar las peticiones según el plan de cada usuario con tower-rate-tier: por qué GCRA y no una ventana fija, peticiones que cuestan más, límites compartidos entre instancias con Redis y valores por defecto seguros. Con un servicio de ejemplo y salidas reales.How to limit requests by each user's plan with tower-rate-tier: why GCRA and not a fixed window, requests that cost more, limits shared between instances with Redis, and safe defaults. With an example service and real outputs.
Serie completa · 3 partesComplete series · 3 parts
Anillos de privilegio x86: del Ring 3 al Ring -2x86 privilege rings: from Ring 3 to Ring -2
Un descenso por los niveles de privilegio del x86: del modo usuario al kernel, al hipervisor y al firmware.A descent through x86 privilege levels: from user mode to the kernel, the hypervisor and the firmware.
Leer la serie desde el principio →Read the series from the start →- Parte 1Part 1De Ring 3 a Ring 0: qué pasa cuando tu código cruza la frontera del kernelFrom Ring 3 to Ring 0: what happens when your code crosses into the kernel
- Parte 2Part 2Ring -1: el hipervisor que vigila a tu kernelRing -1: the hypervisor watching over your kernel
- Parte 3Part 3Ring -2: SMI, SMRAM y RSM, cómo el firmware toma la CPU por debajo del hipervisorRing -2: SMI, SMRAM and RSM, how firmware takes over the CPU below the hypervisor
Por seccionesBy section
01 · 4 artículos4 articles
Bajo nivelLow-level
Kernel, drivers, virtualización y firmware: lo que pasa por debajo de tu código.Kernels, drivers, virtualization and firmware: what runs beneath your code.
Bajo nivelLow-level · 12 min
Anatomía de un driver de Windows: del DriverEntry al IRPAnatomy of a Windows driver: from DriverEntry to the IRP
Qué pasa dentro de un driver de Windows: DriverEntry, IRQL, el viaje de un IRP, la tabla de dispatch, los IOCTL y por qué un spinlock mal usado tumba el sistema. Con código real.What happens inside a Windows driver: DriverEntry, IRQL, an IRP's journey, the dispatch table, IOCTLs and why a misused spinlock brings the system down. With real code.
Bajo nivel · Parte 3Low-level · Part 3 · 12 min
Ring -2: SMI, SMRAM y RSM, cómo el firmware toma la CPU por debajo del hipervisorRing -2: SMI, SMRAM and RSM, how firmware takes over the CPU below the hypervisor
Qué hay por debajo del hipervisor: System Management Mode, el código del firmware que se ejecuta a escondidas del sistema, y cómo comprobar desde C++ qué protecciones declara tu firmware.What lives below the hypervisor: System Management Mode, the firmware code that runs hidden from the OS, and how to check from C++ which protections your firmware declares.
Bajo nivel · Parte 2Low-level · Part 2 · 10 min
Ring -1: el hipervisor que vigila a tu kernelRing -1: the hypervisor watching over your kernel
Qué hay por debajo del kernel: el hipervisor, en modo VMX root (modo host de SVM en AMD). Cómo funciona con VT-x, AMD-V y EPT, por qué Windows usa uno para protegerse a sí mismo y cómo comprobarlo desde C++ con CPUID.What lives below the kernel: the hypervisor, in VMX root mode (SVM host mode on AMD). How it works with VT-x, AMD-V and EPT, why Windows uses one to protect itself, and how to check it from C++ with CPUID.
02 · 3 artículos3 articles
RustRust
Seguridad de memoria, rendimiento y el ecosistema de Rust en proyectos reales.Memory safety, performance and the Rust ecosystem in real projects.
RustRust · 17 min
Usar C++ desde Rust: cómo un envoltorio seguro convierte un use-after-free en un error de compilaciónUsing C++ from Rust: how a safe wrapper turns a use-after-free into a compile error
Una librería C++ usada desde Rust: qué es unsafe de verdad, cómo se diseña la frontera en C, por qué un bug de C++ deja de compilar con el envoltorio correcto y qué pasa con las excepciones y los pánicos. Con código real.A C++ library used from Rust: what unsafe really is, how to design the C boundary, why a C++ bug stops compiling with the right wrapper, and what happens to exceptions and panics. With real code.
RustRust · 5 min
Por qué Rust sigue siendo el lenguaje más seguro en 2026Why Rust remains the safest language in 2026
Análisis de las características de seguridad de memoria de Rust y por qué domina en sistemas críticos en 2026. Ownership, borrowing, y adopción en Linux, Android y AWS.Analysis of Rust's memory safety features and why it dominates in critical systems.
03 · 1 artículo1 article
SeguridadSecurity
Cómo se protege el software: vulnerabilidades, mitigaciones y buenas prácticas.How software is protected: vulnerabilities, mitigations and good practice.
04 · 2 artículos2 articles
NegocioBusiness
Digitalización e IA aplicadas a empresas: casos, costes y cómo empezar.Digitalization and AI for businesses: cases, costs and how to start.
NegocioBusiness · 10 min
Formar a tu plantilla en IA: qué exige de verdad el AI Act tras el cambio de 2026Training your staff in AI: what the AI Act really requires after the 2026 change
El artículo 4 del Reglamento Europeo de IA cambió en julio de 2026. Qué decía, qué dice ahora, a qué empresas afecta, qué no exige y qué hacer en una pyme, con el texto oficial y las respuestas de la Comisión Europea.Article 4 of the EU AI Act changed in July 2026. What it said, what it says now, which companies it affects, what it doesn't require and what to do in an SME, with the official text and the European Commission's answers.
NegocioBusiness · 4 min
Cómo la IA está transformando empresas en BadajozHow AI is transforming businesses in Badajoz
Guía práctica de inteligencia artificial para pymes y autónomos en Badajoz y Extremadura. Automatización, atención al cliente y decisiones basadas en datos.Practical AI guide for SMEs and freelancers in Extremadura. Real cases and first steps.
Todos los artículosAll articles
NegocioBusiness · 10 min
Formar a tu plantilla en IA: qué exige de verdad el AI Act tras el cambio de 2026Training your staff in AI: what the AI Act really requires after the 2026 change
El artículo 4 del Reglamento Europeo de IA cambió en julio de 2026. Qué decía, qué dice ahora, a qué empresas afecta, qué no exige y qué hacer en una pyme, con el texto oficial y las respuestas de la Comisión Europea.Article 4 of the EU AI Act changed in July 2026. What it said, what it says now, which companies it affects, what it doesn't require and what to do in an SME, with the official text and the European Commission's answers.
RustRust · 11 min
Limitar una API por plan en Rust: GCRA, Redis y tower-rate-tierRate limiting an API by plan in Rust: GCRA, Redis and tower-rate-tier
Cómo limitar las peticiones según el plan de cada usuario con tower-rate-tier: por qué GCRA y no una ventana fija, peticiones que cuestan más, límites compartidos entre instancias con Redis y valores por defecto seguros. Con un servicio de ejemplo y salidas reales.How to limit requests by each user's plan with tower-rate-tier: why GCRA and not a fixed window, requests that cost more, limits shared between instances with Redis, and safe defaults. With an example service and real outputs.
RustRust · 17 min
Usar C++ desde Rust: cómo un envoltorio seguro convierte un use-after-free en un error de compilaciónUsing C++ from Rust: how a safe wrapper turns a use-after-free into a compile error
Una librería C++ usada desde Rust: qué es unsafe de verdad, cómo se diseña la frontera en C, por qué un bug de C++ deja de compilar con el envoltorio correcto y qué pasa con las excepciones y los pánicos. Con código real.A C++ library used from Rust: what unsafe really is, how to design the C boundary, why a C++ bug stops compiling with the right wrapper, and what happens to exceptions and panics. With real code.
SeguridadSecurity · 9 min
Un secreto que ejecutaba código: postmortem de una vulnerabilidad en mi gestor de secretosA secret that ran code: post-mortem of a vulnerability in my own secrets manager
Cómo el valor de un secreto podía ejecutar comandos en un pipeline de CI a través de Vaultic, reproducido con los binarios reales: el fallo, quién podía explotarlo, el arreglo, los fallos pequeños que vinieron detrás y cómo se publicó.How a secret's value could run commands in a CI pipeline through Vaultic, reproduced with the real binaries: the bug, who could exploit it, the fix, the smaller bugs behind it and how it was disclosed.
Bajo nivelLow-level · 12 min
Anatomía de un driver de Windows: del DriverEntry al IRPAnatomy of a Windows driver: from DriverEntry to the IRP
Qué pasa dentro de un driver de Windows: DriverEntry, IRQL, el viaje de un IRP, la tabla de dispatch, los IOCTL y por qué un spinlock mal usado tumba el sistema. Con código real.What happens inside a Windows driver: DriverEntry, IRQL, an IRP's journey, the dispatch table, IOCTLs and why a misused spinlock brings the system down. With real code.
Bajo nivel · Parte 3Low-level · Part 3 · 12 min
Ring -2: SMI, SMRAM y RSM, cómo el firmware toma la CPU por debajo del hipervisorRing -2: SMI, SMRAM and RSM, how firmware takes over the CPU below the hypervisor
Qué hay por debajo del hipervisor: System Management Mode, el código del firmware que se ejecuta a escondidas del sistema, y cómo comprobar desde C++ qué protecciones declara tu firmware.What lives below the hypervisor: System Management Mode, the firmware code that runs hidden from the OS, and how to check from C++ which protections your firmware declares.
Bajo nivel · Parte 2Low-level · Part 2 · 10 min
Ring -1: el hipervisor que vigila a tu kernelRing -1: the hypervisor watching over your kernel
Qué hay por debajo del kernel: el hipervisor, en modo VMX root (modo host de SVM en AMD). Cómo funciona con VT-x, AMD-V y EPT, por qué Windows usa uno para protegerse a sí mismo y cómo comprobarlo desde C++ con CPUID.What lives below the kernel: the hypervisor, in VMX root mode (SVM host mode on AMD). How it works with VT-x, AMD-V and EPT, why Windows uses one to protect itself, and how to check it from C++ with CPUID.
Bajo nivel · Parte 1Low-level · Part 1 · 11 min
De Ring 3 a Ring 0: qué pasa cuando tu código cruza la frontera del kernelFrom Ring 3 to Ring 0: what happens when your code crosses into the kernel
Un viaje por los anillos de privilegio del x86. Qué es el Ring 0, cómo funciona una syscall, por qué un fallo en el kernel tumba el sistema entero y qué defensas protegen hoy esa frontera.A journey through x86 privilege rings. What Ring 0 is, how a syscall works, why a kernel bug takes down the whole system, and which defenses guard that border today.
NegocioBusiness · 4 min
Cómo la IA está transformando empresas en BadajozHow AI is transforming businesses in Badajoz
Guía práctica de inteligencia artificial para pymes y autónomos en Badajoz y Extremadura. Automatización, atención al cliente y decisiones basadas en datos.Practical AI guide for SMEs and freelancers in Extremadura. Real cases and first steps.
RustRust · 5 min
Por qué Rust sigue siendo el lenguaje más seguro en 2026Why Rust remains the safest language in 2026
Análisis de las características de seguridad de memoria de Rust y por qué domina en sistemas críticos en 2026. Ownership, borrowing, y adopción en Linux, Android y AWS.Analysis of Rust's memory safety features and why it dominates in critical systems.
No hay artículos que coincidan con la búsqueda.No articles match your search.