Artículos

  • 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.

  • Scala 0

    Scala.js y Scala Native: Scala fuera de la JVM en 2026

    Scala.js compila a JavaScript para el navegador o Node.js. Scala Native usa LLVM para ejecutables sin JVM. Facades tipadas, módulos multiplataforma, mejoras de Scala Native 0.5 y casos de uso reales.

  • BBDD 0

    Particionamiento de tablas en PostgreSQL: cuándo y cómo hacerlo correctamente

    PostgreSQL soporta particionamiento por RANGE, LIST y HASH desde la versión 10. Partition pruning elimina automáticamente las particiones irrelevantes. Permite eliminar datos históricos con DROP PARTITION en lugar de DELETE masivos lentos.

  • C++ 0

    Sanitizers en C++: AddressSanitizer, UBSan y ThreadSanitizer para cazar bugs

    AddressSanitizer detecta accesos inválidos a memoria, UBSan atrapa comportamiento indefinido y ThreadSanitizer encuentra data races. Guía práctica con flags, ejemplos de output y uso con CMake.

  • Generales 0

    Módulos y visibilidad en Rust: mod, pub, use, paths y cómo organizar el código

    Aprende a organizar el código en Rust con el sistema de módulos: módulos inline y en ficheros, visibilidad con pub, pub(crate) y pub(super), paths absolutos y relativos con crate:: y super::, re-exportaciones con pub use y la separación entre lib.rs y main.rs con ejemplos reales.

  • Python 0

    Poetry en Python: gestión de dependencias, pyproject.toml y entornos virtuales

    Aprende a gestionar proyectos Python con Poetry: declara dependencias en pyproject.toml, fija versiones exactas con poetry.lock, ejecuta scripts con poetry run y publica en PyPI con un solo comando. Alternativa moderna a pip, venv y setup.py.

  • PHP 0

    Named arguments y union types en PHP 8: código más expresivo y tipado

    Named arguments y union types son dos de las mejoras más prácticas de PHP 8. Con los primeros puedes llamar a funciones por el nombre del parámetro en vez de su posición, y con los segundos declaras que un valor puede ser de varios tipos con tipado real verificado en ejecución.

  • Generales 0

    Cargo workspaces y features en Rust: monorepos y compilación condicional

    Aprende a organizar proyectos Rust grandes con Cargo workspaces: un Cargo.toml raíz que unifica dependencias de varios crates. Y a usar features para compilar código condicionalmente y gestionar dependencias opcionales como serde sin coste para quien no las necesita.

  • Python 0

    SQLAlchemy 2.0 en Python: engine, Session, modelos ORM y queries con select()

    SQLAlchemy 2.0 es el ORM más completo para Python. Aprende a conectar con create_engine, definir modelos con DeclarativeBase y Mapped, hacer CRUD con Session, cargar relaciones con selectinload y usar AsyncSession para código asíncrono con FastAPI.

  • C 0

    Debugging en C: gdb, AddressSanitizer y técnicas para encontrar bugs difíciles

    Guía práctica de debugging en C: comandos esenciales de gdb, core dumps, watchpoints, AddressSanitizer para memoria y UBSan para comportamiento indefinido con ejemplos reales.