Los Padres de la Computadora

Anuncio
Los Padres de la Computadora
Santiago Roig
“Venga Señor Watson, lo necesito...”
Con esta sencilla frase, dicha el 10 de marzo de 1876 en Boston,
Massachussetts a través de un aparato de su invención, Alexander
Graham Bell pasaba a la historia como el inventor del teléfono.
No todos los aparatos de los que hoy nos servimos en la vida cotidiana
tienen historias tan definidas. En el caso de la computadora la
situación es algo mas compleja, al punto que aún hoy se debate a
quién atribuirle al paternidad.
Aunque la historia de la humanidad nos habla de muchos inquietos
congéneres que postularon o crearon ayudas para la tarea del cálculo
o de otras tareas repetitivas (y generalmente aburridas), suele haber
consenso en que el primero que tuvo la imagen completa de lo que
hoy constituye una computadora fue el inglés Charles Babbage.
Este personaje nació en 1792, realizó sus estudios de matemáticas en
Cambridge, pero como muchos personajes de su época, era un
espíritu inquieto, interesado en muchos temas además de su profesión.
Así llegó a publicar textos filosóficos, tuvo algunas intervenciones en
política, aunque parece que no muy afortunadas y una pequeña guerra
sin cuartel con los músicos callejeros de Londres. Sobre esto hay
diversas historias bastante divertidas, ya que se narran episodios en
que bandas de organilleros tocan durante horas sin fin bajo sus
ventanas o músicos callejeros que desafinaban a propósito al percibir
la figura de Babbage aproximándose.
Se interesó, como muchos de sus contemporáneos, por la naciente
industrialización, lo que le llevó a aplicar sus conocimientos
matemáticos a problemas industriales y a inventar algunos artefactos
para la industria. A la vez, su interés por las cartas y datos
astronómicos lo inspiraron para crear una “máquina de diferencias”
que ayudara en esos cálculos, básicamente en la generación de tablas.
El siguiente paso lógico fue el diseño de una “máquina analítica” que
es el verdadero antecedente de la computadora moderna. Aunque
nunca la construyó, las partes que la componían prefiguran las de
nuestras actuales máquinas.
Cabe mencionar que una de las primeras en aceptar de forma
entusiasta la idea fue Ada Byron, Lady Lovelace, hija del poeta Lord
1/5
Byron. Lady Lovelace no solo ayudó a Babbage tanto como pudo, sino
que, habiendo estudiado ella misma matemáticas, contribuyó con
algunas ideas de su propia cosecha, que hoy se ven como una
anticipación de lo que sería un programa de cómputo, además de
inspiradas premoniciones de que la máquina analítica podría ser usada
para componer música compleja, desarrollar gráficas o realizar tareas
científicas o prácticas por igual. El lenguaje de programación Ada fue
bautizado así en su honor.
El siguiente pionero, Konrad Zuse, nació cerca de Berlin en Alemania
en 1910, casi 40 años después de la muerte de Babbage. Zuse estudió
Ingeniería Civil y trabajó en la industria aeronáutica por muchos años.
De hecho fueron estos problemas prácticos, relacionados con el cálculo
y análisis estadístico, los que lo llevaron a construir una primera
computadora, totalmente mecánica, en 1938, en la sala de la casa de
sus padres. Si hemos de creerle a Zuse, jamas había oído hablar de
Babbage cuando la creó.
A principios de los años noventa y por mera casualidad, tuve la suerte
de asistir a una plática de Konrad Zuse en Hannover. En ella comentó
que cuando la gente lo felicitaba por haber sido tan diligente (fleissig
en alemán) y haber inventado la computadora, él respondía que era
todo lo contrario, inventó la máquina por flojo, porque le aburría hacer
cuentas.
Tras el éxito inicial, Zuse continuó desarrollando sus ideas y
perfeccionando su invento en los modelos Z2, que incluía componentes
electromecánicos para el cálculo y la Z3 cuya memoria era
electromecánica también. Pero ya para entonces el mundo estaba
metido de lleno en la Segunda Guerra Mundial, y tanto los problemas
de abasto como los políticos hacían el camino lento y difícil. La
propuesta de construir una máquina basada en compuertas
electrónicas fue rechazada y el trabajo en el siguiente modelo de la
serie, la Z4 era continuamente interrumpido por los bombardeos y por
la necesidad de moverse a sitios mas seguros. Tras la guerra, en
1950, Zuse emigró a Suiza, donde siguió su trabajo. De hecho fundó
una compañía de computación que finalmente fue absorbida por
Siemens en 1967.
Es interesante hacer notar que las serie Z aunque la mas conocida, no
fue el único desarrollo de Zuse en el área, creó otras máquinas para
trabajo más específico, y diseñó una para problemas lógicos, no
aritméticos, de la que solo se hizo un prototipo. Muchas de las
máquinas de Zuse se destruyeron durante la guerra, algunas han sido
reconstruidas y pueden verse en museos.
2/5
Otra aportación importante de Konrad Zuse es el desarrollo del
Plankalkül en 1945, que fue el primer lenguaje algorítmico de
programación. Aunque en sí mismo no tuvo mucho uso, este lenguaje
sirvió de base al ALGOL, uno de los mas populares en su época.
Cruzando el Océano Atlántico, por la misma época nos encontramos
con inquietudes similares a las de Zuse en un físico norteamericano:
Howard H. Aiken, nacido en Hoboken, New Jersey el 9 de marzo de
1900. Aiken estudio en la Universidad de Wisconsin y obtuvo el
doctorado en física en Harvard en 1939. En el transcurso de su trabajo
encontró problemas que solo podían ser resueltos con arduos cálculos
numéricos, de manera que empezó a pensar en una máquina que lo
liberara del tedioso trabajo. Aiken logró interesar a la compañía IBM
en su diseño y en 1940 se inicio la construcción de la “Automatic
Sequence Controlled Calculator” o simplemente ASCC de IBM. Sin
embargo, en 1943 la máquina fue transferida a Harvard, donde se le
conoció como Mark I (después vendrían las Mark II, III y IV).
En su arquitectura, la Mark I parece mas cercana a la Máquina de
Diferencias de Babbage que a la Analítica, sin embargo ya presenta
elementos de una computadora moderna como es el hecho de poder
ser “programada” por medio de una cinta de papel perforado. En
cuanto a su tamaño y complejidad este aparato ya no era de los que
puede uno construir en la sala de su casa (o la de sus padres). Medía
2.5 metros de alto por 15 de largo, pesaba 5 toneladas y contenía
cerca de 750,000 componentes.
Sobre su inventor es mucho lo que se puede decir, pero tal vez la frase
que ha quedado mas marcada en la memoria colectiva fue su
apreciación, de 1947, de que con seis computadoras digitales se
podrían satisfacer todas las necesidades de cómputo de los Estados
Unidos.
En 1944 la marina norteamericana, en pleno esfuerzo de guerra, se
interesó por la Mark I, pensando que sería de gran utilidad en la
generación de tablas para artillería y balística. De esta forma aparece
un personaje singular en la historia de la computación: Grace Murray
Hopper.
Nacida en Nueva York el 9 de diciembre de 1906, estudió matemáticas
en Vassar y Yale, donde obtuvo el doctorado. En 1943 dejó su puesto
como profesora en Vassar para ingresar a la marina, de la que se retiró
definitivamente en 1986 con el grado de almirante.
El paso de Grace Hopper por el mundo de la informática quedó
marcado por acontecimientos de muchos tipos: se le atribuye la
creación del primer compilador (un programa que traduce
3/5
instrucciones escritas en algo parecido a un inglés rudimentario al
lenguaje numérico que “entiende” la máquina, esto ahorra una
cantidad de trabajo enorme). Según sus propias palabras lo hizo “por
floja”. Evidentemente no le gustaba escribir los programas
directamente en el lenguaje de la máquina.
Fue una mujer de mucho ingenio y lo demostró en sus opiniones sobre
muchos temas. Por ejemplo: “Los humanos son alérgicos al cambio,
les encanta decir 'pero si siempre lo hemos hecho así.' Yo trato de
combatir eso, por eso tengo un reloj, cuyas manecillas corren en
sentido contrario, colgado en mi pared.”
En el mundo de la informática suele llamarse “bug” (bicho en inglés) a
un mal funcionamiento de un programa o de una computadora en
general. Aunque el uso de este término parece remontarse a épocas
anteriores a la computadora, está debidamente documentado que en
una ocasión Grace Murray Hopper, buscando la causas de una falla en
una de las primeras máquinas encontró una polilla atorada en una de
las partes mecánicas de la misma, la pegó con cinta adhesiva a la
bitácora de trabajo y escribió de su puño y letra: “Primer caso de un
auténtico bug encontrado”. El término es tan común que la palabra
para el acto de depurar un programa sigue siendo “debug” en inglés, y
en la década de los 70 la computadora Vax contaba con una
herramienta para este fin llamada, con el típico humor del medio, DDT.
La última, y quizá la mas célebre, de las precursoras de nuestra actual
computadora es la ENIAC, acrónimo de Electronic Numerical Integrator
And Computer. La historia de esta máquina difiere de las anteriores en
el sentido de que fue creada por el ejercito americano para responder
a necesidades concretas, el cálculo de tablas de balística, mas que
como una idea de algún visionario en particular. Es mi opinión
personal que la historia deja de parecerse a ratos a las novelas de
Verne o H.G. Wells para entrar en un ámbito donde se respira
pragmatismo y funcionalidad.
La ENIAC fue concebida y diseñada por J. Presper Eckert y John William
Mauchly de la Universidad de Pennsylvania. En 1943 el proyecto fue
aprobado y se empezó a construir en la propia universidad a mediados
de 1944, entrando formalmente en operación en febrero de 1946.
La ENIAC era un monstruo en varios sentidos, pesaba cerca de 30
toneladas era casi dos veces mas larga que la Mark I, ocupaba una
superficie de 167 metros cuadrados y entre otras cosas requirió cerca
de cinco millones de uniones soldadas a mano. Sin embargo, no fue
diseñada para aceptar programas diversos de manera sencilla, cada
secuencia de operaciones nuevas, equivalente a un programa, tenía
4/5
que ser físicamente cableada en un tablero. Un detalle curioso es que
el equipo encargado de esto, de ocho personas en total, estaba
inicialmente compuesto exclusivamente por mujeres.
Aunque fue la primera computadora totalmente electrónica, los
componentes de la época no estaban aún a la altura de los
requerimientos, de forma que con frecuencia se quemaba alguno de
los miles que contenía, haciendo que sus tiempos muertos fueran
frecuentes y costos.
Nunca hubo algo como una ENIAC 2, la original, con alguna
modificación funcionó hasta 1955, pero los diseñadores originales,
Eckert y Mauchly, aprovecharon la experiencia para formar su propia
compañía de computación y producir nuevos y mejores equipos. En
1950 la compañía de Eckert y Mauchly fue adquirida por Remington
Rand y rebautizada como Univac. Es curioso mencionar que Grace
Hopper se unió casi desde el principio a la compañía de Eckert y
Mauchly y permaneció asociada a Univac hasta su retiro en 1971.
Se considera que en el 2004, un chip de aproximadamente 0.5
milímetros cuadrados contendría la misma capacidad de cálculo que la
ENIAC.
¿A cual de estos personajes podríamos atribuirle con justicia la
paternidad de la computadora? Difícil decirlo. Sin embargo hay un
rasgo común que parece asomar en toda esta historia: tal parece que
un de las motivaciones mas fuertes para ser creativo en esta área es la
flojera... Si usted tiene hijos perezosos piense si no le conviene
animarlos a dedicarse a la informática, podría tratarse del próximo
genio de esta disciplina.
5/5
Descargar