Escribo sobre programación, música y otras cosas que me interesan.
31 de enero de 2026
Cómo creamos un backend de MMORPG escalable utilizando Oracle Cloud, GCP, IBM Cloud y decisiones arquitectónicas inteligentes, sin gastar un centavo.
28 de enero de 2026
Si ejecuta un microservicio de Rust en Oracle Cloud y le preocupan los costos de las plataformas empresariales de CI/CD como GitLab Premium, Jenkins o soluciones alojadas, tenemos buenas noticias. Puede implementar la integración y el despliegue continuos de nivel de producción con tres herramientas gratuitas: GitHub Actions , autenticación de clave SSH y systemd . Esta guía le muestra exactamente cómo construir un pipeline de CI/CD que compita con plataformas que cuestan cientos por mes, sin pagar absolutamente nada .
3 de octubre de 2025
Como ingenieros de software, a menudo nos destacamos en la creación de aplicaciones sorprendentes, pero a veces tenemos dificultades con el aspecto comercial de la entrega al cliente. Esta guía completa cubre todo lo que necesitamos saber sobre cómo llevar nuestros proyectos de aplicaciones web desde su finalización hasta su entrega exitosa, garantizando al mismo tiempo pagos seguros y relaciones profesionales con los clientes.
2 de octubre de 2025
Después de más de una década en el desarrollo de software, hemos aprendido lecciones que cambiaron fundamentalmente la forma en que abordamos nuestro oficio. Nos llevó años descubrir estos conocimientos, pero los compartimos con ustedes hoy— porque creemos que todo ingeniero de software merece saber qué es lo que realmente importa más allá del código en sí.
30 de septiembre de 2025
La ingeniería de backend a menudo gira en torno a cómo se procesan, almacenan, recuperan y manipulan los datos. Para comprender verdaderamente las estructuras de datos y los algoritmos, es útil comprender el panorama subyacente del hardware y el sistema operativo: cómo interactúan la CPU, los registros, el caché, la RAM, el almacenamiento y el kernel para mover y administrar datos.
29 de septiembre de 2025
Para los ingenieros de software backend, dominar la eficiencia del acceso a los datos es primordial. Entre las estructuras de datos principales que permiten una búsqueda rápida y un almacenamiento dinámico se encuentra el **Hash Map**. Este artículo profundiza en el funcionamiento interno de Hash Maps, utilizando una analogía de almacén, explicaciones técnicas del diseño de memoria de Rust y conocimientos a nivel de kernel para ofrecer una comprensión integral adecuada para aplicaciones backend del mundo real.
28 de septiembre de 2025
Las listas enlazadas en Rust son como una cadena de cajas esparcidas por el piso de un almacén, donde cada caja contiene no solo un producto sino también un puntero a la ubicación de la siguiente caja. Este diseño es ideal cuando los estantes del almacén no pueden ser físicamente contiguos pero aún así necesitan una secuencia ordenada. Este artículo explora listas enlazadas a través de la analogía del almacén, presenta ejemplos de Rust centrados en el diseño de la memoria e incluye un diagrama explicativo de Mermaid, diseñado para ingenieros de software.rust-unofficial.github+1
28 de septiembre de 2025
Los vectores en Rust son como pasillos expandibles en un almacén—construidos para flexibilidad, acceso rápido y crecimiento dinámico. Este artículo ofrece una analogía profunda entre los vectores y la logística del almacén, incluye ejemplos precisos de código Rust y proporciona un **diagrama de sirena** para aclarar la estructura y el diseño de la memoria para los ingenieros.[^1][^2][^3]
28 de septiembre de 2025
Piense en un almacén con una fila de estantes idénticos, cada ranura numerada y lo suficientemente grande como para contener un solo tipo de artículo. Una vez instalados estos estantes, la capacidad es fija — muy parecida a una matriz Rust, que tiene un tipo y un tamaño determinados en el momento de la compilación.
28 de septiembre de 2025
Cuando pensamos en estructuras de datos, a menudo resulta útil mapearlas a analogías del mundo real. Una analogía poderosa es la de un almacén. Un almacén almacena mercancías de formas específicas para optimizar la recuperación, la organización y el uso del espacio. De manera similar, las estructuras de datos organizan los datos en la memoria para equilibrar la eficiencia, los patrones de acceso y la flexibilidad. Este artículo explora cómo las estructuras de datos pueden considerarse como diferentes tipos de almacenes y utilizaremos ejemplos de Rust para conectar la analogía con diseños de memoria reales.
25 de junio de 2025
Este artículo explora los escenarios en los que el uso de hilos puede mejorar el rendimiento y la capacidad de respuesta de la aplicación.
5 de junio de 2025
Serde es un marco poderoso en Rust para serializar y deserializar estructuras de datos. Este artículo explora sus características, casos de uso y mejores prácticas.
4 de junio de 2025
Comprender el layout de memoria en Rust es clave para escribir código seguro, eficiente e idiomático. Este post explica cómo Rust gestiona la memoria, desde la pila y el heap hasta los punteros inteligentes y los trait objects.
30 de mayo de 2025
La normalización de bases de datos es un concepto importante en el diseño de bases de datos que garantiza la integridad de los datos y reduce la redundancia.
6 de julio de 2024
Una visión general de los paradigmas de programación sincrónica y asincrónica, sus diferencias y casos de uso.
5 de julio de 2024
Una visión general del modelo de solicitud-respuesta en el desarrollo web.
5 de julio de 2024
Entender las diferencias entre el balanceo de carga en la Capa 4 y la Capa 7 es crucial para diseñar arquitecturas de red eficientes y escalables.
26 de junio de 2024
El génesis de NAT radica en la escasez inherente de direcciones IP públicas. Con el crecimiento explosivo de Internet, la demanda de estos identificadores únicos ha superado con creces la oferta. NAT surgió como una solución, permitiendo que múltiples dispositivos dentro de una red privada compartan una única dirección IP pública, conservando efectivamente este recurso precioso.
24 de junio de 2024
Adentrate en las complejidades del control de congestión, la piedra angular de la transmisión de datos confiable. Únete a nuestro sabio mago mientras te guía a través de los principios de los algoritmos de inicio lento y evasión de congestión de TCP, revelando la magia detrás de una comunicación de red eficiente y estable.
11 de febrero de 2024
Las encuestas largas redefinen cómo manejamos la comunicación casi en tiempo real en aplicaciones web, ofreciendo un enfoque refinado cuando los WebSockets o los eventos enviados por el servidor pueden ser excesivos. Como ingenieros de software, comprender el largo ciclo de vida del sondeo —desde la asignación de memoria hasta la E/S asistida por el kernel— nos permite diseñar sistemas más robustos y eficientes que escalan elegantemente en todas las condiciones de la red.
31 de enero de 2024
Las aplicaciones web exigen capacidad de respuesta, pero no todas las cargas de trabajo encajan perfectamente en el modelo clásico de solicitud-respuesta. Cuando las solicitudes implican tiempos de procesamiento prolongados o cuando queremos que el servidor active actualizaciones de forma asincrónica, los sondeos cortos nos ofrecen una solución pragmática y ampliamente aplicable.
30 de enero de 2024
Una exploración del modelo de push en sistemas backend, sus beneficios y estrategias de implementación.
23 de enero de 2024
La Seguridad de la Capa de Transporte (TLS) es un protocolo criptográfico diseñado para proporcionar comunicación segura a través de una red informática.
22 de enero de 2024
El Sistema de Nombres de Dominio (DNS) es un sistema de nombres jerárquico y descentralizado para computadoras, servicios o cualquier recurso conectado a Internet o a una red privada.
19 de enero de 2024
El control de flujo juega un papel crucial en la prevención de la congestión de datos y garantiza que los datos fluyan sin problemas entre el emisor y el receptor.
19 de enero de 2024
Para desglosar el funcionamiento de TCP, vamos a embarcarnos en una aventura en la anatomía de un segmento TCP, la unidad fundamental de transferencia de datos.
11 de enero de 2024
Las direcciones IP son utilizadas por computadoras para identificar a otras en una red, mientras que las direcciones MAC son identificadores físicos asignados a tarjetas de red.
9 de enero de 2024
Es un elemento fundamental para el diagnóstico de redes y la supervisión del rendimiento.
8 de enero de 2024
Una guía exhaustiva sobre los conceptos fundamentales de redes, incluyendo la dirección IP, la organización de subredes y el papel de los puentes por defecto en la comunicación de redes.
4 de enero de 2024
Abraza tu mente para una exploración del mundo complejo de la comunicación host-to-host en el panorama digital.
4 de enero de 2024
Este modelo revolucionario es un concepto fundamental en el desarrollo de software moderno, ofreciendo una solución escalable, eficiente y mantenible para manejar aplicaciones de gran escala.
2 de enero de 2024
Viaje de una Solicitud HTTP: Desde Cliente hasta Servidor y de Nuevo
28 de octubre de 2023
Como usar Sockets en AsyncIO
25 de octubre de 2023
Explorando el mundo de Futuros, Tareas y Awaitables en Python
25 de octubre de 2023
Programación asincrónica con asyncio es una poderosa herramienta para manejar tareas I/O-bound concurrentes.
25 de octubre de 2023
Una guía completa para comprender corutinas y tareas en el modelo de programación asíncrona de Python. Aprende cómo implementar operaciones concurrentes de manera eficiente utilizando la sintaxis async/await, gestionar la ejecución a través del bucle de eventos y mejorar el rendimiento de la aplicación con ejemplos prácticos y mejores prácticas.
24 de octubre de 2023
GIL explicado en detalle
23 de octubre de 2023
Explora los fundamentos de la concurrencia en Python a través de procesos y hilos. Aprende las diferencias, los casos de uso y las mejores prácticas para implementar multithreading y multiprocessing en tus aplicaciones.
12 de octubre de 2023
Despliegue de múltiples apps en PythonAnywhere es una necesidad común, pero puede ser complicado debido a la ausencia de soporte ASGI. En este guía, exploraremos una solución de trabajo para desplegar múltiples apps sin ASGI.
4 de octubre de 2023
Docker es una herramienta muy útil para gestionar y ejecutar aplicaciones en contenedores. En este artículo, exploraremos algunas pautas para configurar Python con Docker.
31 de mayo de 2022
Beautiful Soup es una herramienta muy útil para la extracción de páginas web, pero puede ser lento cuando se trata de páginas grandes. En este artículo, exploraremos algunas pautas para optimizar el rendimiento de Beautiful Soup.
31 de mayo de 2022
¿Qué son las APIs y por qué son importantes en el desarrollo de software moderno?