versión 2026.01 — recién compilado

$ aprende_a_programar --internet

Tutoriales, snippets y guías sobre programación, desarrollo web y las herramientas que hacen funcionar internet. Escrito en español, sin relleno y siempre desde la terminal.

~/codelatambash×
# Instala tu curiosidad
$ git clone https://codelatam.dev/tutoriales.git
Cloning into 'tutoriales'...
remote: Contando artículos: 214, listo.
remote: Comprimiendo objetos: 100% (214/214)
Receiving objects: 100% (214/214), 3.14 MiB

$ cd tutoriales && ls
javascript/  python/  css/  devops/
react/       node/    seguridad/  redes/

$ ./empezar.sh --nivel=principiante
✓ listo para hackear ✨
// artículos recientes

Lecturas de esta semana

JavaScript#001

Async/await explicado con ejemplos reales

Domina las promesas modernas en JavaScript y evita el infierno de los callbacks anidados con patrones claros.

~ 6 min de lecturaleer →
🌐 Desarrollo Web#002

Cómo funciona HTTP/3 y por qué importa

Un recorrido por el protocolo que reemplaza a HTTP/2, con QUIC, multiplexado real y menor latencia.

~ 6 min de lecturaleer →
🐍 Python#003

Automatiza tareas de escritorio con Python en 30 minutos

Renombra archivos, procesa CSVs y programa scripts. Un tutorial paso a paso pensado para principiantes.

~ 6 min de lecturaleer →
⚛️ React#004

useEffect: los 5 errores más comunes (y cómo evitarlos)

Dependencias, cierres obsoletos y renders infinitos. Guía práctica basada en casos reales de producción.

~ 6 min de lecturaleer →
🛠️ DevOps#005

Docker desde cero para desarrolladores web

Contenedores, imágenes y volúmenes explicados sin jerga. Ideal para dejar de decir «pero en mi máquina sí».

~ 6 min de lecturaleer →
🔒 Seguridad#006

Buenas prácticas de autenticación en APIs REST

JWT, refresh tokens, hashing de contraseñas y errores clásicos que abren la puerta a atacantes.

~ 6 min de lecturaleer →
🎨 CSS#007

Grid vs Flexbox: cuándo usar cada uno

Reglas simples para elegir el layout correcto y dejar de pelear con tu hoja de estilos.

~ 6 min de lecturaleer →
📦 Node.js#008

Publica tu primer paquete en npm paso a paso

Estructura, versionado semántico, README efectivo y automatización de publicación con GitHub Actions.

~ 6 min de lecturaleer →
🧭 Herramientas#009

Git avanzado: rebase interactivo sin miedo

Reescribe historial de forma segura, resuelve conflictos y mantén un log limpio en equipos grandes.

~ 6 min de lecturaleer →
// cat snippets/*

Snippets populares

Fragmentos de código listos para copiar, con licencia libre. Probados en proyectos reales de la comunidad.

debounce.tstypescript×
export function debounce<T extends (...a: any[]) => void>(
  fn: T, ms = 300
) {
  let t: ReturnType<typeof setTimeout>;
  return (...args: Parameters<T>) => {
    clearTimeout(t);
    t = setTimeout(() => fn(...args), ms);
  };
}
fetch-json.jsjavascript×
async function fetchJSON(url, options = {}) {
  const res = await fetch(url, {
    headers: { "Content-Type": "application/json" },
    ...options,
  });
  if (!res.ok) throw new Error(`HTTP ${res.status}`);
  return res.json();
}
slugify.pypython×
import re, unicodedata

def slugify(texto: str) -> str:
    texto = unicodedata.normalize("NFKD", texto)
    texto = texto.encode("ascii", "ignore").decode()
    texto = re.sub(r"[^\w\s-]", "", texto).strip().lower()
    return re.sub(r"[-\s]+", "-", texto)
// starter kit

Recursos para empezar

  • 01

    MDN Web Docs en español

    La referencia definitiva de HTML, CSS y JavaScript, con traducciones mantenidas por la comunidad.

  • 02

    freeCodeCamp Español

    Cursos interactivos gratuitos con certificaciones para aprender desarrollo web desde cero.

  • 03

    The Odin Project

    Currículum abierto y práctico para convertirte en desarrollador full-stack con proyectos reales.

  • 04

    Roadmap.sh

    Rutas visuales de aprendizaje para frontend, backend, DevOps y más, actualizadas cada año.

  • 05

    DevDocs.io

    Documentación offline unificada de decenas de lenguajes y frameworks en una sola interfaz.

$ subscribe --email

Un correo semanal, cero spam

Los mejores tutoriales, herramientas nuevas y noticias del ecosistema web, resumidos cada lunes. Puedes darte de baja cuando quieras.

>

# Al suscribirte aceptas nuestra Política de Privacidad.