-
En la Antigua Babilonia ya se usaban “recetas” numéricas para calcular raíces cuadradas y resolver problemas de áreas e volúmenes.
-
El primer algoritmo conocido fue creado por Euclides hace más de 2000 años para encontrar el máximo común divisor de dos números
-
Se atribuye al matemático persa Muhammad ibn Musa al-Juarismi en su obra Al-Kitāb al-mukhtaṣar fī ḥisāb al-jabr wa-l-muqābala, describió procedimientos paso a paso para resolver ecuaciones lineales y cuadráticas Introduce el concepto de procedimiento matemático paso a paso.
-
Blaise Pascal crea la Pascalina calculadora capaz de sumar y restar automáticamente
Primer intento de automatizar cálculos matemáticos. -
Gottfried Wilhelm Leibniz perfeccionó la máquina de Pascal creando una calculadora capaz de sumar, restar, multiplicar, dividir e incluso calcular raíces cuadradas. Además, Leibniz planteó la idea de un lenguaje universal simbólico, anticipando el álgebra booleana y la lógica que hoy se usan en programación
-
Joseph Marie Jacquard inventó un telar controlado por tarjetas perforadas, donde cada perforación representaba una instrucción. Esta innovación fue el antecedente directo de la programación, ya que introdujo la idea de dar órdenes a una máquina mediante un código.
-
Charles Babbage diseñó la Máquina Analítica, considerada la primera computadora teórica de propósito general. Su diseño incluía unidad de control, memoria y procesador, conceptos equivalentes a las computadoras modernas. Aunque nunca se construyó completamente, definió la base de la informática.
-
Ada Lovelace trabajó con Babbage y escribió el primer algoritmo destinado a una máquina: el cálculo de los números de Bernoulli en la Máquina Analítica reconoció que las computadoras podían ir más allá de los cálculos matemáticos, anticipando el concepto de programación moderna
-
Alan Turing formuló el concepto de la Máquina de Turing, un modelo matemático que explica cómo los algoritmos pueden procesar información. Este trabajo fundó la ciencia de la computación teórica y demostró que cualquier problema resoluble puede describirse mediante un algoritmo.
-
Konrad Zuse desarrolló en Alemania la Z3, considerada la primera computadora programable de la historia. Usaba relés electromecánicos y podía ejecutar programas almacenados en cinta perforada, representando un gran salto hacia la programación real en máquinas.
-
Durante la Segunda Guerra Mundial, en el Reino Unido se creó el Colossus, una computadora electrónica diseñada para romper los códigos alemanes generados por la máquina Enigma. Fue una de las primeras computadoras electrónicas digitales y mostró la importancia de los algoritmos en la criptografía.
-
En EE. UU. se construyó el ENIAC, considerada la primera computadora electrónica de propósito general. Se utilizó para cálculos balísticos del ejército y ocupaba una sala completa. Se programaba manualmente mediante interruptores y cables, un proceso complejo pero fundamental para la historia.
-
IBM desarrolló Fortran (FORmula TRANslation), el primer lenguaje de programación de alto nivel, diseñado para aplicaciones científicas e ingenierías. Permitió escribir programas de manera más comprensible que en lenguaje máquina, marcando el inicio de la era del software moderno.
-
John McCarthy creó LISP (LISt Processing), un lenguaje orientado a la manipulación de símbolos. Fue pionero en aplicaciones de inteligencia artificial, como procesamiento de lenguaje y sistemas expertos, y se sigue utilizando en investigación avanzada.
-
Grace Hopper y un equipo internacional desarrollaron COBOL (Common Business Oriented Language). Fue pensado para aplicaciones administrativas y bancarias. Su sintaxis se parecía al inglés, facilitando la lectura y convirtiéndolo en uno de los lenguajes más usados en el mundo empresarial durante décadas.
-
Dennis Ritchie en los Laboratorios Bell creó el lenguaje C, caracterizado por su potencia y flexibilidad. Fue la base para el desarrollo del sistema operativo UNIX y posteriormente influyó en muchos lenguajes modernos como C++, Java y Python.
-
Bjarne Stroustrup desarrolló C++, que extendía el lenguaje C con el paradigma de programación orientada a objetos (POO). Esto permitió modelar programas con clases, herencia y encapsulación, facilitando el desarrollo de software complejo y de gran escala.
-
Netscape creó JavaScript, un lenguaje ligero para navegadores que permitió crear páginas web dinámicas e interactivas. Con el tiempo se expandió más allá del navegador y hoy es la base del desarrollo web moderno junto con HTML y CSS.
-
Sun Microsystems lanzó Java, con el lema “escribe una vez, corre en todas partes”. Gracias a la Máquina Virtual de Java (JVM), los programas podían ejecutarse en distintos sistemas operativos. Esto lo convirtió en uno de los lenguajes más populares en aplicaciones empresariales y móviles.
-
Python, creado en los 90 pero popularizado en los 2000s, se convirtió en uno de los lenguajes más usados gracias a su sintaxis simple y clara. Se emplea en ciencia de datos, inteligencia artificial, web y educación. En paralelo, otros lenguajes dinámicos como Ruby y PHP también ganaron popularidad.
-
La explosión de datos generó la necesidad de algoritmos de Big Data y machine learning. Herramientas como Hadoop, TensorFlow y PyTorch facilitaron el entrenamiento de redes neuronales, revolucionando campos como la visión por computadora, el reconocimiento de voz y la predicción de datos.
-
Hoy en día, la programación cuenta con apoyo de IA generativa (ejemplo: GitHub Copilot o ChatGPT, que ayudan a programar). También avanza la computación cuántica, con lenguajes como Q# y Qiskit. La tendencia es hacia la democratización de la programación con plataformas low-code y no-code.