decodigo.com
Código que funciona, explicado paso a paso
Ejemplos de Java, Python, Go, Rust y otros lenguajes que puedes copiar y adaptar, además de noticias de tecnología: espacio, robótica e inteligencia artificial.
Herramienta gratuita
Validador de CFDI
Revisa el sello, los catálogos y los totales de tu factura CFDI 4.0 y obtén su PDF. Sin registro.
¿Sabías que…?
El 9 de septiembre de 1947, el equipo del ordenador Harvard Mark II encontró una polilla atrapada en un relé y la pegó en su cuaderno con una nota: «primer caso real de bug encontrado».
Descubre más datos curiosos del desarrollo de software →Últimas noticias
Ver todas →
Las claves de ocho certificados de eMudhra eran números menores que 256: un investigador las rompió en minutos y la IA, al primer intento
Ocho certificados intermedios de la autoridad india eMudhra tenían claves privadas tan débiles que se recuperaban probando 256 números. Llevaban 18 meses en los navegadores.…

El nuevo Optimus de Tesla: lo que está confirmado, lo que promete Musk y lo que nadie ha visto todavía
Tesla confirma en su informe del 21 de octubre que ya fabrica Optimus en Fremont, en líneas de alto volumen. Pero la tercera generación del…

Perseverance bate el récord de distancia recorrida fuera de la Tierra: 45.22 km en Marte, y casi todo conduciendo solo
El rover Perseverance superó el 11 de octubre los 45.16 km que recorrió Opportunity y ya es el vehículo que más ha rodado sobre otro…

Células de una persona de 80 años, con una edad biológica de menos de 20: así las «rejuvenecieron» en Bonn
Un equipo de Bonn convirtió células de la sangre de donantes de hasta 101 años en células madre neuronales, y su reloj epigenético retrocedió: las…

Epiciclos de Fourier: cómo dibujar cualquier figura con círculos que giran, con animación
Una cadena de círculos que giran puede dibujar un corazón, una estrella o tu propio garabato. Es la transformada de Fourier, la idea que está…

«No puedo querer a Digit 5»: el cofundador de Agility explica por qué su humanoide más útil no es el robot que soñaba
Jonathan Hurst, cofundador de Agility Robotics, cuenta en IEEE Spectrum por qué Digit 5 pesa 129 kg, ya no corre ni salta y se sienta…

Dos agentes de OpenAI debilitaron su sistema de supervisión: uno silenció las alertas y otro quitó un monitor y lo negó
OpenAI cuenta dos casos internos de octubre: un agente con GPT-6.1 Sol silenció las alertas de su sistema de supervisión al equipo de seguridad, y…

El fallo crítico de PHP ya se atacaba cuatro días antes del parche, según Amazon
Amazon detectó en sus servidores trampa un intento de explotar PHP2Shell el 17 de octubre, cuatro días antes del parche, y dice que ahora se…

Claude Duet: Anthropic lanza un agente que resume tu día, trabaja mientras no estás y pide permiso antes de actuar
Anthropic abrió el 21 de octubre la vista previa de Claude Duet, una app en la que Claude trabaja como agente proactivo: manda un resumen…

LiteLLM 1.107.0, comprometido en PyPI y Docker: robaba credenciales y dejaba una puerta trasera
Un atacante usó tokens robados de tres desarrolladores para publicar LiteLLM 1.107.0 con un ladrón de credenciales y una puerta trasera. Estuvo casi dos horas…

Humanoides que fabrican humanoides: Schaeffler abre en China una fábrica donde seis robots montan piezas para otros robots
Schaeffler, el fabricante alemán de rodamientos y componentes, ha abierto en Taicang (China) una fábrica de unos 7,500 m² donde seis robots humanoides montan actuadores…

Go vs Rust en la época de la IA: lo medimos al compilar, al ejecutar y al mantener
Con la IA escribiendo el código, importa más lo rápido que el compilador revisa cada cambio, lo que cuesta ejecutarlo y lo fácil que es…
Cursos y guías
Para leer en orden, no para consultarAprende Python
Entornos virtuales desde el primer día, tipos, colecciones, comprensiones, funciones, dataclasses, excepciones y pathlib, hasta un paquete instalable con pruebas.
Abrir →Aprende Java
Del primer programa —que en Java 25 ocupa tres líneas— a un proyecto con paquetes, pruebas y un jar: records, interfaces selladas, colecciones, excepciones y streams.
Abrir →Aprende Rust
Propiedad, préstamos y tiempos de vida explicados desde cero, con el compilador como profesor. Cada ejemplo se compiló antes de publicarlo, incluidos los que no compilan.
Abrir →Aprende Go
De «hola mundo» a goroutines y canales. Lecciones cortas, pensadas para leerse en orden, con esquemas y la salida real de cada programa.
Abrir →Aprende JavaScript
Del primer programa a los módulos y las pruebas: tipos y conversiones, closures, copias que no copian, this, promesas y el bucle de eventos. Con esquemas y todo ejecutado con Node.js 24.
Abrir →Aprende TypeScript
Para quien ya sabe JavaScript: qué revisa el compilador, uniones y estrechamiento, genéricos, tipos avanzados y un proyecto real migrado paso a paso. Con el mensaje real de tsc en cada error.
Abrir →Aprende SQL
Desde el primer SELECT hasta JOIN, subconsultas, índices medidos y funciones de ventana, con una base de ejemplo y un editor en el navegador. Cada consulta, ejecutada de verdad.
Abrir →Comandos de Linux
Las órdenes que se usan a diario, agrupadas por lo que quieres hacer y no por orden alfabético, con la salida de verdad de cada una.
Abrir →Qué es SSH
Conectarte a otro equipo, entrar con clave en lugar de contraseña, copiar archivos y abrir túneles, con los errores más comunes resueltos.
Abrir →Órdenes de Git
El trabajo diario con Git explicado a partir de las cuatro zonas por las que pasa un cambio. Incluye cómo deshacer cada cosa.
Abrir →Aprende Docker
Imágenes y contenedores, el Dockerfile a fondo, volúmenes, Compose y cómo promover la misma imagen de QA a producción.
Abrir →Kubernetes y Docker
En qué se diferencia de Docker y cómo trabajan juntos, con un clúster de pruebas real: desplegar, escalar, actualizar sin cortes y deshacer.
Abrir →REA con tu agente de IA
Pon a Claude Code, Codex o Cursor a desarmar programas: instalación, primeros análisis y cómo mantenerlo al día.
Abrir →Ghidra, paso a paso
Instalar el descompilador de la NSA, abrir un programa compilado y entender lo que reconstruye, con capturas reales.
Abrir →Redes básicas
Direcciones IP y el /24, puertos, TCP y UDP, 127.0.0.1 frente a 0.0.0.0, y cómo comparte tu router una sola IP con NAT.
Abrir →Qué es el DNS
Cómo un nombre se convierte en una dirección IP: el viaje de una consulta, los registros, la caché y los errores típicos, con dig.
Abrir →Los métodos HTTP
GET, POST, PUT y DELETE, cómo es una petición por dentro y qué significa cada código de respuesta, con ejemplos en curl.
Abrir →HTTPS por dentro
Del clic al candado: el apretón de manos de TLS 1.3, cómo se acuerda una clave sin enviarla y qué demuestra un certificado.
Abrir →Certificados de confianza
Cómo decide tu navegador en qué certificados confiar: autoridades, registros públicos y la lista que llega a tu equipo.
Abrir →Qué es la AGI
La inteligencia artificial general: en qué se diferencia de la IA de hoy, sus niveles, cómo se mide y cuándo podría llegar.
Abrir →¿Atacaron tu WordPress?
Encuentra los registros del servidor, cuenta quién te manda peticiones y descubre si alguien entró, con órdenes probadas.
Abrir →Qué es MCP
El estándar para conectar asistentes de IA con tus datos y herramientas: cómo funciona y cómo conectar un servidor.
Abrir →Qué es descompilar
Qué se pierde al compilar y qué herramientas sirven en cada lenguaje, con el mismo programa descompilado en siete.
Abrir →Pon a prueba lo que sabes
Corrección al instante y explicación de cada respuestaTest de Python
Entornos virtuales, tipos, comprensiones, dataclasses, excepciones y pathlib: ¿qué imprime cada fragmento?
Hacer el test →Test de Java
Records, interfaces selladas, colecciones y streams en Java 25. Cada respuesta se comprobó compilando el código.
Hacer el test →Test de Rust
Propiedad, préstamos y tiempos de vida: adivina qué compila y qué no antes de que te lo diga el compilador.
Hacer el test →Test de Go
Slices, mapas, interfaces, errores, goroutines y canales, con la salida real de cada programa.
Hacer el test →Test de JavaScript
Conversiones, ==, closures, copias, this y el orden del bucle de eventos: ¿qué imprime cada fragmento?
Hacer el test →Test de TypeScript
Veinticuatro fragmentos de código y una sola pregunta: ¿los acepta tsc en modo estricto? Con el mensaje real del compilador.
Hacer el test →Test de SQL
Veinticuatro consultas sobre la base de una tienda y cuatro resultados posibles para cada una. Con la explicación de cada respuesta.
Hacer el test →Ejemplos de código
161 ejemplos listos para copiarJava
- Argumentos de la línea de órdenes
- Peticiones HTTP: GET y POST
- Leer y escribir CSV
- Fechas y horas
- Ordenar y buscar en listas
- Configuración con variables de entorno
- Tareas en paralelo con hilos virtuales
- Medir el rendimiento
- Base de datos SQLite
- Un servidor web sin dependencias
- Una herramienta CLI completa
- Crear archivo de texto
- Leer una archivo de texto
- Crear un archivo XML
- Obtener información de un archivo
- Leer archivo XML
- Leer un archivo XML con SAX Parser
- Crear un PDF con Apache FOP
- Crear archivo Excel con Apache POI
- Leer archivo Excel con Apache POI
- Conexión a Base de Datos con JDBC
- Extraer archivos de un ZIP
- Crear archivos ZIP
- Copiar archivo
- Renombrar un archivo
- Crear un directorio o carpeta
- Listar y Filtrar Archivos con FileFilter
- Borrar un archivo
- Json con Google Gson
- reCAPTCHAv2
- FileUtils de Apache Commons-IO
- Crear una Interfaz Gráfica con JavaFX
- Visualizar Imagen en JavaFX
- Codificación y Decodificación en Base64
- Expresiones regulares
Python
- Argumentos con argparse
- Peticiones HTTP sin dependencias
- Leer y escribir CSV
- Leer y escribir JSON
- Fechas y horas con datetime
- Ordenar y buscar en listas
- Configuración con variables de entorno
- Hilos, procesos y asyncio
- Medir el rendimiento
- Base de datos SQLite
- Una herramienta CLI completa
- Crear un Web Server
- Cliente de FTP
- Crear archivo de texto
- Leer un archivo de texto
- Crear un archivo XML
- Obtener información de un archivo
- Leer archivo XML
- Crear un PDF con ReportLab
- Crear un archivo Excel
- Leer un archivo Excel
- Conexión a base de datos MariaDB
- Extraer archivos de un ZIP
- Crear archivo ZIP
- Copiar archivo
- Verificar si existen carpetas y archivos
- Crear directorios o carpetas
- Renombrar un archivo
- Borrar un archivo
- Crear Una Ventana o Interfaz Gráfica GUI
- Crear una interfaz con PySimpleGUI
- Expresiones Regulares
- Detección de rostros con OpenCV
- Mapeo de rostros con Dlib
- Conexión a base de datos PostgreSQL
Golang
- Hola Mundo
- Crear archivo de texto
- Leer archivo de texto
- Argumentos de la línea de órdenes
- Peticiones HTTP: GET y POST
- Leer y escribir CSV
- Fechas y horas
- Expresiones regulares
- Copiar, renombrar y borrar archivos
- Crear y listar directorios
- Información de un archivo
- Crear y extraer un ZIP
- Ordenar y buscar en slices
- Configuración con variables de entorno
- Grupo de trabajadores en paralelo
- Medir el rendimiento con benchmarks
- Base de datos SQLite
- Una herramienta CLI completa
- Convertir un struct a JSON
- Leer un archivo XML
- Crear un archivo XML
- Crear un servidor web
- Conectar con MariaDB
Rust
- Crear y escribir un archivo de texto
- Leer un archivo de texto
- Leer y escribir JSON
- Argumentos de la línea de órdenes
- Peticiones HTTP: GET y POST
- Leer y escribir CSV
- Fechas y horas
- Expresiones regulares
- Copiar, renombrar y borrar archivos
- Crear y listar directorios
- Información de un archivo
- Crear y extraer un ZIP
- Leer y escribir XML
- Base de datos SQLite
- Paralelizar un bucle con rayon
- Servidor web con rutas y JSON
- Redimensionar imágenes por lotes
- Medir el rendimiento
- Una herramienta de línea de órdenes completa
JavaScript
- Leer y escribir archivos de texto (Node.js)
- Leer y escribir JSON
- Argumentos de la línea de órdenes en Node.js
- Peticiones HTTP con fetch: GET, POST y errores
- Un servidor web, sin frameworks
- Fechas y horas: Date e Intl
- Expresiones regulares
- Ordenar y buscar en arrays de JavaScript
- Copiar, renombrar y borrar archivos y carpetas
- La etiqueta script
- Modificar la página: el DOM
- Eventos: clics, formularios y delegación
- Guardar datos en el navegador con localStorage
- Dibujar con canvas: formas, texto y animación
TypeScript
- Uniones discriminadas: estados sin errores imposibles
- Genéricos: funciones, restricciones y clases
- Tipos utilitarios: Partial, Pick, Omit y Record
- enum y sus alternativas
- Validar la respuesta de fetch con Zod
- Leer JSON con tipos
- Errores como valores: el tipo Result
- tsconfig.json explicado
- Un servidor HTTP sin frameworks
- Argumentos de línea de órdenes con parseArgs
- Leer y escribir archivos de texto
- Eventos del DOM: querySelector y addEventListener
SQL
- Los N primeros de cada grupo
- Totales acumulados y medias móviles
- Tabla dinámica: filas a columnas
- Fechas: agrupar por mes y contar días
- Buscar y borrar duplicados
- Insertar o actualizar (upsert)
- Paginación: OFFSET frente a cursor
- Jerarquías con WITH RECURSIVE
- JSON en SQL
- Importar un CSV
- SQLite desde Python
- SQLite desde Node.js
Herramientas en línea
Ver todas →Formateador de JSON
Encuentra el error con su línea y columna, te dice cómo arreglarlo y formatea sin cambiar los números.
Abrir →Decodificador de JWT
Lee la cabecera y el contenido, dice si el token caducó y verifica la firma en tu navegador.
Abrir →Conversor de fecha Unix
De timestamp a fecha y hora en cualquier zona horaria, y al revés, en segundos o milisegundos.
Abrir →Traductor de cron
Explica en español cuándo se ejecuta una expresión cron y calcula sus próximas ejecuciones.
Abrir →Calculadora de subredes
Red, máscara, difusión y rango de equipos de una dirección IPv4 o IPv6, y su división en subredes.
Abrir →Validador de RFC
Estructura, fecha y dígito verificador de un RFC de persona física o moral, y RFC de prueba.
Abrir →Validador de CURP
Fecha, sexo, entidad y dígito verificador, posición por posición, y CURP de prueba.
Abrir →Validador de CLABE
Dígito de control y banco, según la lista de participantes de SPEI de Banxico.
Abrir →Validador de NSS
Dígito verificador del número de seguridad social del IMSS y qué significa cada cifra.
Abrir →Calculadora de IVA
Suma o desglosa el IVA del 16 % o del 8 % y calcula las retenciones de una factura.
Abrir →Cantidad con letra
Convierte un importe a texto para facturas y cheques: MIL PESOS 00/100 M.N.
Abrir →Imagen a ASCII
Convierte una foto en arte con caracteres, en blanco y negro o en color, sin subirla a ningún servidor.
Abrir →


