Artículos

  • PHP 0

    Números aleatorios en PHP: rand, mt_rand, random_int y random_bytes seguros

    Aprende a generar números aleatorios en PHP con rand(), mt_rand(), random_int() y random_bytes(). Descubre cuándo cada función es adecuada para criptografía y cuándo no, con ejemplos reales de contraseñas, tokens CSRF, sorteos y códigos de recuperación de cuenta.

  • Scala 0

    ZIO 2 en Scala: efectos funcionales, fibers y ZLayer para aplicaciones concurrentes

    ZIO 2 gestiona efectos, concurrencia y dependencias en Scala con el tipo ZIO[R, E, A]. Fibers para concurrencia, ZLayer para inyección de dependencias y ZStream para procesamiento de datos. Guía práctica con ejemplos.

  • BBDD 0

    CTEs en SQL: WITH, WITH RECURSIVE y cuándo usarlos en lugar de subconsultas

    Las CTEs (WITH) organizan queries complejas y permiten reutilizar subconsultas. WITH RECURSIVE recorre jerarquías y grafos. En PostgreSQL son optimization fences por defecto: se materializan salvo que uses NOT MATERIALIZED.

  • C++ 0

    Corrutinas en C++20: co_await, co_yield y generators en la práctica

    Las corrutinas de C++20 permiten escribir código asíncrono y generadores sin callbacks ni máquinas de estado manuales. Guía práctica de co_await, co_yield y std::generator de C++23.

  • Javascript 0

    Web Workers en JavaScript: postMessage, SharedArrayBuffer, Atomics y patrones de comunicación

    Los Web Workers permiten ejecutar código JavaScript en hilos separados, evitando que el hilo principal se bloquee. Aprende a usar postMessage, SharedArrayBuffer y Atomics para mover trabajo CPU-intensivo y coordinar threads con seguridad.

  • Generales 0

    Closures en Rust: Fn, FnMut, FnOnce, capturas y la diferencia con funciones

    Los closures en Rust son funciones anónimas que capturan variables del entorno. Aprende a usar Fn, FnMut y FnOnce con ejemplos reales: acumular estado, consumir valores y lanzar hilos con move. Cuándo elegir impl Fn frente a Box dyn Fn como parámetros de función.

  • Python 0

    dataclasses en Python: @dataclass, field(), frozen, slots y __post_init__

    El módulo dataclasses de Python 3.7+ genera __init__, __repr__ y __eq__ automáticamente. Aprende a usar field() para defaults avanzados, __post_init__ para validar datos, frozen=True para inmutabilidad, slots=True para eficiencia en memoria y order=True para comparaciones.

  • PHP 0

    Funciones matemáticas en PHP: round, ceil, floor, abs, min, max, pow y más

    Guía práctica de las funciones matemáticas más usadas en PHP: round con sus modos de redondeo, ceil, floor, abs, fmod, intdiv, min, max, pow, sqrt, log, hypot y las constantes M_PI, M_E y M_SQRT2, con ejemplos de precios, geometría y estadísticas.

  • Javascript 0

    Fetch avanzado en JavaScript: streaming, AbortController, Headers y estrategias de caché

    Domina la Fetch API más allá del uso básico: cancela peticiones con AbortController, añade timeout propio, lee el body como stream para barras de progreso reales, gestiona Headers de forma programática, sube ficheros con FormData y controla la caché del navegador con no-store, force-cache y...

  • Generales 0

    Iteradores avanzados en Rust: map, filter, fold, chain, zip, flat_map y take

    Aprende a usar los adaptadores del trait Iterator en Rust: map, filter, fold, chain, zip, flat_map, enumerate, take y collect. Guía con ejemplos reales de pedidos, rankings y colecciones, más los errores más comunes con el lazy evaluation.