¿Qué es la programación?

¿Qué es la programación?

Hook#

Imagina que llegas a casa de un amigo y le pides que prepare café, pero él nunca ha escuchado esa palabra. Tienes que explicarle cada paso: tomar la cafetera, agregar agua, colocar el filtro, medir el café, encender la hornilla. Sin instrucciones precisas, no pasa nada. Los programas funcionan exactamente igual: la computadora no "entiende" nada por sí sola, solo ejecuta las instrucciones que tú le das.


¿Qué es un programa?#

Un programa es una secuencia de instrucciones escritas en un lenguaje que la computadora puede interpretar y ejecutar. Nada más, nada menos. El procesador de tu computadora no tiene opiniones ni intuición: lee instrucciones una por una y las ejecuta en orden.

Piensa en un programa como una receta de cocina muy precisa. Una receta le dice al cocinero qué ingredientes usar, en qué orden mezclarlos y a qué temperatura cocinar. Un programa le dice a la computadora qué datos usar, cómo procesarlos y qué resultado producir.

Diagrama que muestra un programa como una receta de instrucciones secuenciales
Diagrama que muestra un programa como una receta de instrucciones secuenciales

¿Qué hace un programador?#

Un programador es la persona que diseña y escribe esas instrucciones. Pero la mayor parte del trabajo no está en escribir código: está en pensar. Antes de escribir una sola línea, el programador tiene que entender el problema, dividirlo en partes manejables y decidir la secuencia lógica de pasos para resolverlo.

Las habilidades clave de un programador son:

  • Descomponer problemas complejos en partes pequeñas
  • Pensar de forma lógica y ordenada
  • Anticipar qué puede salir mal
  • Comunicar ideas con precisión (primero al equipo, luego a la máquina)

La sintaxis de un lenguaje se aprende en semanas. La lógica para resolver problemas se desarrolla con práctica constante.


Lenguajes de programación#

La computadora en realidad solo entiende ceros y unos (código binario). Escribir en binario sería imposible para un ser humano, así que se inventaron los lenguajes de programación: idiomas intermedios que los humanos pueden escribir y que luego se traducen al lenguaje de la máquina.

Existen cientos de lenguajes. Algunos ejemplos reales:

LenguajeUso principal
PythonCiencia de datos, automatización, web
JavaScriptAplicaciones web, front-end
CSistemas operativos, hardware
SQLBases de datos

Cada lenguaje tiene sus reglas (sintaxis), pero todos comparten los mismos conceptos fundamentales: variables, condiciones, bucles y funciones. Si aprendes bien esos conceptos, cambiar de lenguaje es cuestión de aprender nueva sintaxis, no nueva lógica.

Aquí un ejemplo mínimo de cómo Python le da una instrucción a la máquina:

python
print("Hola, mundo")
Resultado esperado
Hola, mundo

Cómo la máquina ejecuta instrucciones#

Cuando ejecutas un programa, ocurre lo siguiente:

  1. El código fuente (lo que escribiste) se traduce a instrucciones que el procesador entiende.
  2. El procesador ejecuta cada instrucción en orden, millones de veces por segundo.
  3. Los resultados se almacenan en memoria o se muestran en pantalla.

Este proceso es determinista: dadas las mismas entradas, el programa siempre producirá las mismas salidas. Esa previsibilidad es lo que hace a los programas útiles y confiables.

Takeaway#

Un programa es una receta de instrucciones precisas. La computadora no adivina ni interpreta: ejecuta exactamente lo que le dices, en el orden en que lo dices. Tu trabajo como programador empieza por pensar con claridad antes de escribir una sola línea de código.


Gotcha#

El error más común de quien recién empieza: asumir que la computadora "entiende la intención" y rellena los pasos que faltan.

Piensa en la receta de café del hook. Un humano infiere solos pasos obvios, como "sacar la cafetera del armario antes de usarla". Una computadora no infiere nada. Ejecuta solo lo que está escrito, en el orden exacto en que está escrito.

Por eso el 80% de los principiantes escribe instrucciones ambiguas o incompletas, el programa falla o hace algo raro, y su primer instinto es pensar "la computadora no entendió lo que quise decir". La computadora entendió perfecto. El problema fue la instrucción.

La forma de prevenirlo: cada vez que escribas un paso, pregúntate "¿esto es tan preciso que un desconocido sin contexto podría seguirlo sin adivinar nada?". Si la respuesta es no, el paso está incompleto.


En producción#

En la industria del software, la mayoría de los bugs graves en producción no vienen de "la computadora se equivocó". Vienen de instrucciones incompletas: un caso que nadie consideró, una condición que se asumió pero nunca se escribió.

Por eso los lenguajes de programación modernos son estrictos en vez de "adivinar". Si escribes algo ambiguo o mal formado, Python prefiere fallar con un error explícito (SyntaxError, NameError) en vez de intentar interpretar qué quisiste decir. Esa filosofía de "sé explícito, nunca implícito" es uno de los principios centrales del lenguaje: está escrita literalmente en el Zen de Python (puedes verla ejecutando import this en cualquier consola de Python).


Práctica#

¿Qué es la programación?

0 de 5 verificados