Libre como en libertad en ruso: Capítulo 7. El dilema de la moralidad absoluta


Libre como en libertad en ruso: Capítulo 7. El dilema de la moralidad absoluta

Libre como en libertad en ruso: Capítulo 1. La impresora fatal


Libre como en libertad en ruso: Capítulo 2. 2001: Una odisea hacker


Libre como en libertad en ruso: Capítulo 3. Retrato de un hacker en su juventud


Libre como en libertad en ruso: Capítulo 4. Desacreditar a Dios


Libre como en Libertad en ruso: Capítulo 5. Un chorrito de libertad


Gratis como en libertad en ruso: Capítulo 6. Comuna de Emacs

El dilema de la moralidad absoluta

A las doce y media de la noche del 27 de septiembre de 1983, apareció un mensaje inusual en el grupo de Usenet net.unix-wizards firmado rms@mit-oz. El título del mensaje era breve y sumamente tentador: “Una nueva implementación de UNIX”. Pero en lugar de alguna nueva versión de Unix ya preparada, el lector encontró una llamada:

Este Día de Acción de Gracias, estoy empezando a escribir un nuevo sistema operativo totalmente compatible con Unix llamado GNU (GNU no es Unix). Lo distribuiré gratuitamente a todos. Realmente necesito su tiempo, dinero, código, equipo... cualquier ayuda.

Para un desarrollador experimentado de Unix, el mensaje era una mezcla de idealismo y ego. El autor no sólo se propuso recrear desde cero todo un sistema operativo, muy avanzado y potente, sino también mejorarlo. Se suponía que el sistema GNU contendría todos los componentes necesarios, como un editor de texto, un shell de comandos, un compilador, así como "varias otras cosas". También prometieron características extremadamente atractivas que no estaban disponibles en los sistemas Unix existentes: una interfaz gráfica en el lenguaje de programación Lisp, un sistema de archivos tolerante a fallos y protocolos de red basados ​​en la arquitectura de red MIT.

"GNU podrá ejecutar programas Unix, pero no será idéntico al sistema Unix", escribió el autor, "haremos todas las mejoras necesarias que han madurado a lo largo de los años de trabajo en varios sistemas operativos".

Anticipándose a una reacción escéptica ante su mensaje, el autor lo complementó con una breve digresión autobiográfica bajo el título: "¿Quién soy yo?":

Soy Richard Stallman, creador del editor EMACS original, uno de cuyos clones probablemente te hayas encontrado. Trabajo en el laboratorio de IA del MIT. Tengo amplia experiencia en el desarrollo de compiladores, editores, depuradores, intérpretes de comandos, sistemas operativos ITS y Lisp Machine. Se implementó soporte de pantalla independiente del terminal en ITS, así como un sistema de archivos tolerante a fallas y dos sistemas de ventanas para máquinas Lisp.

Dio la casualidad de que el intrincado proyecto de Stallman no comenzó el Día de Acción de Gracias, como había prometido. No fue hasta enero de 1984 que Richard se lanzó de lleno al desarrollo de software al estilo Unix. Desde la perspectiva de un arquitecto de sistemas ITS, fue como pasar de construir palacios árabes a construir centros comerciales suburbanos. Sin embargo, el desarrollo del sistema Unix también ofreció ventajas. ITS, a pesar de toda su potencia, tenía un punto débil: solo funcionaba en una computadora PDP-10 de DEC. A principios de la década de 80, el laboratorio abandonó el PDP-10 y ITS, que los piratas informáticos compararon con una ciudad ocupada, se convirtió en una ciudad fantasma. Unix, por otro lado, fue diseñado originalmente teniendo en cuenta la portabilidad de una arquitectura de computadora a otra, por lo que tales problemas no lo amenazaban. Desarrollado por investigadores jóvenes de AT&T, Unix pasó desapercibido para las empresas y encontró un hogar tranquilo en el mundo de los think tanks sin fines de lucro. Con menos recursos que sus hermanos hackers del MIT, los desarrolladores de Unix adaptaron su sistema para ejecutarlo en un zoológico de hardware dispar. Principalmente en el PDP-16 de 11 bits, que los hackers del laboratorio consideraban inadecuado para tareas serias, pero también en mainframes de 32 bits como el VAX 11/780. En 1983, empresas como Sun Microsystems habían creado computadoras de escritorio relativamente compactas (“estaciones de trabajo”) comparables en potencia a la antigua computadora central PDP-10. El omnipresente Unix también se instaló en estas estaciones de trabajo.

La portabilidad de Unix fue proporcionada por una capa adicional de abstracción entre aplicaciones y hardware. En lugar de escribir programas en el código de máquina de una computadora específica, como hicieron los piratas informáticos del laboratorio cuando desarrollaban programas para ITS en el PDP-10, los desarrolladores de Unix utilizaron el lenguaje de programación C de alto nivel, que no estaba vinculado a una plataforma de hardware específica. Al mismo tiempo, los desarrolladores se centraron en estandarizar las interfaces a través de las cuales interactuaban entre sí las partes del sistema operativo. El resultado fue un sistema en el que cualquier pieza podía rediseñarse sin afectar a todas las demás y sin interrumpir su funcionamiento. Y para transferir un sistema de una arquitectura de hardware a otra, también bastaba con rehacer sólo una parte del sistema, y ​​no reescribirla por completo. Los expertos apreciaron este fantástico nivel de flexibilidad y conveniencia, por lo que Unix se extendió rápidamente por todo el mundo de la informática.

Stallman decidió crear el sistema GNU debido a la desaparición de ITS, la creación favorita de los hackers del AI Lab. La muerte de ITS fue un duro golpe para ellos, incluido Richard. Si la historia de la impresora láser Xerox le abrió los ojos a la injusticia de las licencias de propiedad, entonces la muerte de ITS lo empujó de la aversión al software cerrado a una oposición activa al mismo.

Las razones de la muerte de ITS, al igual que su código, se remontan al pasado. En 1980, la mayoría de los piratas informáticos del laboratorio ya estaban trabajando en una máquina Lisp y en un sistema operativo para ella.

Lisp es un lenguaje de programación elegante y perfecto para trabajar con datos cuya estructura se desconoce de antemano. Fue creado por el pionero de la investigación en inteligencia artificial y creador del término “inteligencia artificial” John McCarthy, quien trabajó en el MIT en la segunda mitad de los años 50. El nombre del idioma es una abreviatura de "LISt Processing" o "procesamiento de listas". Después de que McCarthy dejó el MIT para ir a Stanford, los piratas informáticos del laboratorio cambiaron un poco Lisp, creando su dialecto local MACLISP, donde las primeras 3 letras representaban el proyecto MAC, gracias al cual, de hecho, apareció el Laboratorio de IA en el MIT. Bajo la dirección del arquitecto de sistemas Richard Greenblatt, los hackers del laboratorio desarrollaron una máquina Lisp, un ordenador especial para ejecutar programas en Lisp, así como un sistema operativo para este ordenador, también escrito en Lisp.

A principios de la década de 80, grupos competidores de hackers habían fundado dos empresas que producían y vendían máquinas Lisp. La empresa de Greenblatt se llamaba Lisp Machines Incorporated, o simplemente LMI. Esperaba prescindir de inversiones externas y crear una “empresa puramente hacker”. Pero la mayoría de los hackers se unieron a Symbolics, una típica startup comercial. En 1982 abandonaron por completo el MIT.

Los que quedaban se podían contar con los dedos de una mano, por lo que los programas y las máquinas tardaban cada vez más en repararse, o no se reparaban en absoluto. Y lo peor de todo, según Stallman, comenzaron los “cambios demográficos” en el Laboratorio. Los piratas informáticos, que antes eran minoría, casi desaparecieron, dejando el Laboratorio a completa disposición de profesores y estudiantes, cuya actitud hacia el PDP-10 era abiertamente hostil.

En 1982, AI Lab recibió un reemplazo para su PDP-12 de 10 años: el DECSYSTEM 20. Las aplicaciones escritas para el PDP-10 se ejecutaron sin problemas en la nueva computadora, porque el DECSYSTEM 20 era esencialmente un PDP actualizado. -10, pero el sistema operativo anterior no era adecuado en absoluto: hubo que trasladar su ITS a una computadora nueva, lo que significa reescribirlo casi por completo. Y esto es en un momento en el que casi todos los hackers que podían hacer esto han abandonado el Laboratorio. Así que el sistema operativo comercial Twenex se hizo cargo rápidamente del nuevo ordenador. Los pocos hackers que quedaron en el MIT sólo pudieron aceptar esto.

"Sin piratas informáticos que creen y mantengan el sistema operativo, estamos condenados", dijeron profesores y estudiantes. "Necesitamos un sistema comercial respaldado por alguna empresa para que pueda resolver los problemas con este sistema por sí mismo". Stallman recuerda que este argumento resultó ser un error cruel, pero en ese momento sonó convincente.

Al principio, los piratas informáticos vieron a Twenex como otra encarnación de una corporatocracia autoritaria que querían romper. Incluso el nombre reflejaba la hostilidad de los hackers; de hecho, el sistema se llamaba TOPS-20, lo que indica continuidad con TOPS-10, también un sistema DEC comercial para el PDP-10. Pero arquitectónicamente TOPS-20 no tenía nada en común con TOPS-10. Se fabricó basándose en el sistema Tenex, que Bolt, Beranek y Newman desarrollaron para el PDP-10. . Stallman empezó a llamar al sistema “Twenex” sólo para evitar llamarlo TOPS-20. "El sistema estaba lejos de ser una solución de alta gama, por lo que no podía atreverme a llamarlo por su nombre oficial", recuerda Stallman, "así que inserté la letra 'w' en 'Tenex' para convertirlo en 'Twenex'". (Este nombre juega con la palabra "veinte", es decir, "veinte")

La computadora que ejecutaba el Twenex/TOPS-20 se llamaba irónicamente "Oz". El hecho es que DECSYSTEM 20 requería una pequeña máquina PDP-11 para operar el terminal. Un hacker, cuando vio por primera vez el PDP-11 conectado a esta computadora, lo comparó con una actuación pretenciosa del Mago de Oz. “¡Soy el grande y terrible Oz! – recitó. "Simplemente no mires a los pequeños en los que estoy trabajando".

Pero no había nada gracioso en el sistema operativo de la nueva computadora. La seguridad y el control de acceso se integraron en Twenex en un nivel básico, y las utilidades de sus aplicaciones también se diseñaron teniendo en cuenta la seguridad. Las bromas condescendientes sobre los sistemas de seguridad del laboratorio se han convertido en una seria batalla por el control informático. Los administradores argumentaron que sin sistemas de seguridad, Twenex sería inestable y propenso a errores. Los piratas informáticos aseguraron que la estabilidad y confiabilidad se podrían lograr mucho más rápido editando el código fuente del sistema. Pero ya eran tan pocos en el Laboratorio que nadie los escuchaba.

Los piratas informáticos pensaron que podrían sortear las restricciones de seguridad otorgando a todos los usuarios "privilegios de dirección", derechos elevados que les dan la capacidad de hacer muchas cosas que el usuario promedio tiene prohibido hacer. Pero en este caso, cualquier usuario podría quitarle los “privilegios de dirección” a cualquier otro usuario y no podría devolvérselo a sí mismo debido a la falta de derechos de acceso. Por lo tanto, los piratas informáticos decidieron hacerse con el control del sistema quitándoles los “privilegios de dirección” a todos menos a ellos mismos.

Adivinar contraseñas y ejecutar el depurador mientras el sistema se iniciaba no hizo nada. Habiendo fracasado en "golpe de Estado", Stallman envió un mensaje a todos los empleados del Laboratorio.

"Hasta ahora los aristócratas habían sido derrotados", escribió, "pero ahora han tomado la delantera y el intento de tomar el poder ha fracasado". Richard firmó el mensaje: “Radio Free OZ” para que nadie adivinara que era él. Un disfraz excelente, considerando que todos en el Laboratorio conocían la actitud de Stallman hacia los sistemas de seguridad y su burla de las contraseñas. Sin embargo, la aversión de Richard a las contraseñas era conocida mucho más allá del MIT. Casi toda ARPAnet, el prototipo de Internet de aquellos tiempos, accedía a los ordenadores del Laboratorio bajo la cuenta de Stallman. Un "turista" de este tipo fue, por ejemplo, Don Hopkins, un programador de California, quien a través del boca a boca de los piratas informáticos descubrió que se podía acceder al famoso sistema ITS del MIT simplemente ingresando 3 letras de las iniciales de Stallman como nombre de usuario y contraseña.

"Siempre estaré agradecido de que el MIT nos haya dado a mí y a tantas otras personas la libertad de utilizar sus computadoras", dice Hopkins, "significa mucho para todos nosotros".

Esta política "turística" duró muchos años mientras existió el sistema ITS, y la dirección del MIT la miró con condescendencia. . Pero cuando la máquina de Oz se convirtió en el puente principal entre el Laboratorio y ARPAnet, todo cambió. Stallman aún proporcionó acceso a su cuenta utilizando un nombre de usuario y una contraseña conocidos, pero los administradores le exigieron que cambiara la contraseña y no se la diera a nadie más. Richard, citando su ética, se negó en absoluto a trabajar en la máquina de Oz.

"Cuando comenzaron a aparecer contraseñas en las computadoras del AI Lab, decidí seguir mi creencia de que no debería haber contraseñas", dijo más tarde Stallman, "y como creía que las computadoras no necesitaban sistemas de seguridad, no debería haber apoyado estas medidas para implementarlas". a ellos. "

La negativa de Stallman a arrodillarse ante la gran y terrible máquina de Oz demostró que las tensiones estaban creciendo entre los hackers y los superiores del laboratorio. Pero esta tensión era sólo una pálida sombra del conflicto que se desataba dentro de la propia comunidad de hackers, que estaba dividida en dos bandos: LMI (Lisp Machines Incorporated) y Symbolics.

Symbolics recibió una gran inversión externa, lo que atrajo a muchos de los piratas informáticos del laboratorio. Trabajaron en el sistema de la máquina Lisp tanto en el MIT como fuera de él. A finales de 1980, la empresa contrató a 14 empleados del laboratorio como consultores para desarrollar su propia versión de la máquina Lisp. El resto de los hackers, sin contar a Stallman, trabajaban para LMI. Richard decidió no tomar partido y, por costumbre, se quedó solo.

Al principio, los piratas informáticos contratados por Symbolics continuaron trabajando en el MIT, mejorando el sistema de la máquina Lisp. Ellos, al igual que los piratas informáticos de LMI, utilizaron la licencia del MIT para su código. Requería que los cambios se devolvieran al MIT, pero no requería que el MIT los distribuyera. Sin embargo, durante 1981, los piratas informáticos se adhirieron a un acuerdo de caballeros en el que todas sus mejoras se escribieron en la máquina Lisp del MIT y se distribuyeron a todos los usuarios de esas máquinas. Esta situación aún preserva cierta estabilidad del colectivo de hackers.

Pero el 16 de marzo de 1982 (Stalman recuerda bien este día porque era su cumpleaños) el acuerdo de caballeros llegó a su fin. Esto sucedió a instancias de la dirección de Symbolics, que querían estrangular a su competidor, la empresa LMI, que tenía muchos menos piratas informáticos trabajando para ella. Los líderes de Symbolics razonaron de esta manera: si LMI tiene muchas veces menos empleados, entonces resulta que el trabajo general en la máquina Lisp es beneficioso para él, y si se detiene este intercambio de desarrollos, entonces LMI será destruido. Para ello, decidieron abusar de la letra de la licencia. En lugar de realizar cambios en la versión MIT del sistema, que LMI podía usar, comenzaron a suministrar al MIT la versión Symbolics del sistema, que podían editar como quisieran. Resultó que cualquier prueba y edición del código de máquina Lisp en el MIT solo favoreció a Symbolics.

Como hombre responsable del mantenimiento de la máquina Lisp del laboratorio (con la ayuda de Greenblatt durante los primeros meses), Stallman estaba furioso. Los piratas informáticos de Symbolics proporcionaron código con cientos de cambios que provocaron errores. Considerando esto como un ultimátum, Stallman cortó las comunicaciones del laboratorio con Symbolics, prometió no volver a trabajar nunca más en las máquinas de esa empresa y anunció que se uniría al trabajo en la máquina Lisp del MIT para respaldar a LMI. "En mi opinión, el laboratorio era un país neutral, como Bélgica en la Segunda Guerra Mundial", dice Stallman, "y si Alemania invadía Bélgica, Bélgica le declaraba la guerra y se unía a Gran Bretaña y Francia".

Cuando los ejecutivos de Symbolics notaron que sus últimas innovaciones todavía aparecían en la versión MIT de la máquina Lisp, se enojaron y comenzaron a acusar a los piratas informáticos del laboratorio de robar código. Pero Stallman no violó en absoluto la ley de derechos de autor. Estudió el código proporcionado por Symbolics e hizo conjeturas lógicas sobre futuras correcciones y mejoras, que comenzó a implementar desde cero para la máquina Lisp del MIT. Los ejecutivos de Symbolics no lo creyeron. Instalaron software espía en la terminal de Stallman, que registraba todo lo que hacía Richard. Así que esperaban recopilar pruebas del robo de códigos y mostrárselas a la administración del MIT, pero incluso a principios de 1983 no había casi nada que mostrar. Todo lo que tenían era una docena de lugares donde el código de los dos sistemas parecía un poco similar.

Cuando los administradores del laboratorio le mostraron la evidencia de Symbolics a Stallman, él la refutó, diciendo que el código era similar, pero no igual. Y volvió la lógica de la dirección de Symbolics en su contra: si estos granos de código similar es todo lo que pudieron desenterrar, entonces esto sólo prueba que Stallman en realidad no robó el código. Esto fue suficiente para que los directivos del laboratorio aprobaran el trabajo de Stallman, que continuó hasta finales de 1983. .

Pero Stallman cambió su enfoque. Para protegerse a sí mismo y al proyecto tanto como fuera posible de las afirmaciones de Symbolics, dejó por completo de mirar sus códigos fuente. Comenzó a escribir código basándose exclusivamente en documentación. Richard no esperaba las mayores innovaciones de Symbolics, pero las implementó él mismo y luego solo agregó interfaces para compatibilidad con la implementación de Symbolics, basándose en su documentación. También leyó el registro de cambios del código de Symbolics para ver qué errores estaban solucionando, y él mismo corrigió esos errores de otras maneras.

Lo sucedido fortaleció la determinación de Stallman. Después de crear análogos de las nuevas funciones de Symbolics, convenció al personal del laboratorio para que utilizara la versión MIT de la máquina Lisp, que garantizaba un buen nivel de pruebas y detección de errores. Y la versión del MIT estaba completamente abierta a LMI. "Quería castigar a los simbólicos a cualquier precio", dice Stallman. Esta afirmación muestra no sólo que el carácter de Richard está lejos de ser pacifista, sino también que el conflicto sobre la máquina Lisp lo conmovió profundamente.

La determinación desesperada de Stallman se puede entender si se considera lo que le pareció: la "destrucción" de su "hogar", es decir, la comunidad de hackers y la cultura del Laboratorio de IA. Posteriormente, Levy entrevistó a Stallman por correo electrónico y Richard se comparó con Ishi, el último miembro conocido del pueblo indio Yahi, que fue exterminado en las guerras indias de las décadas de 1860 y 1870. Esta analogía da a los acontecimientos descritos un alcance épico, casi mitológico. Los hackers que trabajaban para Symbolics vieron esto desde una perspectiva ligeramente diferente: su empresa no destruyó ni exterminó, sino que sólo hizo lo que debería haberse hecho hace mucho tiempo. Al trasladar la máquina Lisp al campo comercial, Symbolics cambió su enfoque en el diseño de programas: en lugar de cortarlos de acuerdo con los patrones intransigentes de los piratas informáticos, comenzaron a utilizar estándares de gerentes más suaves y humanos. Y consideraban a Stallman no como un luchador adversario en defensa de una causa justa, sino como un portador de un pensamiento obsoleto.

Los conflictos personales también echaron más leña al fuego. Incluso antes de la llegada de Symbolics, muchos piratas informáticos evitaban a Stallman y ahora la situación ha empeorado muchas veces. “Ya no me invitaban a ir de viaje a Chinatown”, recuerda Richard, “Greenblatt inició la costumbre: cuando quieres almorzar, vas con tus colegas y los invitas contigo o les envías un mensaje. En algún momento de 1980-1981 dejaron de llamarme. No sólo no me invitaron, sino que, como me confesó más tarde una persona, presionaron a los demás para que nadie me hablara de los trenes previstos para el almuerzo”.

Fuente: linux.org.ru

Añadir un comentario