Artículos

  • Javascript 0

    Generators e iterators en JavaScript: function*, Symbol.iterator y async generators

    Aprende a crear generadores en JavaScript con function* y yield, implementar el protocolo iterable con Symbol.iterator y construir secuencias infinitas sin ocupar memoria. Incluye async generators con for await...of para paginación lazy y pipelines de transformación de datos.

  • Generales 0

    Box en Rust: asignación en heap, tipos recursivos y trait objects

    Box en Rust asigna valores en el heap y resuelve tres problemas concretos: tipos recursivos como árboles binarios, transferencia de ownership sin copiar datos grandes, y polimorfismo dinámico con trait objects. Guía con cuatro ejemplos reales y el error de compilación típico.

  • Python 0

    Módulos en Python: import, from/import, __name__ y entornos virtuales con venv

    Aprende a usar import, from X import Y y alias en Python. Entiende para qué sirve __name__ == '__main__', cómo crear módulos y paquetes propios, y cómo gestionar dependencias de proyectos con venv, pip y requirements.txt.

  • PHP 0

    preg_match() y preg_match_all() en PHP: buscar patrones con expresiones regulares

    Aprende a usar preg_match() y preg_match_all() en PHP: sintaxis básica, grupos de captura numerados y nombrados, modificadores i, m, s y u, los flags PREG_SET_ORDER y PREG_PATTERN_ORDER, y cómo evitar el error típico de confundir false con 0.

  • Javascript 0

    Async/await avanzado en JavaScript: patrones paralelo/secuencial, error handling y cancelación

    Domina async/await más allá del caso básico: peticiones en paralelo con Promise.all, manejo de errores con try/catch o un helper seguro, iteración de flujos con for await...of y cancelación de operaciones con AbortController. Con ejemplos reales y antipatrones comunes.

  • Generales 0

    Result vs excepciones: cómo Rust cambia la forma de pensar los errores

    Las excepciones son control flow implícito: ocultan qué puede fallar. Rust usa Result para hacer los errores explícitos en la firma de cada función. Aprende a usar el operador ?, cuándo recurrir a panic! y qué diferencia hay en rendimiento frente a Java, Python y JavaScript.

  • Generales 0

    Nerves en 2026: Elixir para sistemas embebidos e IoT con el BEAM en hardware real

    Nerves es la plataforma para correr Elixir y la BEAM en hardware embebido: Raspberry Pi, BeagleBone y otros. Buildroot, actualizaciones OTA atómicas y el modelo de supervisión OTP en dispositivos IoT.

  • Python 0

    any() y all() en Python: evaluar condiciones sobre iterables de forma eficiente

    any() devuelve True si al menos un elemento de un iterable es truthy; all() lo hace solo si todos lo son. Ambas usan short-circuit evaluation y ganan en eficiencia con generadores. Aprende a usarlas en validaciones de formularios, comprobación de permisos y procesado de datos.

  • Generales 0

    Bun y Zig: cómo el runtime de JavaScript más rápido usa Zig en su núcleo

    Bun es el runtime de JavaScript más rápido del mercado y está escrito en Zig. Descubre por qué Jarred Sumner eligió Zig, cómo funciona la integración con JavaScriptCore y qué ventajas aporta el control de memoria de Zig.

  • PHP 0

    Rutas en PHP: dirname(), basename(), pathinfo() y realpath()

    dirname(), basename(), pathinfo() y realpath() son las cuatro funciones clave para manejar rutas en PHP. Aprende a extraer el directorio, el nombre del fichero y la extensión, a resolver rutas absolutas y a protegerte contra ataques de path traversal con ejemplos reales.