Artículos

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

  • Javascript 0

    Programación a nivel de tipos en TypeScript: aritmética, parsing de strings y tipos recursivos avanzados

    Aprende a usar TypeScript como un lenguaje de tipos Turing-completo: aritmética con tuplas, parsing de strings con Template Literal Types, tipos recursivos como DeepPartial y DeepReadonly, y el truco de UnionToTuple con funciones sobrecargadas.

  • Generales 0

    WebSockets en Go: servidor y cliente con gorilla/websocket y nhooyr.io/websocket

    Aprende a montar servidores y clientes WebSocket en Go con gorilla/websocket y nhooyr.io/websocket. Incluye hub para broadcast a múltiples clientes, reconexión con backoff exponencial, keepalive con ping/pong y el antipatrón más frecuente en escrituras concurrentes.

  • Javascript 0

    Temporal API en JavaScript: fechas, horas y zonas horarias sin los problemas de Date

    La Temporal API de JavaScript llega al Stage 3 de TC39 para reemplazar el problemático objeto Date. Tipos inmutables, soporte real de zonas horarias, aritmética de fechas sin milisegundos y sin ambigüedades con el horario de verano. Instálala hoy con el polyfill oficial.

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

  • Generales 0

    Actores en Swift: actor, @MainActor, Sendable y seguridad ante data races

    Aprende a usar actores en Swift para evitar data races: declara actor y accede con await desde fuera, usa @MainActor para el hilo principal, Sendable para tipos seguros entre tareas y crea actores globales propios con GlobalActor.

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

  • PHP 0

    Fibers en PHP 8.1: concurrencia cooperativa sin async/await

    Las Fibers de PHP 8.1 permiten pausar y reanudar funciones para implementar concurrencia cooperativa sin hilos del sistema operativo. Aprende a usar Fiber::suspend() y resume() con ejemplos reales, y descubre cómo librerías como Revolt o Amp se apoyan en ellas.