«Nunca deberíamos construir una computadora que no se pueda desconectar»
John “Maddog” Hall es uno de los padres del software libre, una forma de pensar a la informática totalmente opuesta a la de las grandes empresas como Microsoft, Facebook o Google: todos deberíamos poder tener el acceso a copiar, modificar y distribuir las aplicaciones, programas y sistemas operativos que ellos patentan.
Sus conocimientos abarcan a los inicios de la computación, pero también a una filosofía de vida y una forma de entender al saber computacional como algo colaborativo. Charlar con Maddog es como leer un libro de historia de la informática.
Conocido como “Maddog” -perro loco en inglés- por su fuerte temperamento, recuerda que en 1969, cuando nacía Linus Torvalds, el padre de Linux, “no había informática», ni siquiera carreras de grado relacionadas: había “magia negra”, recuerda.
“Muchas de las computadoras de aquella época tenían sistemas operativos sencillos o incluso no tenían ningún sistema operativo. Si querías trabajar con una computadora te convertías en físico, ingeniero eléctrico, ingeniero mecánico o empresario, y escribías programas para resolver ‘tu’ problema, no el de otro. Cada facultad o departamento de una universidad solía tener su propio equipo. A veces se unían para comprar una computadora ‘realmente grande’ y lo compartían entre los departamentos”, recuerda el docente y también presidente de la junta del «Linux Professional Institute».
John «Maddog» Hall, uno de los padres del software libre. Foto Nerdearla
Desde los 60 hasta la actualidad, muchas cosas han cambiado. Hall, de 71 años, dio una charla en Nerdear.la el mes pasado, un evento argentino organizado por la comunidad de sistemas –SysArmy– que trajo a unas 200 personalidades a dar 150 charlas y congregó a 40 mil usuarios en un formato híbrido entre online y presencial.
¿Cómo eran las computadoras en los 60? ¿Qué sistemas operativos tenían? ¿Cómo era el mundo antes de Windows, iOS, Android y Linux?
Después de su conferencia, Maddog habló con Clarín para repasar algunos hitos de la historia de la computación y, sobre todo, tratar de entender por qué el software libre fue y sigue siendo una de las claves de los avances que hoy tanto disfrutamos en nuestra vida cotidiana.
─En tu charla dijiste que “el código cerrado es el enemigo”. ¿Por qué?
─El código cerrado significa que el usuario final no puede modificar el software («binarios») que recibe, ya que no dispone del código fuente. No pueden corregir errores y no pueden obtener nuevas funciones a menos que los «desarrolladores» las proporcionen.
─¿Y cómo es esto con el software libre?
─Con el software libre, el usuario final puede arreglar el código por sí mismo, o incluso añadir nuevas características o cambiarlo para satisfacer sus necesidades. Si el usuario final no tiene los conocimientos necesarios, puede pagar a otra persona que sí los tenga para hacer ese cambio o arreglar ese error. El código cerrado elimina cualquier posibilidad de hacerlo por parte del usuario final. Con el código cerrado, los usuarios finales pierden el control de su software, de su computadora y, en muchos sentidos, de su negocio. Por eso el código cerrado es el enemigo.
─Actualmente presidís un consorcio de Linux. ¿Qué es la sigla «GNU», que casi siempre acompaña a la palabra?
GNU es un paquete de programas que suministran las bibliotecas, compiladores y utilidades para crear un clon de Unix, que era un sistema operativo de código cerrado que se ejecutaba en muchas piezas diferentes de hardware. El proyecto se inició en 1984, y para ese año ya tenían la mayoría de las cosas necesarias, excepto el núcleo, que es lo que Linus Torvalds y su equipo escribieron a partir de 1991, y estuvo listo en 1993 para que varios grupos lo unieran con el código de GNU y crearan «distribuciones» como Red Hat, Debian, Ubuntu, etc.
Linus Torvalds, padre de Linux. Foto Wikimedia Commons
─Cuando vos empezaste a programar cada computadora tenía un sistema operativo diferente. ¿Cómo cambió eso actualmente, donde Windows, Android y MacOS son los OS más populares?
─Los sistemas operativos estaban especializados no sólo porque las memorias eran pequeñas, sino porque los CPUs eran muy lentos para los estándares actuales. Se quería exprimir hasta el último ciclo del hardware para resolver su propio problema. Sin embargo, al tener diferentes arquitecturas y sistemas operativos, esto significaba que tenías que llevar tu programa a diferentes arquitecturas y sistemas operativos, y tenías que formar a tus usuarios en el uso de ese sistema operativo. A medida que las computadoras se vuelven más rápidas, podemos cambiar un poco de la eficiencia de un sistema operativo a medida por un sistema operativo de propósito más general y ahorrarnos el «portar» el software y volver a formar a la gente.
─Entonces, ¿por qué no tener un único sistema operativo hoy en día?
─Porque sigue habiendo diferentes necesidades: sistemas operativos en tiempo real, sistemas operativos de alto rendimiento, sistemas operativos distribuidos, sistemas operativos para servidores, sistemas operativos «personales». Muchos de ellos pueden basarse en el mismo Kernel [el núcleo], pero las bibliotecas y utilidades de nivel superior son diferentes. Un buen ejemplo de esto es que tanto GNU/Linux como Android utilizan el mismo núcleo de Linux.
Open Source: el software de código abierto es más flexible que el patentado. Foto Pexels
─En aquella época, las grandes empresas vendían sistemas. Y los sistemas se hacían para una computadora específica, para un usuario particular. ¿Qué fue y qué aportó Unix al mundo?
─En aquella época, las computadoras podían ejecutar una sola aplicación a la vez. Lo que pasaba era que las computadoras eran carísimas, tenían memorias tan pequeñas y eran tan lentas que el sistema operativo (si es que tenían uno) se ajustaba a un estilo particular de base de aplicaciones. Estas diferencias en las aplicaciones se incorporaron a las características que ofrecía el núcleo de los sistemas operativos y, hasta cierto punto, el hardware que había debajo. Unix tenía un núcleo relativamente sencillo que hacía algunas cosas muy bien: programar un proceso, la memoria principal o los dispositivos de entrada/salida. Dado que se pueden tener muchas bibliotecas corriendo encima de un kernel Unix, se podían tener muchos tipos de aplicaciones.
John «Maddog» Hall, uno de los padres del software libre. Foto Nerdearla
─Las patentes en el software tenían otro rol en aquella época. ¿Cuál?
─Se suponía que las patentes daban una protección de tiempo limitado a las ideas únicas del creador, de modo que éste podía exponer la idea a otros y hacer que ellos usaran su idea (bajo licencia de algún tipo) o construyeran sobre su idea (de nuevo, usando una licencia). Al cabo de un tiempo, la idea principal pasa a ser de dominio público, pero es de esperar que la idea principal haya sido amortizada en derechos de licencia y devuelta al inventor.
─¿Qué sucedió con el paso del tiempo?
─Desgraciadamente, hoy en día muchas de las patentes concedidas no son dignas de serlo, o son solicitadas a propósito por personas que están «estafando» al sistema. Hay que reformar el sistema de patentes (la mayoría de los buenos abogados especializados en propiedad intelectual están de acuerdo), pero se necesitan buenos legisladores para hacerlo. Se supone que las patentes también permiten al creador de software exponer su código fuente.
─¿Creés que el mundo informático será alguna vez de código abierto, o que las patentes lo dominarán?
─Históricamente, las patentes no han impedido realmente que el software de código abierto funcione. Los GIFs en imágenes dieron paso a JPEG porque los GIFs utilizaban HET para comprimir los bits. Cuando la patente de HET se agotó hace unos años, los GIFS volvieron a utilizarse. Hay «bancos de patentes» donde la gente puede poner ideas patentadas. Intercambian el uso de las ideas patentadas para no ser demandados por el uso inadvertido de las patentes de otros miembros del banco. Necesitamos una reforma de las patentes. En el caso del software, creo que las patentes tienen un valor cuestionable.
¿Inteligencia? artificial y machine learning
Maddog propone el término «inteligencia orgánica». Foto: Getty Images
─En más de una ocasión dijiste que no te gusta el término “inteligencia artificial”. ¿Por qué? ¿Qué proponés en su lugar?
─Soy ateo, por lo tanto no creo en un «alma» ni en una «chispa divina» ni en la teoría creacionista. Veo la mente humana como un conjunto de neuronas y sinapsis que se conectan entre sí y se «programan» con una programación que va aumentando con el tiempo. Para mí es simplemente una computadora electroquímica. Los informáticos llevan trabajando en la «IA» desde los tiempos de Alan Turing. Hemos subestimado mucho la mente humana. Es mucho más rápida, más compleja y más «astuta» de lo que jamás pensamos que podría ser. También hay una falta de conexión entre lo que la mayoría de la gente considera «inteligencia» y lo que muchos en el campo reconocen como «sistemas expertos».
─¿Cuál es esa diferencia?
─Un sistema experto puede tomar datos existentes y determinar la solución correcta aplicando reglas existentes contra esos datos. Un médico, por ejemplo, toma la temperatura, el pulso, la presión arterial y las observaciones de su cuerpo, y luego desaparece en su trastienda para buscarlos en un libro que sugiere quizás una o dos conclusiones alternativas. A continuación, el médico puede buscar otros datos para determinar mejor cuál es la enfermedad. Esto no es «inteligencia». Se trata simplemente de un experto que aplica reglas conocidas frente a los datos observados. Se podría entrenar a un chimpancé para hacerlo.
─¿Qué es, entonces, la “inteligencia”?
─La inteligencia aparece cuando se toman los datos y la intuición para crear nuevas relaciones (reglas) que se añaden a la base de conocimientos. Es el verdadero valor de una tesis doctoral. Algo que no se sabía ni se había demostrado antes se añade al ámbito del conocimiento. Albert Einstein era inteligente. Esto me lleva a la discusión de hoy, en la que la gente siempre piensa que las computadoras y los robots sólo podrán hacer los trabajos de «bajo nivel». Es un error. Con verdadera inteligencia serán capaces de hacer cualquier trabajo. Como ves, sólo hay «inteligencia». No es «artificial», como tampoco lo es nuestra propia inteligencia. Prefiero el término «inteligencia inorgánica», aunque podríamos construirla a partir de compuestos orgánicos en lugar de silicio o compuestos inorgánicos.
─Dijiste que no sos bueno prediciendo el futuro, pero tu discurso de apertura se titulaba «¡Qué largo y extraño viaje ha sido… y probablemente será!». Así que, ¿por qué creés que será un viaje extraño?
─¡Porque siempre lo ha sido! Empecé intentando ser ingeniero eléctrico. Todavía disfruto de la electrónica, pero la lógica de las computadoras y el software me ganaron. De niño leí que en los años 90 todos volaríamos con mochilas propulsoras y hablaríamos por radios y televisores de pulsera como Dick Tracy. Nos equivocamos un poco en cada uno de estos aspectos, y todavía estoy esperando mi mochila propulsora. Estoy orgulloso de haber contribuido a mejorar el campo de la informática y la vida en general. A lo largo del camino tuve acceso al código fuente de los programas que utilizaba, y comprendí el valor de tener ese código fuente. Me subo a los hombros de los que me precedieron. Ahora, en el ocaso (como ateo no espero el Cielo ni temo a la muerte el Infierno y la muerte) de mis años, sí deseo que la gente que está tan bien conectada por Internet y las computadoras que inventamos mis compañeros informáticos y yo los utilice más para difundir la paz en lugar de la guerra… el amor en lugar del odio.
─¿Alguna enseñanza de tus clases de aquella época que todavía repitas hoy?
─En la época de 1977-1980 dije a mis alumnos que nunca debían construir una computadora que no pudieran desconectar: creo que ese mensaje sigue siendo igual de cierto hoy en día y está, quizás, más vivo que nunca.
La charla completa de John «Maddog» Hall
Uno de los padres del software libre habló en Nerdearla (con subtítulos).
Todas las charlas de Nerdear.la se pueden ver acá
Posible Fuente