Artículos

  • Python 0

    logging en Python: handlers, formatters, loggers jerárquicos y configuración por entorno

    El módulo logging de Python permite registrar eventos con nivel, timestamp y módulo de origen. Aprende a usar getLogger, handlers como RotatingFileHandler, formatters y dictConfig para estructurar los logs por entorno sin tocar el código de la aplicación.

  • PHP 0

    Excepciones en PHP: throw, try/catch/finally y la jerarquía de Exception

    Aprende a lanzar y capturar excepciones en PHP con throw, try, catch y finally. Entiende la jerarquía Throwable, cuándo capturar Error frente a Exception, cómo encadenar excepciones con previous y por qué no debes capturar Throwable genérico en producción.

  • Javascript 0

    infer avanzado en TypeScript: patrones de extracción, UnpackPromise, Head/Tail de tuplas y más

    Aprende a usar infer en TypeScript para extraer tipos de funciones, tuplas, arrays y promesas. Patrones avanzados con ejemplos reales: Head y Tail de tuplas, UnpackPromise, múltiples infer en una condición e infer con template literals.

  • Generales 0

    OpenTelemetry en Go: traces, métricas, exporters y Jaeger para observabilidad

    Aprende a instrumentar aplicaciones Go con OpenTelemetry: configura TracerProvider con Jaeger vía OTLP, crea y anida spans con atributos, propaga contexto entre servicios HTTP con otelhttp, añade métricas con MeterProvider y ajusta el sampling para producción.

  • Javascript 0

    Patrones de módulos modernos en JavaScript: IIFE, singleton, pub/sub y event emitter propio

    Guía práctica sobre patrones de módulo en JavaScript moderno con ESM: singleton sin getInstance(), pub/sub propio con función de limpieza, WeakMap para estado privado, Observer con WeakRef para evitar memory leaks y EventTarget nativo como event emitter sin librerías externas.

  • Generales 0

    Unsafe Rust: raw pointers, bloques unsafe y cuándo (y cuándo no) usarlo

    Unsafe Rust no es una puerta trasera para saltarse el compilador. Te habilita exactamente cinco operaciones que el código seguro no puede hacer: dereferenciar raw pointers, llamar a funciones unsafe o de C, acceder a statics mutables, implementar unsafe traits y acceder a campos de unions.

  • Generales 0

    SwiftUI con @Observable: el nuevo modelo de datos en Swift 5.9 y iOS 17

    Swift 5.9 introduce @Observable, la macro del framework Observation que sustituye a ObservableObject en SwiftUI. Rastrea exactamente qué propiedades usa cada vista y solo la actualiza cuando esas cambian, sin @Published ni la dicotomía @StateObject vs @ObservedObject. Con cuatro ejemplos reales...

  • Python 0

    pathlib en Python: Path para rutas, glob, mkdir, iterdir y operaciones de ficheros

    Aprende a trabajar con rutas de ficheros en Python usando pathlib.Path: crea, lee, escribe, renombra y busca ficheros con glob. Más claro que os.path, con ejemplos prácticos de mkdir, iterdir y los componentes name, stem, suffix y parent.

  • C 0

    C y Python: extender Python con módulos C usando la C API y ctypes

    Aprende a acelerar Python con C: ctypes para llamar a bibliotecas .so sin recompilar, la Python C API para módulos nativos, y cffi como alternativa moderna. Ejemplos reales.

  • PHP 0

    El operador nullsafe ?-> en PHP 8 y otras mejoras: str_contains, throw como expresión

    PHP 8.0 introdujo el operador nullsafe para encadenar llamadas a métodos sobre objetos que pueden ser null sin comprobar manualmente cada eslabón. También llegaron str_contains(), str_starts_with() y throw como expresión. Cuatro ejemplos reales de cada mejora.