martes, 31 de julio de 2012

Conociendo a Tux


Tux es la mascota de Linux. En la página de la wikipedia hablan de sus orígenes. Este artículo pretende presentar a la entidad que hay detrás de esta mascota: Linux.


Técnicamente, Linux es el núcleo del sistema operativo GNU/Linux. Esto significa que en realidad, lo que muchas veces llamamos Linux en realidad se compone de más cosas. Por ejemplo, Xorg (que es el proyecto que permite utilizar tarjetas gráficas para representar imágenes en el computador).

Simplificación de la estructura del Sistema Operativo
Los usuarios utilizamos aplicaciones (LibreOffice, Firefox...) de usuario, y en ocasiones utilizamos aplicaciones de usuario que sirven de interfaz a las aplicaciones de sistema. Por ejemplo, un gestor de ficheros que nos permite copiar, borrar o mover ficheros de una carpeta en la tarjeta de la cámara fotográfica a otra en nuestro computador (estas tareas se realizan con aplicaciones de sistema). El sistema operativo dispone de una interfaz para que nuestros programas puedan usar el computador y que hoy habitualmente es gráfica (Windows, GNU/Linux, Mac OS,...) aunque todavía podemos encontrar múltiples ejemplos de otros tipos de interfaces (electrodomésticos programables, cajeros automáticos, etc.).

Como he dicho, Linux es tan sólo el núcleo del sistema operativo, por lo que muchos preferimos utilizar la expresión GNU/Linux para referirnos al sistema operativo en sí. Sin embargo, la mayor parte de la gente tiende a entender Linux como todo el sistema, y este artículo va en ese sentido también: y es que, como es de esperar, GNU tiene su propia mascota. Es común ver ambas mascotas juntas, por ejemplo en cursos, jornadas sobre GNU/Linux, etc.

 

Sobre la libertad

La otra característica relevante al hablar de GNU/Linux es de índole legal: su licencia GPL. GNU/Linux, como multitud de otro código, es Software Libre, en contraposíción al Software Privativo más conocido (p.ej., MS Windows, Mac OS, Photoshop...). El software libre es software que puede ser modificado o distribuido libremente por cualquier usuario, sin necesidad de pedir permiso o pagar cánones al propietario del software. En contraposición, el software privativo priva al usuario de tales derechos, siendo habitual que simplemente permita el uso del software en determinadas condiciones.

Es usual llamar Software Propietario al software privativo; esto es un error: en realidad, todo software tendrá al menos un propietario, salvo que se declare explícitamente "de dominio público" (como cualquier otra creación intelectual). Así, Linux es propiedad de Linus Tolvards. Que cualquiera pueda modificarlo y redistribuirlo (incluso venderlo) ¡no afecta al hecho de que el código original sea suyo!!

Para más cosas, véase:

 

Sobre su origen

En los artículos y manuales al uso es común que se asuma que el lector sabe muchas cosas de las que se está hablando. Sin embargo, la idea de los terminales Unix de hace 30 años apenas salía de refilón en alguna película americana. Podríamos considerar que Internet comenzó a existir en España en los años 90 del siglo XX y no estaríamos exagerando mucho.

Y es que hay dos momentos clave en el advenimiento de Linux que la mayor parte de lectores españoles no comprenden en su totalidad: el primero, cuando Stallman inicia el proyecto GNU; el segundo, cuando Tanenbaum publica Minix.

Los lectores de tales guías pueden estar familiarizados con Unix; incluso en España, puede que hayan comenzado su andadura informática con MS-DOS; pero para la mayor parte del público, esto no es así.

GNU busca crear un Sistema Operativo sin las limitaciones legales de Unix, pero sin apartarse demasiado de su funcionamiento. Por ello, se desarrollan herramientas que suplen a las existentes en Unix. Eso sí, también se pretende que el sistema operativo pueda funcionar en sistemas muy distintos.

Minix es una versión reducida de Unix para computadores personales; el objetivo de Tanenbaum no era más que proporcionar un ejemplo que los estudiantes pudiesen utilizar para estudiar el funcionamiento de Unix sin tener que pagar las entonces costosas licencias. Además, también podía acceder al código, si bien la publicación de Minix siguió un licenciamiento normal (privativo): podías obtener tu copia al comprar su libro, e incluso ver el código, pero no cambiarlo.

Tolvards trató de desarrollar algo así como una réplica de Minix, pero sin sus límites legales. Pronto comenzó a trabajar con otros programadores a través de Internet y enseguida se encajó el núcleo en el sistema GNU (que entonces aun carecía de dicho componente) en una simbiosis perfecta.

La enseñanza que podemos sacar de esto es lo que conocemos de Unix: GNU/Linux pretende ser, por imperativo de diseño, multiusuario, multipuesto (puede accederse desde otros computadores y ser ejecutado desde ellos); Linux tiene la red integrada (incluso para funcionar aislado). Para usar GNU/Linux utilizamos Terminales Virtuales, que son en realidad una versión de las antiguas consolas que se utilizaban antes para conectarse a un servidor Unix (aunque pueden ser terminales en modo texto o en modo gráfico, más habitualmente en éste, cada vez); incluso en el modo gráfico puedes utilizar Emuladores de Terminal, que son aplicaciones que abren una ventana y te permiten utilizar el computador como si estuvieses en un terminal en modo texto.

 

Sobre su distribución

Scientific Linux
Las Distribuciones surgen para solucionar los problemas derivados de la instalación y configuración de un sistema GNU/Linux. En lugar de instalar todo desde cero, un grupo de gente se encarga de empaquetar las partes principales del software (aplicaciones del sistema, núcleo y generalmente una selección de aplicaciones de usuario). Precisamente, pueden clasificarse atendiendo al sistema de empaquetamiento utilizado o a la selección de software de usuario. Hay distribuciones que usan uno de los sistemas de empaquetado más comunes: rpm (Red Hat Package Manager) o dpkg (Debian PacKaGe); hay distribuciones específicas (por ejemplo, Scientific Linux es una distribución basada en Red Hat creada y mantenida en el CERN).

Una distribución de Linux es, en resumidas cuentas, una colección de paquetes de software (programas) que incluyen el núcleo Linux, las herramientas GNU, y cierta cantidad de software para el usuario (navegadores, aplicaciones ofimáticas, etc.), además de algún sistema de instalación del sistema operativo en el computador del usuario, y de gestión de las aplicaciones instaladas o disponibles en dicha distribución. Hoy es frecuente que los instaladores de las distintas distribuciones ajusten el sistema de forma automática, aunque algunas distribuciones pueden dejar más libertad al usuario en esta tarea.

GNU/Linux funciona en un montón de sistemas muy heterogéneos, así que las distribuciones se centrarán en alguna plataforma dada. Hay especializaciones para computadores antiguos, para servidores Sparc, etc. De hecho, la experiencia del usuario con una distribución dada varía mucho en función de la selección de hardware en la que se centra cada una y el hardware concreto que tiene dicho usuario. Por ejemplo, la inclusión o no por defecto de un driver para utilizar una tarjeta WIFI determinada tendrá distinto valor para nosotros si nuestro computador dispone de dicha tarjeta o no.

Otra diferenciación importante desde el punto de vista de muchos usuarios es acerca de las licencias admisibles en el software a distribuir. Algunas distribuciones, por ejemplo, son muy reacias a incluir software patentado o con alguna licencia muy restrictiva. Esto es más importante si la distribución es una versión empresarial (SUSE Linux, Red Hat Enterprise Linux) o alguna versión de alguna forma dependiente de aquéllas (openSUSE, Fedora...); aunque las versiones empresariales también pueden incluir sus propios acuerdos de distribución de determinado software (por ejemplo, para Flash Player): las conocidas EULAS. Por eso muchas distribuciones no suelen incluir ciertos códecs multimedia, algunos drivers, etc.

jueves, 19 de julio de 2012

El largo camino a un mundo mejor (II): Aprendiendo a aprender

Recuerdo un artículo que contenía una entrevista a alguien entonces miembro del gobierno finlandés hace  unos 15 años. Entre otras cosas, hablaban del esfuerzo que había realizado Finlandia en educación en esa década: el principio que se habían fijado es que si bien todo el mundo es libre de elegir entre educación pública o educación privada, ninguna persona sensata elegiría la opción privada si la pública es mejor. Comenzaron entonces un plan de mejora e inversiones que, como elemento estrella, incluía la introducción de los computadores personales en todas las aulas. Esto fue a principios de la década de los 90 del siglo pasado.

Todo esto vino a mi mente hace algún tiempo, cuando se comenzó (o volvió) a tratar la educación española, aunque esta vez con miras a recortar la inversión en ese capítulo.

En alguno de los momentos álgidos del enésimo debate sobre el modelo de educación, en algún medio escrito citaron el caso finlandés. En tal medio venían a retomar una idea que había sido tratada por el diario "El País" durante otro de esos debates sobre educación a los que parece que nos hemos vuelto aficionados. Y digo esto porque discutimos mucho sobre los modelos posibles y lo que queremos, pero no dedicamos mucho tiempo de reflexión al asunto, así que supongo que habrá mucho de afición a este debate.

En el artículo de El País sobre el modelo finlandés se trataban de analizar los elementos que le habían procurado el éxito innegable, al menos en cuanto a las pruebas del llamado "Informe Pisa". El principal elemento considerado fue la autoridad de los maestros y su buena imagen general dentro de la sociedad, seguido de algunos comentarios sobre el sistema de becas de estudios y diversas consideraciones secundarias.

En ningún lado se hablaba de informática.

Incluso se publican artículos que tratan de minimizar el impacto de los computadores en las aulas. Según las tesis de los firmantes, es obvio que por mucho que se añadan computadores en las aulas, si no se les da un uso adecuado, no sólo no mejorarán las cosas sino que incluso serán contraproducentes.

"... un uso adecuado..."

Más desapercibida, como era de esperar, pasó una entrevista de Ana Pastor a  Bernardo Hernández, director mundial de productos emergentes de Google. Entre otras cosas, debería haber llamado la atención cuando Hernández dice algo así como "se deberían potenciar las ingenierías" y "de los últimos grandes éxitos empresariales, casi todos provienen de informáticos".

Parece evidente que de desarrollar redes sociales no puede vivir todo el mundo, y antes o después alguien tendrá que producir patatas y eventualmente matar cerdos, que es lo que se come, y es quizá la razón aducida con más frecuencia para evitar la "tecnificación" de la sociedad. ¿Hay quizás un punto de encuentro entre ambas posturas?

Los últimos años están marcados por la enésima crisis económica del sistema llamado "capitalismo". En dicho sistema, el capital, por su fácil intercambio y movilidad, es el principal factor económico. Tanto es así que el capital puede comprar el factor trabajo. Nos encontramos en realidad en una evolución del sistema feudal, donde los terratenientes son sustituidos por los poseedores de dinero en cualquiera de sus formas, aunque sea cierto que en teoría cualquier persona pueda cambiar de capa socioeconómica sin estar limitada por el parentesco, proporcionando una mayor sensación de permeabilidad entre grupos sociales de la realmente existente. Como ejemplo, de los grandes proyectos del ámbito informático de las últimas décadas a los que se refería Hernández, ni Bill Gates ni Mark zuckerberg eran de clase baja. En ese sentido, Steve Jobs podría marcar la excepción que confirma la regla, según el viejo dicho.

En realidad, las clases que poseen el capital no necesitan que el sistema optimice mucho los recursos disponibles. Uno podría ver esto como que si optimizas mucho los recursos, es como si de repente dispusieses de más: más, por supuesto, a repartir. Y como es de esperar, la posibilidad de perder el control de un porcentaje significativo de dichos recursos es algo que desearán evitar en la medida de lo posible. Es cierto que no se pueden poner puertas al campo, pero un sencillo paseo por el que está cerca de nuestras ciudades o pueblos nos mostrará un sinfín de alambradas y muros que se esfuerzan por conseguir un efecto similar.

De todas formas, no es el uso de los recursos de un país el único motivo para justificar la presencia de computadores en las aulas. Hay uno muy interesante y discutido: la socialización.

Hay mucha gente que se empeña en que en las últimas décadas hemos asistido a una especie de deshumanización del ser humano. Es posible que eso sea cierto. !Y loado sea!

Desde que se forjaron las primeras rutas comerciales, hemos ido reduciendo las distancias entre cualquier punto del globo. Julio Verne decía que podía darse la vuelta al mundo en 80 días en su famosa novela, y no sabemos si lo habría sorprendido mucho un avión militar o un teléfono móvil. Lo que sí sabemos es el efecto que la relación entre seres humanos ha tenido sobre cada individuo: una incesante mejora continua. En mi opinión, es muy fácil odiar o despreciar al desconocido, mientras que no lo es tanto con aquellos que copan las primeras posiciones en nuestras listas de contactos. También aprendemos que los retos de sus vidas, sean sus países más ricos o más pobres, y sus preocupaciones, sus aficciones y deseos no son tan diferentes de los nuestros.

En general, la vida hoy en España, por ejemplo, es mucho mejor que en la España de hace 60 años. Por entonces, la mayor preocupación de millones de españoles era la propia vida, mientras que hoy la mayoría tienen algún tipo de soporte o ayuda, mientras los demás se enfrentan a problemas como pagar la factura del nuevo smartphone. Pero nada es en vano y la sociedad ha aumentado muchísimo en complejidad; también la mejora en la esperanza de vida ha traído consigo un aumento de población brutal que hace que la distribución de recursos sea más compleja. Poco a poco la implantación de computadores es total en cualquier ámbito. La resistencia a los computadores y las redes digitales lleguen y ocupen las aulas (15 años después!!!) es un vano esfuerzo por alejar a nuestra juventud del mundo real en el que les toca vivir.

Y no solo de educación infantil, primaria y secundaria viven las personas. Es llamativo que en el siglo XXI alguien pueda completar una carrera universitaria sin tener la menor noción de informática (donde usar cierta suite ofimática no cuenta como "dominar informática"). Cómo en el mundo actual puede alguien estudiar seriamente cualquier área de conocimiento sin auxilio de la ciencia del tratamiento de la información es una pregunta casi del nivel de "por qué un asalariado puede votar al Partido Popular en España".

Y es que, al final, la computación es simplemente eso: la herramienta del ser humano para aprender, entre otras cosas, a ser realmente humano, lo que quiera que eso con el paso del tiempo signifique.

Tiempo, tiempo, tiempo!!!

Vaya, pasa el tiempo... es comenzar a trabajar (eso que en España va camino de ser algo de privilegiados, bien que sean unos privilegios un tanto discutibles) y los meses pasan y vuelan...

A mayo le siguió junio y a la que me descuido acaba julio... En fin, cosas más complicadas se han visto, aunque vista mi capacidad de auto-organización... qué demonios!! se hará lo que se pueda.

Ramén.