Programar, sea cual sea el lenguaje utilizado (HTML, CSS, lenguaje C, PHP,
Java, JavaScript, Python, etc.), consiste en escribir en un lenguaje que
entienda la máquina, es decir, cómo nos comunicamos con un ordenador y los
algoritmos.
La RAE nos define la palabra programar de una forma asombrosamente
simple: «Elaborar programas para su empleo en computadoras». Y es que en
realidad así es: todos los dispositivos electrónicos, de mayor o menor tamaño,
tienen un sistema alojado en una especie de ordenador en el que se introduce
el software (programa) para que funcione. Y sabiendo también que hoy
muchísimos elementos de los que utilizamos tienen pantallas, reciben órdenes
o ejecutan tareas, fácilmente podemos deducir que hay un programa detrás
que hace que funciones y, por ende, un programador informático que lo ha
hecho posible.
Así, te habrás dado cuenta del potencial de la programación informática, que va
más allá de un móvil o un ordenador. Un robot aspirador, un coche, una
nevera, un smart watch… los productos informáticos dominan nuestra
existencia actual.
Por lo tanto, saber programar es ser capaz de crear aplicaciones web y
móviles, páginas web, interfaces-usuario, softwares de programación y
pilotar y programar robots informatizados.
Podríamos pensar que la historia de la programación es reciente, ya que
muchos de los usos en los que vemos reflejada la programación es en
tecnologías de imperante actualidad. Producto que hace tan solo unos años
que existen, tecnologías que ni siquiera conocemos en profundidad.
Sin embargo, las premisas de los lenguajes de programación se remontan
al siglo XIX, mucho antes de la invención del ordenador. La revolución
informática es una revolución que se lleva gestando desde hace décadas,
aunque es imposible saber si los pioneros de este cambio podían remotamente
augurar en lo que se ha convertido el mundo y la humanidad.¹
El primer modelo de programación del mundo se remonta al año 1842. En
1840, Ada Lovelace (1814-1852) consiguió definir el principio de iteraciones
sucesivas mediante la ejecución de una única operación. Se dice que creó la
palabra algoritmo en honor a Al Khawarizmi (780-850), para designar el
proceso lógico de ejecución de un programa.
library_books
Historia
Al Khawarizmi fue un matemático del califato abasí (Ouzbèke), conocido por
haber introducido el álgebra en Europa y por haber clasificado los algoritmos
conocidos en su época según su terminación.
Ada Lovelace (su verdadero nombre era Augusta Ada Byron) tradujo en 1842-
1843 la memoria de un matemático italiano sobre la máquina analítica del
inglés Charles Babbage (1791-1871). Los cálculos de la máquina estaban en
tarjetas perforadas en las que la información estaba cifrada. Ada elaboró un
método para calcular los números de Bernoulli en estas tarjetas perforadas, lo
que posteriormente sería considerado como el primer programa
informático del mundo.
assignment_turned_
in
Aprende más
Los números de Bernoulli son una sucesión de números racionales con
profundas conexiones en teoría de números.
Ada Lovelace² estuvo en el origen de las máquinas de cálculo, que se
componían de los siguientes elementos:
Un dispositivo que permite cifrar datos digitales (tarjetas perforadas,
ruedas dentadas),
Una memoria para guardar los valores numéricos,
Una unidad de control gracias a la cual el usuario le indica a la máquina
lo que tiene que hacer,
Un «motor» encargado de hacer los cálculos,
Un dispositivo que permite saber los resultados.
Con los elementos que acabamos de enumerar podemos visualizar una
especie de ordenador tal y como lo concebimos hoy en día.
Los primeros ordenadores eléctricos aparecieron cien años más tarde, a
principios de la década de 1940. No es que hubiese cien años de parón en
desarrollo informático, sino que los científicos e investigadores hacían prueba y
error hasta que algo significante pudo sacarse a la luz.
También cabe destacar que fueron épocas convulsas para la historia de la
humanidad, ya que se sucedieron la Primera Guerra Mundial (1914-1918) y la
Segunda Guerra Mundial (1939-1945). No obstante, analizaremos como la
guerra y los conflictos, paradójicamente, son en ocasiones promotores de los
avances tecnológicos y del fuerte desarrollo de ciertos productos informáticos.
Volviendo al transcurso de la historia, las primeras máquinas informáticas
tenían poca memoria y no eran rápidas ejecutando tareas, por lo que aún había
que hacer cálculos largos y engorrosos. Se puede afirmar que los informáticos
tenían la idea en la cabeza pero no sabían cómo convertirla en realidad.
Así, los científicos tenían que escribir los programas y el lenguaje-
máquina a mano. Esto suponía un adelanto pero seguía siendo muy trabajoso.
El objetivo último es que las máquinas sean suficientemente inteligentes cómo
para entendernos y sepan ejecutar las tareas que desea el humano. Adelanto
un poco el final, esto es lo que pretende conseguir la inteligencia artificial.
Estamos creando máquinas tan inteligentes que entienden lo que queremos, lo
que les pedimos e incluso las hay que son capaces de predecir nuestras
necesidades y ofrecernos productos o servicios incluso antes de que nosotros
los demandemos o ni siquiera hayamos sentido la necesidad. («No sabía que
lo necesitaba hasta que lo descubrí».)
¿Consigues entender algo?
Entre 1943 y 1945, el alemán Konrad Zuse (1910-1995) creó el lenguaje
Plankalkül: un prototipo del primer lenguaje de alto nivel, pero que nunca fue
utilizado. Las características principales de este primer lenguaje de
programación eran las siguientes:
Operaciones lógicas o matemáticas que se pueden aplicar solo a las
variables del mismo tipo,
Estructuras condicionales,
Estructuras de iteración,
Variables que se declaran en el momento de su uso,
Uso de tres variables específicas: "V" (paso de parámetros), "Z"
(almacenamiento de valores intermedios) y "R" (mostrar resultados).
Este lenguaje era demasiado complejo para la época, y su dificultad para
interpretarlo, entre otros detalles, lo llevó al fracaso.
La programación en la era de los primeros
ordenadores
Como comentábamos, las guerras aceleran los inventos. Por eso hubo que
esperar hasta la Segunda Guerra Mundial para que se inventase el primer
ordenador de todos los tiempos: el ENIAC (Electronic Numerical Integrator And
Computer). Este ordenador eléctrico estaba programado, en teoría, para
resolver todos los problemas de cálculo. Este ordenador fue creado por John
William Mauchly y John Presper Eckert, ambos estadounidenses.
library_books
Historia
El proyecto ENIAC estuvo directamente relacionado con el Colossus. El
proyecto Colossus se utilizó para descifrar el código de comunicación alemán
durante la Segunda Guerra Mundial.
Para que te hagas una idea dimensional de lo que era aquel ordenador, te
daremos algunas de sus características físicas más relevantes:
Ocupaba una superficie de 72 metros cuadrados, una habitación de 6
metros x 12 metros,
Pesaba 27 toneladas,
Tenía 7 200 de diodos de cristal,
1 500 relés,
70 000 resistencias,
10 000 condensadores.
Además, se tardó cerca de dos años y medio en construir. Sabiendo esto, es
asombroso cómo ha avanzado este sector en unos años.
Iníciate en informática con nuestras clases de programación para
principiantes.
Ordenadores de finales del siglo XX: lejos que los PC y Mac de
hoy
ENIAC, el primer ordenador del mundo.
En la década de 1950 será cuando las técnicas de programación informática
se desarrollen en gran medida. Es de nuevo una mujer quien desarrolla el
primer compilador, llamado A0. Esta mujer es la americana Grace Murray
Hopper (1906-1992) que trabajó en la marina americana a petición de este
organismo. Su invención permitía generar un programa binario a partir de un
código fuente.
El primer lenguaje de programación funcional
El lenguaje Fortran (Formula Translator) es la gran creación del ingeniero de
IBM John Backus. Ingenió el primer lenguaje de programación de alto nivel y
funcional. Fue utilizado para el cálculo científico. Entre los lenguajes
informáticos desarrollados en los años 1950 podemos destacar el LISP, para la
gestión de listas, y el COBOL, inventado para programar una aplicación de
gestión.
Otro hito en la historia de la programación es la invención del lenguaje
ALGOL (Algorithmic Oriented Language), el primer lenguaje que permitió
describir los problemas de cálculo de forma algorítmica.
El COBOL es el lenguaje más utilizado en el mundo desde hace 20 años y que
tiene el mayor número de líneas de código de programación del mundo. En la
década de 1960 se perfeccionará la tecnología existente y la puesta a punto de
los lenguajes y de la lógica informática.
Fortran y COBOL serán los acompañantes del progreso de la informática,
sobre todo en lo referido al desarrollo de ordenadores transistorizados.
¿Y si pruebas nuestras clases de programación? ¡Descúbrelas en Superprof!
Los/las mejores profesores/as de Programación que están disponibles
4,9 (22 opiniones)
Pedro
12€
/h
¡1 clase gratis!
a
4,9 (27 opiniones)
Adrian
20€
/h
¡1 clase gratis!
a
4,9 (20 opiniones)
Pablo
25€
/h
¡1 clase gratis!
a
5 (21 opiniones)
Daniel
35€
/h
¡1 clase gratis!
a
5 (46 opiniones)
José ignacio
25€
/h
¡1 clase gratis!
a
4,9 (13 opiniones)
Alberto
35€
/h
¡1 clase gratis!
a
4,9 (13 opiniones)
Carlos
30€
/h
¡1 clase gratis!
a
5 (19 opiniones)
Alfredo
20€
/h
¡1 clase gratis!
a
4,9 (22 opiniones)
Pedro
12€
/h
¡1 clase gratis!
a
4,9 (27 opiniones)
Adrian
20€
/h
¡1 clase gratis!
a
4,9 (20 opiniones)
Pablo
25€
/h
¡1 clase gratis!
a
5 (21 opiniones)
Daniel
35€
/h
¡1 clase gratis!
a
5 (46 opiniones)
José ignacio
25€
/h
¡1 clase gratis!
a
4,9 (13 opiniones)
Alberto
35€
/h
¡1 clase gratis!
a
4,9 (13 opiniones)
Carlos
30€
/h
¡1 clase gratis!
a
5 (19 opiniones)
Alfredo
20€
/h
¡1 clase gratis!
a
Vamos
Desde 1960 hasta 1980: la «adolescencia» de la
programación
Este período coincide con la Guerra Fría y con los Años Dorados (o Edad de
Oro del capitalismo) en el que hubo un auge en la investigación, lo que
favoreció el desarrollo de la programación. Los científicos de la época
entendieron que los lenguajes de programación serían el futuro de la
informática y la tecnología, por lo que comenzaron a desarrollar lenguajes para
conseguir el que fuese el más funcional y universal posible. Por eso también
hay un montón de lenguajes de programación: una historia de egos y
geopolítica.
El primer lenguaje de programación orientado a objetos y de simulación por
eventos discretos fue el Simula 67. Fue creado por los noruegos Ole Johan
Dahl y Kristen Nygaard y lanzado en mayo de 1967.
Aunque considerablemente funcional, no tuvo tanto éxito como cabría esperar.
El lenguaje orientado a objetos que más proyección tuvo, y es que
seguramente te sonará porque se sigue utilizando hoy en día, es el lenguaje
de programación C. Fue desarrollado por los estadounidenses Ken Thomson
y Dennis Ritchie.
El lenguaje C vio la luz entre 1969 y 1973. Era un lenguaje de nivel bajo
inventado para reescribir UNIX. Actualmente, 50 años más tarde, es uno de los
lenguajes más utilizados por los desarrolladores y programadores.
Otro lenguaje que también tuvo bastante éxito fue el lenguaje Pascal, que se
desarrolló en 1970 como descendiente de ALGOL. Sirvió para desarrollar el
sistema operativo de los ordenadores Apollo y Macintosh, así como la primera
versión del Adobe Photoshop. A la vez se presenta el SQL (Structured Query
Language) que se creó en 1974 desarrollado por IBM.
¿Recuerdas estos ordenadores o eres joven? Modelo Commodore Amiga 500.
Posteriormente, en 1983 aparece el lenguaje C++. Este lenguaje compilado
fue escrito por el danés Bjarne Stroustrup (1950).
Luego llega el Objective-C, inventado por Brad Cox. ¿Te suena? Es el primer
lenguaje de programación orientado a objetos reflexión y fue utilizado por
NeXTSTEP de la empresa NeXT (fundada por Steve Jobs) y después para los
OS de Apple.
Como ves, no durante esos años no dejaron de crearse más y más códigos. En
la década de 1980 la utilización de los códigos informáticos se expandieron y
se crearon nuevos lenguajes como Dbase, C++, Eiffel, Mathematica, Perl,
Tcl/Tk, etc.
Los lenguajes de programación y los servidores
web
Aunque el lenguaje de programación se desarrollaba a buen ritmo, era tan solo
la fase embrionaria. La década de 1990 marca el inicio de la programación
web con los primeros balbuceos de Internet.
JavaScript: el lenguaje más utilizado en el mundo
El surgimiento de los lenguajes informáticos trajo consigo las dudas sobre la
utilidad que el desarrollo de estas máquinas tendría para la sociedad.
Numerosos pensadores de la época se mostrarán escépticos con este tema.
Es por ejemplo el caso del economista neoclásico Robert Solow, con su
paradójico epónimo de 1987, según el cual «vemos ordenadores por todos
lados, excepto en las estadísticas de productividad».
Sin duda fue el conservadurismo y el juicio prematuro con visión cortoplacista
lo que les impidió ver el potencial revolucionario del algoritmo y de la
programación; que sería revelado en la década de 1990. Aunque cabe admitir
que era imposible predecir para qué servirían todos estos lenguajes o la propia
informática.
No obstante, se puede uno imaginar que en las cabezas de los programadores,
científicos e investigadores sí había ya grandes ideas gestándose, aunque no
supieran ni remotamente cómo las llevarían a cabo.
Y es que no dejamos de repetir que la revolución tecnológica ha sido una
auténtica locura y el ser humano está creando a través de la tecnología
cosas extraordinarias que la propia mente del ser humano no es capaz de
asimilar.
Los años 90 y 2000 marcan el inicio de los servidores web y la era de
Internet. Con la web aparecen los lenguajes de scripts, los lenguajes
interpretados, herederos de los lenguajes de control integrados en los sistemas
operativos. Estas innovaciones, integradas en las páginas web y programadas
de forma sencilla para facilitar la sucesión de tareas simples, funcionan en
programas pequeños y sencillos. Algunos de estos lenguajes son hoy en día
esenciales; puedes aprender esto y mucho más gracias a nuestras clases de
programacion.
Si estás comenzando en el mundo de la programación, debes aprender cuáles
son los lenguajes de programación más usados³:
Python, creado en 1991;
PHP, JavaScript y Java, creados en 1995;
Ruby, inventado en 1993;
C#, escrito en 2000.
El lenguaje Python
Este lenguaje fue creado por el neerlandés Guido van Rossum (1957). Python
fue escrito con la finalidad de crear un lenguaje orientado a objetos y
multiplataforma para optimizar la productividad de los programadores con
un lenguaje de alto nivel y una sintaxis simple.
Treinta años más tarde muchos estudiantes siguen aprendiendo a programar
con Python, sobre todo para la investigación científica. Python permite iniciarse
en conceptos simples y en las bases de programación. Como anécdota,
comentar que Guido van Rossum bautizó con este nombre a este lenguaje
porque era fan de la serie Monty Python.
Conoce en profundidad la historia del lenguaje de programación Python en
este otro artículo.
El lenguaje PHP
Otro esencial si quieres ser programador. El lenguaje PHP (Hypertext
Preprocessor) fue escrito en 1994 por el danés Rasmus Lerdorf (1968) cuando
tenía 26 años para desarrollar su propia página web. Algunos años más
tarde, la mayoría de las páginas web serían programadas en PHP, entre
las que podemos nombrar Wikipedia, Facebook y YouTube.
El aprendizaje de programación incluye también la memorización de las líneas
de código informático en JavaScript. Este lenguaje permite desarrollar páginas
web dinámicas para mejorar la experiencia de usuario.
adb
¡Cuidado!
No confundas Java con JavaScript, no son el mismo lenguaje.
Las técnicas de programación del siglo XXI
La mayoría de los lenguajes que es necesario aprender para poder programar
hoy en día fueron inventados a mediados de los años 90. No obstante, todo el
desarrollo web que hay actualmente y la revolución digital que estamos
viviendo no nos deja ver aún los efectos (positivos o negativos) que esto
tendrá. ¿En un futuro habrá que ser desarrollador para no ser esclavos de la
inteligencia artificial?
La informática y lo digital han invadido todos los sectores de producción de
bienes y servicios. Hoy en día, todo lo que consumimos contiene un algoritmo.
Tal desarrollo ha hecho suscitar dudas sobre las condiciones de vida en la
Tierra en un futuro, sobre el clima y la biodiversidad y sobre la estabilidad de
las instituciones públicas. Bienes que parece que estamos dispuestos a
destrozar en nombre del progreso y del crecimiento económico: 4G, 5G,
robótica, domótica, economía de la vigilancia y del control digital, protección de
datos, supremacía, derechos y libertades amenazadas, etc.
Tal desarrollo ha hecho suscitar dudas sobre las condiciones de vida en la
Tierra en un futuro, sobre el clima y la biodiversidad y sobre la estabilidad de
las instituciones públicas. Bienes que parece que estamos dispuestos a
destrozar en nombre del progreso y del crecimiento económico: 4G, 5G,
robótica, domótica, economía de la vigilancia y del control digital, protección de
datos, supremacía, derechos y libertades amenazadas, etc.
Paradójicamente, el Internet y la informática fueron creados para que la
información fuese de libre acceso para todos, sin importar la clase social. Y las
mujeres, bajo el yugo de la dominación masculina, han jugado siempre un
papel crucial en este ámbito.
Impacto de la revolución tecnológica
Aunque todavía es pronto para hacer un diagnóstico exacto, estando en 2022
se pueden observar algunos de los efectos de esta revolución tecnológica. Una
veintena de años después de que la informática y los lenguajes de
programación sean lo imperante en el mundo y con ya generaciones
nativas en este nuevo orden mundial, se pueden empezar a hacer estudios
comparativos en relación con generaciones y formas de vida anteriores.
La consecuencia número uno de la aparición de Internet y de las nuevas
tecnologías ha sido la globalización. Un mundo inter e hiperconectado que
apenas deja espacio a lo desconocido.
La principal competencia en materia de desarrollo, si un país quiere seguir el
ritmo mundial, es en tecnologías de la información y la comunicación (TIC).
Gracias a ser visionarios, ciudades como Shanghái, Pekín y Tokio se han
convertido en los centros tecnológicos del mundo.
Como es lógico, al inventar cosas que antes no existían ni imaginábamos,
también han aparecido amenazas nunca concebidas. Las más preocupantes
son, por un lado, los límites de la inteligencia artificial: ¿pueden las máquinas
volverse en nuestra contra?, ¿podemos perder el control de los robots?
Muchos cineastas y escritores ya han fantaseado con ello... Por otro lado, está
el tema de la ciberguerra, una guerra silenciosa, pero que puede paralizar el
mundo. ¿Podemos volver a vivir sin ordenadores?, ¿está la sociedad actual
preparada para seguir su existencia sin Internet?
Sin duda unos temas altamente interesantes sobre los que podríamos
desarrollar numerosos artículos, que dejaremos para otra ocasión.