lección 1
¿Qué es programar? La metáfora de la receta de cocina
Programar es dar instrucciones precisas a una máquina que no entiende ambigüedades. Como escribir una receta para alguien que lo toma todo al pie de la letra.
⏱ 45 min
Bienvenido a la lección más importante de toda tu carrera como programador. No vamos a escribir código todavía. Primero necesitas entender algo fundamental: programar no es "hablar con un ordenador en un idioma raro". Programar es pensar con claridad y traducir ese pensamiento a instrucciones que una máquina pueda seguir sin ambigüedad. Si puedes explicar cómo hacer una tortilla de patatas paso a paso, ya tienes el 80% de lo que necesitas.
### La gran metáfora: la receta de cocina
Imagina que le escribes una receta a un robot de cocina. Este robot es extremadamente obediente pero absolutamente literal. Si escribes "pon un poco de sal", el robot se queda paralizado porque no sabe qué es "un poco". Si escribes "pon 5 gramos de sal", lo hace perfectamente. Si olvidas decirle que encienda el fuego antes de poner la sartén, pondrá la sartén en un fogón frío y se quedará esperando eternamente. Ese robot es tu ordenador. Y la receta que le escribes es un programa.
Esta metáfora no es un adorno didáctico — es literalmente cómo funciona la programación. Un programa es una secuencia de instrucciones ordenadas que se ejecutan una tras otra. Cada instrucción debe ser precisa, no ambigua y ejecutable. Si alguna instrucción falla o no tiene sentido, el programa se detiene y te dice exactamente dónde se rompió (eso son los errores, y aprenderás a amarlos en la Skill 3).
### Los tres superpoderes de un programa
Todo programa del mundo — desde el que controla los frenos de un avión hasta el que te recomienda vídeos en YouTube — se construye con solo tres ingredientes básicos. Tres. No importa si el programa tiene 10 líneas o 10 millones. Estos tres conceptos son los átomos de la programación:
- 01.SECUENCIA — hacer cosas en orden, una detrás de otra. Como los pasos de una receta.
- 02.DECISIÓN — elegir un camino u otro según una condición. "Si la cebolla está dorada, pasa al siguiente paso. Si no, espera más."
- 03.REPETICIÓN — hacer algo varias veces sin escribirlo varias veces. "Remueve cada 10 segundos HASTA que esté cuajado."
Eso es todo. En serio. Secuencia, decisión y repetición. Con esos tres bloques puedes construir cualquier programa que exista. En esta skill vamos a dominar los tres, empezando por la secuencia (que ya entiendes intuitivamente) y añadiendo decisiones (lección 3) y repeticiones (lección 4).
Consejo de senior: antes de escribir código, explica tu solución en voz alta como si fuera una receta. Si no puedes explicarla con palabras simples, no la entiendes lo suficiente para programarla. Este truco se llama "rubber duck debugging" — explicarle tu problema a un pato de goma. Funciona de verdad.
### ¿Qué es Python?
Antes de escribir una línea más, vale la pena saber qué tenemos entre manos. Python es un lenguaje de programación real: un conjunto de palabras y reglas que sirven para darle instrucciones a un ordenador. Lo creó Guido van Rossum en 1991, y aquí viene el dato que sorprende a todo el mundo: el nombre no viene de la serpiente, sino de "Monty Python", el grupo de humor británico que a Guido le encantaba. Por eso en la documentación de Python verás bromas y ejemplos con "spam" y "huevos" en vez de los típicos "foo" y "bar".
La razón por la que Python conquistó el mundo es una sola: fue diseñado para que el código se lea como se piensa. Antes de Python, los lenguajes populares (como C o Java) obligaban a rodear cada idea de símbolos, llaves y punto y coma que distraían del problema real. Guido partió de una pregunta distinta: "¿y si el código se pareciera lo máximo posible a describir la solución en un idioma humano?". El resultado es un lenguaje tan legible que hoy domina la ciencia de datos, la inteligencia artificial, la automatización y — lo que nos importa aquí — la ingeniería de datos.
Y por eso lo elegimos en esta plataforma: Python no es un lenguaje "de juguete" para practicar y luego tirar. Es EL lenguaje de la ingeniería de datos, el que usarás en casi todas las skills siguientes — para limpiar datos con Pandas, para procesar millones de registros con PySpark, para orquestar tuberías de datos. Aprender a pensar con Python ahora significa que, cuando lleguemos a las herramientas serias, la sintaxis ya te resultará familiar. En esta skill no vas a instalar nada: ejecutas Python aquí mismo, en el navegador. La instalación formal en tu ordenador llega en la Skill 3, cuando ya sepas pensar como programador.
### ¿Por qué Python y no "pseudocódigo"?
Mucha gente aprende lógica con "pseudocódigo": un lenguaje inventado, a medio camino entre el español y el código, que no se ejecuta en ningún sitio. Nosotros hacemos algo mejor: usamos Python. ¿Por qué? Porque Python se lee casi como pseudocódigo — es tan limpio que una línea como print("hola") o if edad > 18: se entiende sin saber programar — pero con una ventaja enorme: se ejecuta de verdad. Puedes escribir tu idea, pulsar un botón y ver si funciona al instante. El pseudocódigo nunca te dice si te equivocaste; Python sí.
Que quede claro: en esta skill el objetivo NO es memorizar la sintaxis de Python. El objetivo es aprender a PENSAR — a descomponer un problema en pasos, decisiones y repeticiones. Python es solo el cuaderno donde practicamos ese pensamiento. No te preocupes si al principio no recuerdas la sintaxis exacta; eso lo interiorizarás en la Skill 3, dedicada por completo a Python. Aquí céntrate en la lógica.
### Tu primer programa: ¡hola, mundo!
Hay una tradición sagrada en programación que se remonta a 1978, cuando Brian Kernighan escribió el libro "The C Programming Language". El primer programa que todo el mundo escribe es uno que muestra el mensaje "Hello, World!" en la pantalla. Es ridículamente simple, pero cumple una función vital: verificar que tu entorno funciona. Si puedes ejecutar un "hola mundo", significa que puedes escribir código, lanzarlo y ver el resultado. Eso no es poco.
Aquí tienes una ventaja: en esta plataforma puedes ejecutar Python directamente en el navegador, sin instalar nada. En los ejercicios de más abajo verás un editor donde escribes código y, al pulsar "ejecutar", ves el resultado al instante. Lo usaremos para dar nuestros primeros pasos.
Todavía no necesitas instalar Python en tu ordenador. En esta skill lo ejecutas todo aquí, en el navegador. En la Skill 3 lo instalarás en tu propia máquina y aprenderás a lanzarlo desde la terminal (python3 / python) y a guardar tus programas en archivos .py. Por ahora, céntrate en pensar como un programador.
Tu primera instrucción es la más famosa de toda la programación:
1print("¡Hola, mundo! Soy un programa.")
print() es la instrucción que muestra texto en pantalla. Las comillas delimitan el mensaje.
Escríbelo en el editor de los ejercicios y pulsa ejecutar. Verás el mensaje aparecer al instante. ¡Felicidades! Acabas de darle una instrucción a una máquina y la ha ejecutado. Esa sensación de "le dije que hiciera algo y lo hizo" es la esencia de la programación. Ahora vamos a hacer algo más interesante — un programa con varias instrucciones en secuencia.
### De una línea a un archivo: tu primer script
Hasta ahora has ejecutado una instrucción suelta. Pero los programas reales encadenan muchas instrucciones, una detrás de otra. El ordenador las ejecuta de arriba a abajo, en orden. Secuencia pura.
Escribe (o pega) este programa completo en el editor y ejecútalo. Fíjate en cómo cada línea es un paso:
1# Mi primera receta programada2# Cada línea es un paso que el ordenador ejecuta en orden34print("=== RECETA: Tostada perfecta ===")5print("")6print("Paso 1: Coger una rebanada de pan")7print("Paso 2: Introducir en la tostadora")8print("Paso 3: Seleccionar potencia 3")9print("Paso 4: Pulsar el botón de inicio")10print("Paso 5: Esperar 180 segundos")11print("Paso 6: Extraer la tostada")12print("Paso 7: Aplicar mantequilla mientras está caliente")13print("")14print("¡Tostada lista! Tiempo total: 4 minutos")
Un programa completo: una secuencia de pasos. Las líneas con # son comentarios — notas para humanos que el ordenador ignora.
Al ejecutarlo verás todos los mensajes aparecer en orden: el ordenador leyó el programa línea por línea y ejecutó cada print() en secuencia. Eso ES un programa. No necesita ser más complicado que esto para ser un programa de verdad.
En la Skill 3 aprenderás a guardar un programa como este en un archivo receta.py y a ejecutarlo desde tu terminal con python3 receta.py (Mac) o python receta.py (Windows). El resultado es idéntico al que ves aquí; la única diferencia es dónde vive el programa: ahora en el navegador, y más adelante en tu propio ordenador.
Error clásico del primer día: olvidar las comillas en print. Si escribes print(Hola) sin comillas, Python pensará que "Hola" es el nombre de una variable (que no existe) y te dará un error NameError. Las comillas le dicen "esto es texto literal, no el nombre de algo". En la Skill 3 aprenderás a leer y manejar estos errores como un profesional.
### El pensamiento secuencial: el orden importa
Aquí hay algo que parece obvio pero es profundamente importante: el ORDEN de las instrucciones importa. Si en tu receta pones "aplicar mantequilla" ANTES de "tostar el pan", obtienes mantequilla derretida dentro de la tostadora y probablemente un incendio. En programación es igual — cambiar el orden de las instrucciones cambia el resultado (o rompe el programa).
Esta idea se llama "flujo de ejecución" o "control flow" en inglés. Es como un río que fluye de arriba a abajo — cada línea se ejecuta una vez y luego el río sigue a la siguiente. Más adelante aprenderás a hacer que el río se bifurque (decisiones) o dé vueltas (bucles), pero por ahora fluye recto.
Lo que le diría a mi yo de hace 10 años: no subestimes la secuencia. El 90% de los bugs en programas reales no son errores de lógica complicada — son instrucciones en el orden equivocado. "Cerré la conexión a la base de datos antes de leer los datos" es un error que he visto cometer a ingenieros con 5 años de experiencia.
### Resumen: las reglas del juego
- Un programa es una secuencia de instrucciones precisas y no ambiguas.
- Las instrucciones se ejecutan de arriba a abajo, una por una.
- El orden importa — cambiarlo cambia el resultado.
- Los tres bloques fundamentales son: secuencia, decisión y repetición.
- print() muestra texto en pantalla — es tu herramienta para ver qué hace tu programa.
- Los comentarios (líneas con #) son notas para humanos que el ordenador ignora.
- Por ahora ejecutas tus programas en el editor del navegador. En la Skill 3 los guardarás en archivos .py y los lanzarás desde tu terminal (python3 nombre.py en Mac, python nombre.py en Windows).
## ejercicios
Tu rutina de la mañana como programa
Escribe un programa que imprima tu rutina matutina paso a paso (mínimo 8 pasos). Piensa: ¿qué pasaría si cambiaras el orden? ¿Tiene sentido ducharte DESPUÉS de vestirte?
Instrucciones para un cajero automático
Imagina que programas un cajero automático. Escribe las instrucciones que aparecen en pantalla cuando alguien quiere sacar 50€. Recuerda: el cajero es un robot — necesita instrucciones precisas.
¡El orden importa! Corrige este programa
Este programa tiene las instrucciones desordenadas. Reordénalas para que tengan sentido lógico. Piensa: ¿qué debe pasar primero?
Regístrate para guardar tu progreso.
## comentarios
Reporta erratas, ayuda a otros o comparte tu opinión. Sé constructivo.
Inicia sesión para comentar y responder.
cargando comentarios...