Artículos

  • PHP 0

    Traits en PHP: reutilizar código entre clases sin herencia múltiple

    Los traits de PHP permiten compartir métodos entre clases sin herencia. Aprende la sintaxis básica, cómo resolver conflictos con insteadof y as, traits con métodos abstractos y casos reales como el patrón Timestampable para añadir timestamps a tus modelos.

  • Scala 0

    Cats Effect 3 en Scala: IO monad, fibers, Resource y programación funcional tipada

    Cats Effect 3 es el runtime de efectos del ecosistema Typelevel en Scala. IO[A] para efectos controlados, fibers para concurrencia, Resource para ciclos de vida y fs2 para streaming funcional. Guía con ejemplos prácticos.

  • BBDD 0

    JSON y JSONB en PostgreSQL: operadores, índices y cuándo tiene sentido un campo semi-estructurado

    JSON guarda el texto original; JSONB lo descompone en binario y permite índices GIN. Los operadores ->, ->>, @>, ? cubren la mayoría de los casos. JSONB es la opción correcta salvo que necesites preservar el formato exacto del JSON.

  • C++ 0

    Concepts y requires en C++20: constraints que sustituyen al SFINAE

    Los concepts de C++20 permiten añadir restricciones a templates con una sintaxis legible y errores de compilación comprensibles. Guia práctica con requires, abbreviated templates y conceptos estándar.

  • Generales 0

    Concurrencia en Rust: Mutex, RwLock, channels y Arc para estado compartido seguro

    Aprende a escribir código concurrente en Rust sin data races: Arc Mutex para estado mutable compartido, RwLock para lecturas paralelas, channels mpsc con múltiples productores y Barrier para sincronización por fases. Con cuatro ejemplos reales y el error de compilación más frecuente.

  • Python 0

    collections en Python: Counter, defaultdict, deque, ChainMap y OrderedDict

    El módulo collections de Python incluye estructuras especializadas: Counter para frecuencias, defaultdict para evitar KeyError, deque para colas O(1) con ventana deslizante, ChainMap para buscar en varios dicts sin copiarlos y OrderedDict con move_to_end para cachés LRU.

  • PHP 0

    Interfaces y clases abstractas en PHP: cuándo usar cada una

    Aprende cuándo usar interfaces y cuándo usar clases abstractas en PHP. Con ejemplos reales de pagos, reportes, usuarios y pedidos verás la diferencia práctica entre implements y extends, y el error más común al elegir mal.

  • Generales 0

    thiserror y anyhow en Rust: manejo de errores idiomático con las librerías más usadas

    Aprende a usar thiserror y anyhow en Rust para manejar errores sin código repetitivo. thiserror crea tipos de error tipados con derive macros; anyhow simplifica la propagación en aplicaciones con contexto. Con cuatro ejemplos reales y la regla de cuándo usar cada uno.

  • Python 0

    itertools en Python: chain, product, combinations, groupby e islice para iteraciones eficientes

    El módulo itertools de Python permite procesar secuencias de forma lazy, sin copiar datos en memoria. Aprende a combinar listas con chain, paginar con islice, generar combinaciones con product y permutations, y agrupar registros con groupby. Ejemplos reales con logs, catálogos y datos de ventas.

  • C 0

    Makefiles en 2026: escribir un Makefile moderno sin morir en el intento

    Aprende a escribir Makefiles modernos en C: variables, reglas de patrón, compilación incremental, dependencias automáticas y targets phony. Ejemplos listos para usar.