Desmitificando a Linux

En el fin de semana han ocurrido dos flamigeros threads uno fue el que origino el post de Steve Vaughan-Nichols, en su blog Cyber Cynic sobre quién realmente escribe el kernel de Linux. El otro fue un mensaje enviado por Daniel Yucra a la lista del PLUG (Peruvian Linux User Group), denunciando que el ejercito peruano gastaría casi 2 millones de dólares en adquirir licencias Windows.

Lo único que me quedó claro, luego de ver la tónica de dichas discusiones, es que hay tanto fanatismo del lado de Linux, como lo puede haber en cualquier secta religiosa. Aunque este ha sido un tema que discutí en un post anterior titulado "Motín en CentOS o el mito de la solidaridad", al parecer aún hay muchas líneas que tipear en este tópico; y es que básicamente mucho de ese fanatismo se debe a mitos, leyendas de la era digital que es conveniente cuestionar para hacer que Linux vuelva a ser lo que su creador Linus Torvalds quizo que fuera en el momento que lo creo, una herramienta útil y una experiencia divertida.

Comencemos discutiendo el post de Vaughan-Nichols. En su post, Vaughan-Nichols, no hace más que comentar un informe preparado por Linux Foundation, titulado Linux Kernel Development, según el cuál el número de empresas que contribuyen código a Linux es muy superior al número de programadores individuales (es decir aquellos que no forman parte del staff de una gran corporación). Lo cuál es por una parte lógico y por otra una consecuencia de la gran aceptación que Linux ha ganado en el gran público. Una prueba de la creciente importancia de Linux para los negocios es que hasta Microsoft ahora ha decidido desarrollar código para Linux, aunque su motivación para ello es que sus entornos Windows puedan correr bien dentro de los entornos de virtualización de hardware en Linux como sistema operativo anfitrion.

¿Tiene acaso algo de malo, que un proyecto que comenzara como un hobby haya logrado tanto éxito comercial?, al parecer para muchos de los fanáticos del Free Software si lo tiene, comenzando por Stallman que se pasa recorriendo cuando escenario le dan para hablar y decir que debemos llamar al entorno GNU/Linux, tratando de menter su discurso político en medio de temas técnicos. En realidad bajo la lógica de Stallman no deberíamos de llamar a Ubuntu por su nombre sino GNU/Linux/Gnome/Ubuntu. Pero mientras Stallman se esfuerza por ser un personaje que atrae cámaras y micrófonos para difundir su mensaje político, Torvals se caracteriza por ser exactamente lo contrario, él evita las cámaras y hace una clara distinción entro lo técnico y lo político. Esto es tambien un resultado de que ambos pertenecen a generaciones diferentes, mientras Stallman es el clásico representante de la Generación Baby Boomer, Torvalds es el clásico representante de la Generación X.

Tal vez sea lo íronico del destino, pero justamente aquel que no deseaba cambiar el mundo terminó haciendolo y alcanzando una notoriedad no buscada, y por el contrario aquel pasó su vida renegando de cuanto existía y proponiendo cambios radicales terminó enredado en su propio laberinto y luego de más de casi 30 años de haber iniciado su proyecto Free Software a principios de los ochenta, no ha podido ver cristalizado su sueño de un sistema operativo 100% Free Software, teniendo que aceptar el kernel de un "outsider" para que su proyecto tuviera viabilidad práctica.

El éxito de Linux, no es más que el triunfo del pragmatismo contra el idealismo, en ese sentido Stallman tiene mucho más en común con Ballmer que con Torvalds o el Open Source en general. En un mundo en el cual los dos fundamentalismos de finales del siglo XX, el comunismo y el capitalismo radical han probado su falla para construir sociedades viables en el largo plazo, de la misma forma el pensamiento Free Software que propuso Stallman, o la idea del software como mercadería de Gates, no son la solución para un mercado del software sostenible en el largo plazo y una aproximación de Software como Servicio parece ser la más viable en estos momentos.

Respecto a si son más las empresas o los programadores individuales los que contribuyen más al kernel, es una discusión de fundamentalistas, no es una discusión de técnicos. Al final no interesa quien escriba el código, mientras el modelo de libre acceso al código fuente y la independencia de una sóla fuente de código se mantenga.

En cuanto a los casi $2 millones que planea gastar el ejercito peruano en comprar licencias Windows, más referencias en este link del SEACE, la idea de que podemos ahorrarnos esos dos millones usando software libre es muy apresurada. Básicamente el costo total de propiedad no esta determinado en su mayor parte por el costo de las licencias sino por el costo de la mano de obra. Mientras es mucho más económico contratar un técnico que instale, actualice y mantenga operando una plataforma Windows, no es lo mismo con una plataforma Linux.

Pongamoslo en cifras, mientras es fácil y barato contratar 100 técnicos certificados en plataforma Microsoft, no pagaremos más de $8,000 al año por cada uno, conseguir personal calificado en equivalente número para Linux sería mucho más costosos. En pocas palabras no podríamos encontrar ni la cantidad suficiente, además de que el costo unitario por cada profesional Linux sería muy superior. Tendremos que admintir que no es una cuestion de seguridad nacional, sino simplemente una cuestion de manetener los costos bajos, el presupuesto del ejercito es demasiado pequeño como para poder hacer un cambio estructural tan grande.

Los que hablan de que esta "dependencia" tecnológica nos vuelve vulnerables, hay que recordarles que el aporte del Perú al kernel Linux es casi inexistente. Cambiar a Linux todas las PCs de las fuerzas armadas, tampoco las vuelve más "independientes", las mainboard, CPU, discos duros, etc son fábricados fuera del país. Incluso no sabemos si los chinos que ensamblan las mainboard pueden añadir rootkit en los BIOS, que aprovechando la capacidad de virtualización de los nuevos procesadores pueden permanecer ocultos y corriendo en ring 0, invisibles para toda herramienta de auditoría corrida desde el sistema operativo, cualquiera que este sea.

Teorías de conspiración pueden haber tantas como se quieran, la realidad muchas veces suele ser más sencilla, y por lo general más simple de lo que los "expertos" suelen profetizar. En el caso del estado peruano usando Windows para todas sus agencias, la explicación es sencilla. El estado peruano paga tan poco que no podría retener profesionales calificados para que administren una plataforma Linux de la magnitud necesaria.

Microsoft señala a RedHat y Canonical como rivales

Es oficial, en el último Formulario 10-K presentado por Microsoft ante la SEC (Security and Exchanege Commision), por primera vez Microsoft nombra a dos distribuciones de Linux como sus competidores directos en el segmento de Sistemas Operativos de escritorio, aquí el texto:

"Client faces strong competition from well-established companies with differing approaches to the PC market. Competing commercial software products, including variants of Unix, are supplied by competitors such as Apple, Canonical, and Red Hat. Apple takes an integrated approach to the PC experience and has made inroads in share, particularly in the U.S. and in the consumer segment. The Linux operating system, which is also derived from Unix and is available without payment under a General Public License, has gained some acceptance, especially in emerging markets, as competitive pressures lead OEMs to reduce costs and new, lower-price PC form-factors gain adoption. Partners such as Hewlett-Packard and Intel have been actively working with alternative Linux-based operating systems."

Traducción:

"[La plataforma] Cliente enfrenta fuerte competencia de parte de compañías bien establecidas con diferentes soluciones a el mercado del PC. La competencia de productos de software comercial, incluyen variantes de Unix, que son suministradas por competidores como Apple, Canonical y RedHat. Apple toma una solución integral para la experiencia PC y ha hecho avances en su participación en el mecado, particularmente en Estados Unidos y en el segmento de consumo. El sistema operativo Linux, el cual es un derivado de Unix y esta disponible sin ningun pago bajo la licencia GPL, ha ganado alguna aceptación, especialmente en los mercados emergentes, como resultado de las presiones de competitividad que han llevado a los OEMs a reducir sus costos y las nuevas PC de bajo precio y factor de forma han ganado popularidad. Socios como Hewlett-Packard e Intel han estado activamente trabajando con sistemas operativos alternativos basados en Linux".

Recordemos que esta no es la primera vez que Microsoft reconoce la competencia que le representa el Open Source, hace ya un año en un post que titule "Microsoft califica al Open Source como un factor de riesgo", comentaba en ese entonces como Microsoft era completamente ignorante sobre que era el Open Source. Ahora lo único que nos deja claro es que también ignora que es Linux. Supongo que ese desconocimiento se debe a que el documento es escrito por abogados y contadores, que están más interesados en cumplir con los requisitos administrativos que en la exactitud técnica. Ya que como todos sabemos Linux NO es un derivado de Unix, a diferencia de Mac OS X, que si lo es pues desciende del código BSD.

En fin, tampoco es para que los fans de Linux canten victoria. Aún hay un muy largo camino que recorrer antes que alguna distribución de Linux sea tan masivamente aceptada como lo es Windows en el presente, pero al menos Ubuntu ha hecho una sólida penetración en los escritorios, especialmente como dice Microsoft en los mercados emergentes. Tengamos en cuenta además que Microsoft necesita mostrar una competencia para no ser considerado monopolio y no verse forzado a dividirse en dos o más empresas.

Un detalle importantes es que Microsoft no mensiona en este informe para nada a Google Chrome OS en sus factores de riesgo. Si hay una empresa que pueda realmente amenazar la hegemonía de Microsoft en el escritorio, esta sería Google. Nuevamente, la omision puede ser explicada si tomamos en cuenta que los redactores de este informe son abogados y contadores, para los cuales algo existe solamente si pueden encontrar un documento que lo sustente.

Al menos luego de un año, dos tendencias han quedado claras. La primera, es que debido a la crisis los consumidores están buscando productos más baratos y por ello las netbooks han crecido en popularidad y tamaño. La segunda, es que la popularidad del Open Source y de Linux en particular ha trascendido el clásico circulo de los especialistas al que se vio confinado durante años, para transformarce en un producto de consumo masivo.

Motín en CentOS o el mito de la solidaridad

Cuando hace un par de semanas Linus Torvalds en una entrevista ofrecida a Linux Magazine, dijo que el odio a Microsoft era una enfermedad y que el prefería llamar a Linux Open Source y no Free Software, ya que este último término tenía connotaciones políticas más alla de la esfera en la cual él deseaba formar parte, muchos de los talibanes del Free Software se rasgaron las vestiduras cual Caifás frente al sanedrín.

Y es que bajo los principios del Free Software, se supone que todos los hombres somos por naturaleza solidarios y deseamos compartir, pero las malévolas fuerzas a cargo de las grandes empresas desean quitarnos ese derecho e instinto natural de compartir e imponernos reglas artificiales que impidan ese libre tráfico de información. Es decir la FSF ha resucitado a Rousseau y su famosa máxima "El hombre es bueno por naturaleza". Aunque en los más de doscientos años desde que las ideas de Rousseau fueron expuestas la realidad se ha encargado de demostrarnos que no son ciertas esas supociones.

Prueba de la naturaleza egoísta del hombre es que en todo el proceso evolutivo, tanto biológico como sociológico, al que hemos estado sometidos como especie, no se ha caracterizado precisamente por la bondad, sino por la suma de individualismos. Un buen lugar para encontrar un listado detallado de ellos es la famosa obra del etólogo británico Richard Dawkins, "El gen egoísta".

Sin embargo, Stallman y la FSF nos quieren vender la idea opuesta. Tal vez cuando hayamos evolucionado un poco más esos principios sean ciertos, pero no lo parece en nuestros días. Una prueba más de lo poco sustentados en la realidad que son los principios de la FSF y su famosa GPL, es el motín con el que están amenazando los desarrolladores de CentOS al fundador y lider del proyecto Lance Davis, según ha reportado CNet. La manzana de la discordia es el manejo personal que hace Davis de la marca CentOS, asi como la poca transparencia de los destinos de los fondos recaudados a través de donaciones o anuncios de AdSense. Como única respuesta a las críticas, Davis ha suspendido la recepción de nuevas donaciones y ha retirado todos los anuncios AdSense del website.

Pero todo lo que esta sucediendo con CentOS no es nada nuevo, o al menos no debería serlo para los latinoamericanos. Pues para nosotros la historia está llena de abundantes ejemplos, donde un ideal termina siendo convertido en pretexto de un pequeño grupo para satisfacer sus apetitos personales. Siempre todo comienza con un gran descontento contra el statu quo, un líder aparece de la nada y propone acabar radicalmente con el problema, para luego terminar convirtiendose él mismo en el problema.

Y es muy claro desde el punto de vista pragmático que lo plantea Linus, que la gran motivación de todo ser humano tiene un fundamento egoísta, pensar en algo diferente es a la luz de la evidencia histórica conocida, es por decir lo menos poco probable. Por ello lo importante es crear un sistema en el cual reconociendo la naturaleza egoísta del ser humano, sólo se pueda tener grandes beneficios, haciendo cosas buenas. Aunque como siempre resulta mucho más fácil formularlo en la teoría que conseguirlo en la práctica.

El odio a Microsoft es una enfermedad

Cualquiera que escuchara una frase como el título de este post pensaría que habría sido dicha por Gates o Ballmer, sin embargo es una frase dicha por el mismo padre de Linux, Linus Torvalds, durante una entrevista de Linux Magazine (alternativamente puede leerse el extracto tambien en OS News). Las palabras textuales fueron estas:

I’m a big believer in "technology over politics". I don’t care who it comes from, as long as there are solid reasons for the code, and as long as we don’t have to worry about licensing etc issues.

[…]

I may make jokes about Microsoft at times, but at the same time, I think the Microsoft hatred is a disease. I believe in open development, and that very much involves not just making the source open, but also not shutting other people and companies out.

There are ‘extremists’ in the free software world, but that’s one major reason why I don’t call what I do ‘free software’ any more. I don’t want to be associated with the people for whom it’s about exclusion and hatred.

Traducción:

Yo soy un gran creyente en la "tecnología sobre la política". No me interesa que viene de donde, en tanto que haya sólidas razones para su código, y en tanto no tenga para nosotros preocupaciones relacionadas a temas de licencia.

[…]

Yo puedo hacer bromas sobre Microsoft algunas veces, pero al mismo tiempo, yo creo que el odio a Microsoft es una enfermedad. Yo creo en el desarrollo abierto, y que mucho de él involucra no sólo hacer Open Source, pero tambien no disparale a otras personas y compañías fuera del moviemiento.

Hay ‘extremistas’ en el mundo del software libre, pero esta es una de las principales razones por las que yo no llamo a lo que hago ‘free software’. Yo no deseo ser asociado con las personas para las cuales todo esta relacionado con exclusión y odio.

Realmente una lección de pragmatismo que muchos Linux fan deberían de tomar en cuenta. Y realmente me parece que las líneas que escribí hace menos de una semana en el post "Más pragamatismo y menos arrogancia" sobre la necesidad de repensar la forma como estamos desarrollando software deben trascender las actuales posturas, está bastante alineada con la posición que tiene Linus Torvalds. Al final lo que cuenta son los resultados, no el marketing.

Más pragmatismo y menos arrogancia

En la última semana casi todas las noticias del sector TIC han estado relacionadas al tema de seguridad, en ambos lados del actual escenario Open Source y Software Propietario. Así vimos como FireFox 3.5 presentó una grave falla de seguridad en el motor JavaScript que permitía ejecutar programas localmente en la máquina que corria el navegador con los mismos privilegios del usuario que lo estuviera ejecutando, aunque el problema ya esta solucionado ha dejado un mal sabor de boca entre los que somos usuarios de FF y que lo usamos diariamente como nuestro navegador por defecto. Pero las cosas en el otro lado tampoco estuvieron tranquilas Microsoft admitió y parchó un error en el componente ActiveX de Video del IE 7 que permitía a un atacante remoto poder ejecutar código arbitrario en la máquina donde se ejecutara el IE7. Lo increíble es que ambos lados han usado el defecto del otro para ocultar sus propias debilidades.

Por si fuera poco la última actualización del kernel (2.6.30) que se supone debería ser más segura, ha resultado introduciendo un nuevo tipo de error que permite aun atacante remoto usar declaraciones de punteros nulos, para poder ejecutar código arbitrario en el sistema Linux, saltandose todas las restricciones de seguridad de SELinux o AppArmor, más información en el blog Digital Underground.  Es decir en este momento el último kernel de Linux es tan vulnerable como lo puede ser Windows Vista (que es lo más seguro que tiene Microsoft a la fecha) a un atacante remoto. Esto hace que la promesa de Google de un Chrome OS libre de virus sea mucho más difícil de conseguir.

Por si fuera poco, todos nos dimos cuenta a raíz del incidente del "hackeo" a Twitter, que los grandes "gurús" de la web 2.0, están más interesados en como hacer dinero que en ofrecer un servicio con un mínimo de calidad. Y es que dicho incidente implicó tambien a un gigante de la web Google y su servicio Google Apps, al parecer los documentos que fueron robados por el hacker y luego publicados en diversos blogs, estaban almacenados en "la nube". Pero más que debido a un error del software del servicio de Google, se debió a que el password elegido por el administrador del servicio era "password". Como es de suponer todo el incidente anterior ha levantado críticas sobre lo recomendable o no de almacenar información sensible de una empresa en Internet, al menos ese ha sido el enfoque de un artículo aparecido en CNN titulado "El hackeo de Twitter levanta dudas sobre la ‘cloud computing’". Sin embargo lo que pasa por alto el artículo de CNN es el hecho de que todas las empresas necesitan compartir información y por eso existen soluciones como Lotus Notes o Microsoft Office SharePoint, si en cualquiera de los casos donde tenemos soluciones inhouse ponemos password débiles, igual es posible el acceso a información sensible.

Creo que como sociedad nos hemos movido muy rápido y hemos pasado de vivir prácticamente aislados unos de otros a estar en una sociedad en donde ya casi nada es un secreto. Como resultado de lo anterior necesitamos un tiempo para reajustar nuestros patrones sociales y reorganizar nuestra escala de valores, en la cuál la palabra "privacidad" resulta por decir lo menos anacrónica.

Además la soberbia que ha caracterizado a la comunidad Linux en los últimos años, basada en la falsa creencia de la invulnerabilidad de un kernel basado en principios de diseño que datan de finales de los sesenta, debe ser reevaluada y dar paso a una visión más pragmática y menos arrogante. Tanto la alternativa Windows como la Linux están siendo llevadas a los límites de sus capacidades, nuestro hardware es ahora mucho más potente, pero nuestro software sigue siendo igual de confiable a como este era hace 10 años.

Sin embargo hay lecciones que hemos podido aprender a lo largo de todos estos años, la primera es que es posible tener un sólo OS base que pueda ser escalado tanto hacia arriba como hacia abajo, Linux es una prueba de ello. Otra importante lección es que un GUI empotrado dentro del kernel es mucho más eficiente desde la perspectiva de un usuario típico, como Windows lo ha demostrado. Finalmente, no importa cuanto querramos engañarnos al pensar que las TIC están cambiando al mundo, aún somos un pequeño grupo de privilegiados con ingresos muy superiores al promedio, y pensar que las TIC deben enseñarse masivamente en las escuelas primarias o secundarias asi como se enseña a leer o escribir, es como querer enseñarles a como ser cirujano porque los cirujanos tienen más oportunidades laborales.

Lo que necesitamos para dar el siguiente paso en el sector de las TIC es más pragmatismo y menos arrogancia.