Fallece Thomas E. Kurtz, coinventor de BASIC
(computerhistory.org)- Thomas Eugene Kurtz fue un matemático y científico de la computación estadounidense que, junto con John Kemeny, creó BASIC y el Dartmouth Timesharing System; nació el 22 de febrero de 1928 y falleció el 12 de noviembre de 2024
- A inicios de la década de 1960, en la computación académica faltaba un lenguaje de programación para no especialistas que los estudiantes de licenciatura pudieran usar con facilidad, y BASIC fue creado para cubrir ese vacío
- Kurtz y Kemeny también desarrollaron DTSS para que los estudiantes pudieran acceder a BASIC desde terminales Teletype en el campus, y ambos sistemas se lanzaron el 1 de mayo de 1964
- En el otoño de 1964, cientos de estudiantes usaban BASIC desde 20 terminales en el campus de Dartmouth, y después se expandió a varias generaciones de computadoras
- La influencia de Kurtz se extendió a la educación y operación de la computación en Dartmouth, la estandarización de BASIC y la fundación de True BASIC, y en 1994 fue nombrado ACM Fellow
BASIC y el Dartmouth Timesharing System
- Thomas Eugene Kurtz coinventó junto con John Kemeny el lenguaje de programación BASIC y el Dartmouth Timesharing System (DTSS)
- A inicios de la década de 1960, en el entorno de la computación académica escaseaban los lenguajes de programación simples para no especialistas que los estudiantes de licenciatura pudieran usar, y BASIC fue creado pensando en ese tipo de usuario
- Ambos también desarrollaron DTSS para ofrecer BASIC a los estudiantes del campus
- DTSS era una forma de compartir el acceso a la computadora a través de la red
- Se necesitaba esta base para que varios estudiantes pudieran acceder a BASIC
- DTSS se consolidó como uno de los primeros sistemas de tiempo compartido exitosos a gran escala
- General Electric, que había donado una computadora a Dartmouth, amplió DTSS como núcleo de servicios en línea como Genie
- DTSS y BASIC se lanzaron el 1 de mayo de 1964
- En el otoño de 1964, cientos de estudiantes usaban BASIC desde 20 terminales del campus
Formación académica y experiencia temprana en computación
- Kurtz nació en Oak Park, Illinois, se graduó de Knox College en 1950 y obtuvo un doctorado en matemáticas en Princeton University en 1956
- En 1951 tuvo la oportunidad de usar la computadora SWAC en UCLA
- SWAC era la Standards Western Automatic Computer, construida por el National Bureau of Standards
- Fue una de las primeras computadoras electrónicas de Estados Unidos y estuvo bajo la supervisión de Harry Huskey, CHM Fellow 2013
La expansión de BASIC y la era de la computadora personal
- BASIC siguió usándose a lo largo de varias generaciones de computadoras
- Mainframes y minicomputadoras de la década de 1960
- Microcomputadoras de las décadas de 1970 y 1980
- Las actuales Raspberry Pi del tamaño de una tarjeta de crédito
- En 1978, los estudiantes de Harvard Bill Gates y Paul Allen escribieron la primera versión de BASIC para la microcomputadora de hobby MITS Altair 8800
- Ese BASIC convirtió a la Altair, que era poco más que una caja parpadeante con funciones mínimas, en una computadora útil
- La popularidad de BASIC volvió a dispararse en la era de la computadora personal
Actividades educativas y organizativas en Dartmouth
- Kurtz participó durante mucho tiempo en la educación y operación de la computación en Dartmouth
- Fue director del Kiewit Computation Center entre 1966 y 1975
- Fue director de la Office of Academic Computing entre 1975 y 1978
- En 1979, junto con Stephen J. Garland, organizó un programa de maestría profesional en Computer and Information Systems, financiado en parte con una subvención de IBM
- En 1983 fundó True BASIC, Inc. junto con Kemeny y tres exalumnos de Dartmouth
- El objetivo era desarrollar software educativo de calidad y un compilador de BASIC independiente de la plataforma
- Tras el cierre del programa CIS, volvió a dar clases en 1988 y se retiró de Dartmouth en 1993
Estandarización de BASIC y aportes a la computación académica
- Kurtz participó en varias organizaciones de computación académica y actividades de estandarización
- Se desempeñó como council chairman y trustee de EDUCOM
- Participó en el Pierce Panel del President's Advisory Committee
- Formó parte de los steering committees de dos iniciativas apoyadas por NSF y ARPA
- Presidió la primera conferencia CCUC dedicada a la instructional computing
- También desempeñó un papel clave en la estandarización de BASIC
- Ayudó a formar el comité American National Standards committee X3J2, que creó el estándar ANSI de BASIC, y fue su presidente entre 1974 y 1985
- Fue miembro del comité ISO SC22/WG8 sobre el estándar internacional de BASIC y se desempeñó como convener entre 1987 y 1993
- En 1994 fue nombrado ACM Fellow
1 comentarios
Opiniones de Hacker News
96 años; vivió una vida plena. RIP
Entre 1986 y 1990, más o menos, en la antigua Bangalore, cuando tenía 12 años, usé muchísimo QBASIC; en ese entonces en India no había Mac ni Unix ni Windows, solo MSDOS
Ponía un disquete de 5.25 pulgadas en una 386, arrancaba con
command.com, entraba aGWBASIC.EXEy molestaba a mi familia y amigos haciendo sonidos agudos con código comoSOUND 2000+i, j; si lo metía en un bucleWHILE WEND, se armaba un caos porque la gente no sabía cómo apagarloUn día, de repente, en lugar de DOS llegó MS WINDOWS 3.1, había que ponerle una bolita blanca al mouse para hacer clic en los íconos, GWBASIC desapareció y llegaron QBASIC y el juego de la serpiente
En CGA dibujaba con
SCREEN 2,LINEyCIRCLE, luego actualicé a VGA y usé los 640x480 deSCREEN 12para hacer programas que hasta tenían sonido; gracias a BASIC tuve una infancia increíbleDe BASIC pasé a CLIPPER y FOXPRO, hice un sistema de gestión de inventario en FOXPRO y cobré rupias reales por él; después pasé por MFC y Borland C++ hasta llegar a hoy, pero todo empezó con BASIC. Gracias, Dr. Kurtz
Me parece interesante que menciones específicamente GWBASIC; también era el BASIC al que yo tenía acceso, y creo que en EE. UU. esa variante no era tan popular
También aprendí CLIPPER e hice varias herramientas y apps de negocio, y eso también parece haber tenido una difusión bastante regional
El primer lenguaje con el que aprendí a programar fue BASIC. Al diseñar D, recordé lo fácil y natural que era el manejo de cadenas en BASIC, y lo pantanoso y lleno de bugs que era el manejo de cadenas en C
Hacer que las cadenas en D fueran fáciles y correctas fue una gran prioridad, y creo que, como muestra la historia, fue un éxito
Cuando reviso código en C, primero miro el manejo de cadenas; ahí la probabilidad de encontrar bugs es casi segura. A quienes no estén de acuerdo, les pregunto: sin buscarlo, ¿pueden decir cómo maneja
strncpy()la terminación en 0?Gracias, Thomas Kurtz
Por teléfono, eh, creo que te pregunté por C; respondiste con cortesía, pero sentí que apretabas los dientes
Al final elegimos C, y ese sistema operativo terminó dentro de esta cosa: https://www.youtube.com/watch?v=u8ZEUwwOYxo&t=72s
Todavía me da cringe recordar esa llamada
Decenas de miles de personas, quizá, tecleaban esas páginas al mismo tiempo, y algunas seguro se alegraron de haber tomado clases de mecanografía en la secundaria
Luego eso se convertía en “quiero probar esto”, y si salía bien, o si buscabas un BASIC más potente, terminabas en
PEEK,POKEe incluso en ensamblador. Era realmente emocionante y daba una gran sensación de poder hacer cosas por uno mismoGracias, Thomas Kurtz
strncpy()copia hastanbytes como máximo e incluye el byte nulo si aparece dentro de ese rango, pero si el byte númeronno es nulo, no agrega un nuloAsí que hay que asignar
n+1bytes o truncar en el byten, y establecer manualmente el último byte en 0El legado de BASIC es enorme. De niño tuve la suerte de poder usar una Atari 800XL, y como el hardware traía BASIC en ROM, aprendí BASIC
Era tan fácil que incluso un niño sin absolutamente nadie alrededor que supiera de computadoras podía aprender solo con los programas de ejemplo al final del manual
Nunca conocí personalmente a Kurtz, pero le debo mucho a ese lenguaje que me dio acceso a la creatividad casi infinita que ofrecían las computadoras y la programación
No era el mejor lenguaje para trabajos grandes y complejos, pero alcanzaba para que un niño hiciera aventuras de texto y pusiera píxeles en la pantalla. Recién unos 10 años después descubrí que
INTno significaba entero, sino interrupciónTambién me hizo bien, para crecer como desarrollador, jugar de adolescente a hacer juegos para calculadoras de clase en TI-BASIC; fue mi primer caso de esa experiencia tan común en programación de “igual, pero distinto”. Por suerte, incluso me llevó a una carrera temprana en desarrollo de videojuegos
Hasta ayer no habría reconocido el nombre Thomas E. Kurtz, pero solo escuchar la palabra BASIC me trae decenas de buenos recuerdos. Todavía tengo la Atari 800XL que usaba de niño, y creo que ahora pensaré en él cada vez que la vea
Si no me falla la memoria, en 1976 escribí mi primera línea de BASIC
Tenía 15 años y fui con mi padre a una feria comercial, donde alguien en el stand de IBM me invitó a probar un juego de alunizaje. Era una IBM 5100
Le pregunté a mi padre qué pasaba con los caracteres que se desplazaban hacia arriba en la pantalla y desaparecían; mi padre, que no tenía ningún interés en la tecnología, le pidió a un ingeniero de IBM que me lo explicara. En ese momento supe que ese era mi camino, y ahí mismo escribí por primera vez unas líneas de BASIC
Al año siguiente, en el stand de Hewlett Packard, me quedé embobado viendo una máquina que parecía ser una HP-9825A dibujando figuras de Lissajous con un plotter
Al año siguiente trabajé en cada vacación para comprarme una HP-25, y al siguiente conseguí una TRS-80 Model 1 Level II y empecé a programar en BASIC
En aquel entonces sabía tan poco que hasta pensaba que si compraba el Editor/Assembler aumentaría la resolución de la pantalla
Después usé Megamax C y GFA BASIC en la Atari ST, y pasé por varios lenguajes en PC
Lo que siempre me sorprende es que algunas personas hayan creado, en apenas días, semanas o meses, lenguajes que millones de personas usarían toda la vida. Es una influencia enorme
Señor Kurtz, quizá no haya creado el mejor lenguaje, pero lo que creó dio alegría e inspiración a una generación de jóvenes programadores. Esa alegría hoy parece un poco atenuada, aunque tal vez no si uno programa en Rust
Era un sistema con pantallas de plasma y 1000 terminales; tenía una red social, airfight, el precursor de Microsoft Flight Simulator, y pedit5/dnd, el primer juego de mazmorras
Cortaba el césped deseando muchísimo poder comprarme una calculadora HP-25 o SR-52, o una computadora propia como la IMSAI 8080
Más tarde hice que PLATO simulara un juego de fútbol americano de bolsillo, y también escribí programas BASIC con un intérprete de juguete, pero cuando terminaba la sesión no había forma de guardar el programa
En 2010 entrevisté a Thomas Kurtz en su casa para mi tesis doctoral sobre la visión de la utilidad informática de los años 60 y 70
Esa visión imaginaba un mundo en el que grandes utilidades informáticas, como AT&T o las compañías eléctricas, ofrecerían servicios electrónicos
Él se había jubilado hacía mucho, pero seguía viviendo en las colinas de New Hampshire cerca de Dartmouth; ahora no encuentro mis notas de la entrevista, pero recuerdo que fue muy amable y hospitalario
Lo que él y John Kemeny hicieron en Dartmouth fue realmente asombroso. Para ellos, la tecnología —es decir, el tiempo compartido y BASIC— era un medio para educar y empoderar a los estudiantes y, en última instancia, fortalecer a toda la sociedad
Gracias por compartirla. Me entusiasma la idea de leerla
Tom Kurtz, John Kemeny y BASIC también cambiaron mi vida
Escribí mi primer programa en BASIC en 1970, y al año siguiente, desde la secundaria, pasaba horas programando en BASIC frente a un Model 33 Teletype en la sala de computadoras de la escuela, usando el sistema de tiempo compartido HP-2000 del distrito escolar
Al final decidí ir a Dartmouth por su filosofía de computación para estudiantes de pregrado
En esa época, tener cualquier forma de acceso a una computadora era algo enorme, y poder programar era una habilidad que te diferenciaba claramente de tus pares al postularte a posgrados o empleos
Así que siento que he seguido montado en esa ola de principios de los 70 hasta hoy, incluso aunque en las generaciones más jóvenes haya habido una explosión de gente capacitada
Fue una época asombrosa y breve. Si tuviera 13 años hoy, no estoy seguro de qué tecnología similar podría impulsar a alguien hacia adelante con tanta facilidad
Mi primer programa fue así:
10 LET N=5^2.5,20 PRINT N,30 ENDEl resultado, un valor un poco mayor que 55, se sintió como una revelación. En aquel entonces no sabía logaritmos, así que el significado de un exponente fraccionario era un misterio total, y tuve que preguntarle a mi profesor de matemáticas qué significaba la respuesta
Escribí “5 to the power of 2.5” y, tras unos clics, apareció en el buscador un resultado de “math solver” como este: https://www.google.com/search?q=5%5E(2.5)
También había un botón para mostrar los pasos de la solución, y en una respuesta de Quora aparecían dos formas de resolverlo usando las leyes de los exponentes
Genial. Ahora tengo que volver a repasar las matemáticas escolares
¿Podríamos poner una barra negra de luto por el Dr. Kurtz?
Es imposible exagerar el legado de BASIC en nuestra industria. Ese lenguaje y esa misión en Dartmouth fueron revolucionarios
En particular, el simple hecho de que fuera el primer lenguaje de programación que conocieron innumerables usuarios nuevos de computadoras en los albores de la computadora personal tuvo efectos secundarios incalculables
Me puse nostálgico, pero aquí está la referencia de Dartmouth BASIC de 1964: http://web.archive.org/web/20120716185629/http://www.bitsave...
Es realmente fascinante y permite sentir un poco el ambiente de la época
En especial me gusta la frase de la página 21: “TYPING IS NO SUBSTITUTE FOR THINKING”
BASIC fue una rampa de entrada fácil a la programación, e hizo que muchísima gente, incluidos chicos de los 70 y 80 como yo, se enamorara de la computación. Él ayudó a construir el futuro tanto como cualquiera
Como no tenía disquetera para guardar, etiqueté los cables esperando que nadie la desenchufara
Unos años después, durante el boom puntocom, conseguí mi primer trabajo usando VB como estudiante de primer año de universidad, y eso literalmente me cambió la vida: me puso en un camino hacia una situación mejor que la de mis padres
Por eso aparecen líneas como
F0R X=1 T0 1OO¿En 1964 de verdad era al revés así?
Si quieres decir que el legado de BASIC es enorme, lo correcto es que, digas lo que digas, difícilmente sería una exageración
“couldn't be understated” significaría que por más insignificante que lo describieras, eso seguiría siendo cierto. Supongo que no era lo que querías decir
Así que el comentario de emptiestplace no merecía tantos downvotes
Como muchos programadores de mi generación, el primer lenguaje que aprendí fue BASIC
En los 80 y 90, BASIC estaba realmente en todas partes, y casi todas las computadoras venían con alguna forma de BASIC
Incluso mi libro de matemáticas de sexto grado tenía un apéndice con juegos matemáticos educativos en forma de listados de código fuente BASIC
Adiós, y gracias por los peces, Dr. Kurtz
Las que se me vienen ahora a la mente son BASIC, BASICA y QBASIC, pero ya no recuerdo las diferencias entre variantes
Sé que es una frase y la he leído, pero preferiría que me la explicara una persona antes que Google
Yo también empecé a programar con BASIC
Primero fue en una Apple ][ de la escuela, y después tuve una Vic-20 en casa
Muchos de los juegos más interesantes de la Vic-20 consistían en teclear enormes cantidades de datos enteros desde revistas, así que no eran muy educativos
Más adelante pude usar un sistema HP con Rocky Mountain BASIC, que era bastante bueno
Unos años después conseguí mi primera experiencia profesional trabajando como tester en el port de RM BASIC a HP/UX, y unos 5 años más tarde volví a RMB al crear un sistema de gestión de pruebas de producción llamado Functional Test Manager
Hace unos días incluso almorcé con alguien con quien trabajé en esa época. Al escribir esto me doy cuenta de que BASIC fue una parte central de mi carrera. RIP Thomas
Algo interesante es que una de las razones por las que Pascal fue objeto de burlas fueron las limitaciones del sistema original y la incompatibilidad entre las implementaciones que llegaron al mercado
En cambio, BASIC podría considerarse la columna vertebral de la industria de minicomputadoras y microcomputadoras durante 20 años, aunque sus implementaciones y funciones eran de lo más dispares
Los BASIC que usé no eran compatibles entre sí salvo por lo básico, como expresiones y tipos de datos centrales, e incluso en eso el manejo de cadenas era distinto en cada uno
De hecho, tampoco hay mucho software grande escrito en la versión original de Pascal
Pascal fue diseñado como un lenguaje compilado con la posibilidad de escribir sistemas grandes, pero tenía limitaciones serias en ese aspecto
BASIC era un lenguaje educativo, y aunque la gente lo llevó al límite para crear sistemas reales, todos sabían que seguía siendo un lenguaje educativo que había crecido de más
También se usaba para trabajos serios, pero era un lenguaje “de juguete”, y nadie esperaba que un programa serio escrito en BASIC fuera portable
Pascal también empezó como un lenguaje educativo, pero se percibía como un lenguaje mucho más “serio”, y de hecho tenía estructuras de control mucho mejores que BASIC
Pero no alcanzó el estándar que esas expectativas habían establecido, y las razones son las ya mencionadas
¿Se podrían haber escrito en Pascal las mismas aplicaciones hechas en BASIC? Casi seguro. ¿Habría sido mejor hacerlo así? Sin duda
Probablemente la diferencia es que BASIC era más accesible. Un niño de 10 años podía ponerse a experimentar con él, mientras que Pascal era más bien algo para que experimentara un universitario
Por eso Pascal cargaba con expectativas más altas, y el mismo tipo de limitaciones se veía como una decepción mayor