El nuevo look de ubuntu

marzo 4, 2010

El nuevo look de Ubuntu.

Ya estamos prontos a vivir el proceso de todos los abriles: El lanzamiento de la versión «x».04 de nuestro querido sistema operativo. Canonical anunció que la próxima, que será un LTS, tendría un nuevo look, pues acá está.

No dejen de mirar el «tema» que vendrá por defecto en 10.04, me gustaron los botones de las ventanas.

(igual me gustaba bastante el antiguo, pero como con todos los cambios habrá que acostumbrarse… Me gustó especialmente el nuevo logo de Xubuntu)

Es increíble, esto lo escribí hace un año y mucha agua ha pasado bajo el puente, sin embargo no he querido agregar nada nuevo a fin de conservarlo lo más fiel posible a su versión original.

Evolución Histórica de la Industria del Software Libre

Es imposible entender el software libre sin conocer su historia, es por ello que hemos decidido dedicarle un espacio dentro del presente trabajo.

El origen del software libre lo encontramos a fines de la década de los 50 y a comienzos de los años 60 ya que con los primeros desarrollos de software, comunidades de los denominados hackers[1] compartían el código de sus creaciones y las mejoras que a éste hacían. El estado de libertad y cooperación de estos pioneros recibe el nombre de ética hacker.[2]

En 1969 dos ingenieros de los laboratorios Bell de AT&T, Ken Thompson y Dennis Ritchie, crean el sistema operativo denominado Unix. La principal novedad de este sistema radica en el hecho de ser multiplataforma

Durante sus primeros años Unix solamente es usado y perfeccionado dentro de AT&T, hasta que en 1974 Thompson y Ritchie publican un artículo sobre Unix en el simposium de la Association for Computing Machinery (ACM), desde ese momento AT&T comienza a recibir solicitudes de universidades, centros de cómputo e incluso del gobierno de Estados Unidos a fin de obtener un copia del sistema, por lo que en poco tiempo Unix alcanza gran popularidad.

Una de las primeras universidades en adoptar Unix es la Universidad de Berkeley, la que lo utiliza para la investigación en materia de sistemas operativos. Sin embargo, pasado un tiempo AT&T retira el permiso de uso de Unix a la universidad. Por este motivo Berkeley decide promover la creación de su propio sistema operativo, el que basado en Unix, implementa todas las mejoras realizadas por dicha universidad al sistema de AT&T. Este sistema recibe el nombre de BSD[3] (Berkeley Software Distribution).

Debido a lo anterior, en la década de los años ochenta existen dos ramas de Unix, una producida por AT&T, la que día a día se va haciendo más privativa, agregando trabas a los usuarios para obtener el código y restringiendo las posibilidades de modificación y redistribución, mientras BSD, influida por el movimiento del software libre de Richard Stallman, cada vez va entregando más libertades a sus usuarios.[4]

Paralelamente a lo acontecido con BSD fueron apareciendo las compañías o empresas desarrolladoras de software tal como las conocemos hoy, éstas comienzan a contratar bajo cláusulas de exclusividad y confidencialidad a los antiguos hackers de Unix y de otros sistemas que se encontraban alrededor de los centros de cálculo de las universidades, lo que termina con la comunidad y cooperación científica reinante en los años setenta. Además, estas compañías ven en la restricción al acceso al código fuente una manera de conseguir una ventaja comparativa. Por estos motivos los hackers, su comunidad y su ética van desapareciendo del mundo universitario, que les era tan propio.

Desde el laboratorio de Inteligencia Artificial (IA LAB) del MIT, Richard M. Stallman vive toda esta evolución y observa con desagrado como su comunidad va desapareciendo y como va siendo despojado de lo que él considera sus libertades básicas como usuario de software.

Stallman desea resucitar la comunidad hacker, su ética y el desarrollo cooperativo, pero ve que no es suficiente con crear un par de programas de computadora y entregarlos a la comunidad para su uso y desarrollo libre, es necesario volver a poner en manos de los hackers un sistema operativo completamente libre, por lo que estima necesario crear un sistema operativo[5]. Así nace GNU[6], nombre que Stallman da al sistema operativo proyectado.

En este punto cabe hacer notar un detalle, debido a que “el desarrollo de un sistema operativo de principio a fin es un proyecto colosal[7]”, GNU desde un comienzo contiene piezas y programas existentes de software libre escritas por personas ajenas al proyecto. Este hecho denota una de las ventajas que tiempo mas tarde incentivaría a las empresas a desarrollar proyectos utilizando tecnologías libres: producir software libre ahorra al desarrollador trabajo ocioso, debido a que tiene a su disposición todo el trabajo realizado con anterioridad por la comunidad.

Casi al comienzo de su proyecto, Richard Stallman se da cuenta de una situación paradójica, la que explica de la siguiente manera:”Cuando un programa de software libre deja de estar en manos de su autor, esto no significa necesariamente que siga siendo software libre para cualquiera que se haga con una copia de él. Por ejemplo, el software de dominio público —software sin copyright— es software libre, pero cualquiera puede modificarlo y hacer una versión privativa a partir de él. Lo mismo ocurre con muchos programas libres con copyright que se distribuyen con licencias simples muy permisivas que autorizan el desarrollo de versiones privativas modificadas”[8]. Él no quiere que esto suceda con GNU, por lo que se aboca a encontrar una solución. Para ello crea lo que se ha denominado copyleft, que es un sistema de licencias que obliga al desarrollador que ocupa software librea a publicar el producto de dicho trabajo como Software Libre. De tal forma se aseguraba que todos los derivados de GNU serían Software Libre. En específico, la licencia que Stallman crea para GNU se denomina “GNU General Public License o GNU GPL”[9].

En 1985 Stallman crea la Free Software Foundation -FSF- a fin de promover y financiar GNU y otros proyectos de software libre.

El hecho de hacer GNU compatible con Unix acarrea una consecuencia inesperada, la calidad de muchos de los programas que se crean en GNU y la compatibilidad con Unix hace que muchos de sus componentes adquieran notoriedad y el interés de muchos para añadir funciones y depurar aquellas partes que funcionan de manera ineficiente. A fines de los años 80 GNU esta prácticamente listo, solo falta terminar la pieza final, el kernel.

En 1991 un estudiante de 21 años de edad, de la Universidad de Helsinki en Finlandia, llamado Linus Torvalds decide crear un núcleo -kernel- de sistema operativo basado en un clon de Unix llamado Minix[10]. Dicho kernel recibe el nombre de Linux. Rápidamente hackers del todo el mundo se interesan en el trabajo de Torvalds, y no pasa mucho tiempo antes de que comiencen a adosar Linux al sistema GNU, dando origen a lo que se conoce como GNU/Linux o simplemente Linux. El sistema operativo completamente libre, ya estaba listo.

GNU/Linux crece rápidamente, pero se encuentra limitado a los usuarios mas experimentados, principalmente por la ausencia de entornos de escritorio. Pero en el año 1996, el Proyecto KDE desarrolla el entorno de escritorio KDE -K Desktop Enviroment-, y en el año 1997 el desarrollador mexicano Miguel de Icaza, hace lo propio con el entorno Gnome. Esto hace de GNU/Linux un sistema amigable permitiendo el acercamiento de miles de usuarios.

También en 1997, Eric S. Raymond escribe el ensayo “La Catedral y el Bazar”, lo hace para relatar y conceptualizar su experiencia como coordinador de un proyecto de Software Libre, inspirado en el modelo de desarrollo Linux, creado por Linus Torvalds. Raymond estima que este modelo de desarrollo eficiente y económico puede revolucionar la industria del software, por lo que es necesario divulgar y acercar el software libre al mundo empresarial, con este fin, junto a Bruce Perens, funda la Open Source Initiative.

En aquel momento Microsoft remese el mercado de los navegadores web, con la inclusión de su navegador Internet Explorer en su sistema operativo, Windows, acaparando el mercado de los navegadores, posición que ostenta hasta el día de hoy. El principal rival de Internet Explorer, Netscape, ve en el movimiento Open Source y en el software libre una alternativa a fin de sobrevivir al fuerte golpe de Microsoft. Netscape se encontraba trabajando en el proyecto Mozilla, un navegador liviano y funcional, por lo que deciden liberar su código, ofreciendo a la comunidad la posibilidad de adaptarlo y agregar funcionalidades. La idea capta la atención del público rápidamente e incluso la revista Forbes y el Wall Street Journal publican artículos sobre él antes de su lanzamiento. El nombre que se da al navegador es Mozilla Firefox, tal es la popularidad que alcanza este navegador web que dentro de los 99 días siguientes a su lanzamiento es descargado por 25 millones de personas. Luego de Mozilla otro grande sigue su ejemplo, este es Sun Microsistem, que decide liberar el código de su suite de oficina StarOffice, con el nombre OpenOffice.

Cada día son más las empresas que siguen los ejemplos de Mozilla y Sun Microsistem, y deciden desarrollar y publicar sus productos con licencias libres. Incluso muchas empresas ofrecen versiones propias del sistema GNU/Linux, en un negocio que va en expansión captando cada vez a clientes mas importantes, a los que últimamente se han sumado, entre otros, el parlamente Francés y el New York Times.

NOTAS:
[1] A finales de los años 50, cuando los computadores eran gigantes del tamaño de un campo de fútbol, que funcionaban en modo texto e incluso con tarjetas perforadas, antes que existieran siquiera los estudios de informática en las universidades, alrededor de los centros de cálculo fueron surgiendo grupos de entusiastas que llevaban estas máquina a niveles insospechados, ellos recibieron el nombre de hackers -según algunos el nombre surge del hecho que encuentran atajos y soluciones ingeniosos a los problemas(hack es atajo en inglés) según otros, surge en los laboratorios de AT&T del sonido que hacen los aparatos al darle un golpe-. Lamentablemente en la actualidad la palabra se asocia a delincuentes, dedicados a romper sistemas informáticos, a los que preferimos llamar crackers. Asociar la palabra hackers a estos delincuentes es similar a asociar a los exploradores de la época de los descubrimientos a los corsarios y piratas que utilizan las rutas descubiertas por los primeros para cometer sus fechorías.
Para los hackers los retos intelectuales son tan importantes como la posibilidad de compartir sus resultados con el resto de la comunidad, por lo que el trabajo cooperativo y la costumbre de compartir la información son los fundamentos de lo que se ha denominado la ética hacker, ésta se inspira en el mundo académico y científico, donde las investigaciones y los resultados de éstas se comparten y publican, sirviendo de base para nuevas investigaciones. A su vez, la ética hacker sirve de fundamento a la ética del software libre.

[2] Más sobre los hackers y su ética en: Mas i Hernàndez, Jordi “Software libre: técnicamente viable, económicamente sostenible y socialmente justo” p.17 y ss., disponible en: http://www.softcatala.org/~jmas/swl/llibrejmas.pdf

[3] La importancia de BSD en la historia del software es innegable, debido a su licencia, tan libre que permite derivaciones privativas, ha sido usado como base para la creación de variados sistemas usados en la actualidad, por ejemplo, el sistema Solaris de Sun Microsystems y MacOS de Macintosh; también merecen especial mención las versiones libres de BSD: NetBSD quienes tienen como norte que su sistema funcione sobre el mayor número de plataformas (hardware) posible, OpenBSD orientado a la seguridad y que puede con razón jactarse de ser el sistema más seguro en la actualidad, FreeBSD el que busca llevar rendimiento eficiente al usuario de escritorio.

[4] Mas i Hernàndez, Jordi “Software libre: técnicamente viable, económicamente sostenible y socialmente justo” op.cit., p. 23.

[5] «(…) la primera cosa necesaria era crear un sistema operativo, el software crucial para empezar a utilizar un ordenador. Con un sistema operativo puedes hacer muchas cosas; sin él, ni siquiera puedes hacer funcionar un ordenador. Mediante un sistema operativo libre podríamos armar una nueva comunidad cooperativa de hackers —e invitar a todos a que se uniesen a ella. Y cualquiera podría utilizar un ordenador sin verse obligado previamente a conspirar para privar de esto a sus amigos.» Stallman, Richard “Software Libre para una Sociedad Libre”  p.19

[6] El nombre GNU es un acrónimo recursivo de “GNU’s not Unix” -GNU no es Unix– El mismo Stallman explica la decisión de basar su sistema en Unix y hacerlo compatible con este último “(…) Opté por crear un sistema compatible con Unix para dotarle así de portabilidad y facilitar el cambio a los usuarios de Unix.” (Stallman, Richard op. cit. p. 19).

[7] Stallman, Richard op. cit. p.20

[8] Stallman, Richard op. cit. p. 22

[9] La GNU GPL o simplemente GPL, es la licencia más usada por los desarrolladores de Software Libre, esto por la simplicidad y publicidad de su contenido, a lo que ayuda el hecho que la FSF la ha traducido a varias decenas de idiomas.

[10] Minix es un sistema operativo clon de Unix, creado por el profesor Andrew S. Tanenbaum de la Vri Universiteit de Ámsterdam, en el año 1987, con el objeto de enseñar a sus alumnos el diseño de sistemas operativos. El profesor Tanenbaum decide crear Minix, debido a la complejidad y a las restricciones (jurídicas) que Unix presenta. Debido a su carácter didáctico Minix es distribuido con su código fuente, pero no está permitida su modificación, ya que esto complicaría el sistema y dificultaría la comprensión de él por parte de los alumnos.

Hace muchos años, Jucca, un joven realizador de comic chileno, en una parodia de la guerra de las Galaxias nos presentaba a Obi Wan junto a un imberbe luke mirando Valparaíso desde un risco mientras le decía: «La Bahía de Valparaíso, nunca se ha visto tanta maldad reunida en un sólo punto» a lo que Luke respondía con un sincero:»Sí, supe que todavía estan webiando pa’ llevarse el Congreso a Santiago».

Debido a los últimos acontecimientos en ubuntu-cl recuerdo constantemente esa viñeta.

Ayer muchos me pidieron que como Concilio tomáramos una posición en esta materia, pero creo que mi estimado amigo Mauricio Peñaloza tiene razón, estamos en un momento intermedio entre un Concilio y otro, por ello he decidido escribir esto a título personal, simplemente como un miembro de la comunidad y sin representar a nadie.

Antes de explicar mi posición haré un resumen (libre) de los hechos.

Desde hace más de un año la comunidad de ubuntu-cl tomó la determinación que el foro requería una modificación. Luego de una discusión que tomó meses, en la que se escuchó a todo aquél que tuviera algo que decir, se tomó la determinación que lo más óptimo era la migración a ubuntuforums, dejando el espacio que nos recibió por tanto años y en el que muchos de nosotros pasamos muchas horas de nuestras vidas. (En lo personal, en dicho lugar he creado grandes amistades, y me sirvió como distracción en momentos bastante áridos de mi vida, por lo que la decisión de migrar no fue fácil).

Dicha decisión fue tomada por el Concilio y por el GrupoForo en una votación conjunta.

El motivo de la migración fue lograr aumentar la incorporación de nuestra comunidad a la comunidad internacional ubuntu.

Este punto en particular ha sido mal entendido por algunos, que creen ver en esto un afán de acercamiento a Canonical, todo ello con la intención de lograr beneficios oscuros. No pueden estar más lejos de la realidad, solamente diré que Canonical y la Comunidad Ubuntu no son lo mismo, y es esta última y no aquella la que se mueve en ubuntuforums.

No voy a seguir argumentando la migración, porque es una decisión tomada y odio explicar las decisiones tomadas con publicidad y discusión previa (ya realizar esta presentación me obliga a desperdiciar el tiempo que semanalmente dedico a ubuntu-cl, en cosas del pasado, cuando tengo un par de proyectos esperando para ser realizados).

Lo que haré será recordar a todos y en especial a las personas que están descontentas, dos cosas: el Concepto Ubuntu y el Código de Conducta.

Ubuntu es un concepto Africano, (ahora si que no me equivoco Peñaloza! :D) que explicado en las palabras del Arzobispo (Primado) Desmond Tutu es así:
«Una persona con ubuntu es abierta y está disponible para los demás, respalda a los demás, no se siente amenazado cuando otros son capaces y son buenos en algo, porque está seguro de sí mismo ya que sabe que pertenece a una gran totalidad, que se decrece cuando otras personas son humilladas o menospreciadas, cuando otros son torturados u oprimidos.» (Desmond Tutu)

Llevando esta verdad al problema que nos preocupa (nadie ha oprimido ni torturado a nadie, aún :D) creo que encerrados en un foro local, nos alejamos de esa gran totalidad, perdemos la oportunidad de tener una conexión con otros amigos que tienen problemas y vivencias similares. Es cierto que la web no tiene fronteras y todas esas cosas que se dicen casi como cliché y que en nuestro antiguo foro teníamos algo de contacto internacional, pero no es menos cierto que en la web existen otras barreras muy distintas y más tenues que las fronteras, pero que tienen importancia a la hora de interactuar: necesidad de tener una cuenta de esto o aquello, la presencia, etc

Todas esas barreras caen cuando entramos en ubuntuforums. Por ejemplo, recuerdo a ElAleph, un amigo argentino que interactuaba en nuestro foro y creó muy buenas relaciones, hoy podrá seguir manteniendo el contacto con nosotros e interactuar con sus compatriotas usando la misma cuenta.

Finalmente el Código de Conducta: En uno de sus punto señala:

Cuando tenga desacuerdos. Consulte a los demás. Los desacuerdos, tanto políticos como técnicos, ocurren todo el tiempo y la comunidad Ubuntu no es la excepción. La meta importante no es evitar los desacuerdos o los diversos puntos de vista sino resolverlos constructivamente. Usted debería dirigirse a la comunidad y al proceso comunitario para buscar consejos y resolver desacuerdos. Tenemos la Mesa Técnica y el Consejo Comunitario, ambos de los cuales le ayudarán a decidir el camino correcto para Ubuntu. También hay muchos Equipos de Proyecto y Líderes de Equipo, quienes podrían ayudarle a encontrar cual dirección sería la más aceptable. Si usted en verdad quiere tomar un camino distinto, entonces le animamos a crear una distribución derivada o hacer disponible un conjunto alternativo de paquetes usando la estructura de Administración de Paquetes Ubuntu, de manera que la comunidad pueda probar sus cambios e ideas para si misma y contribuir a la discusión.

(Autobombo: la única traducción al español es la nuestra :D)

Resolverlos constructivamente implica, entre muchas otras cosas, no volver atrás en decisiones que se tomaron de manera legítima, es verdad que todos tenemos el justo derecho de hacer notar nuestro desagrado, pero cuando ello se vuelve una constante desgasta hasta a la persona más dura.

Finalmente una nota a los actuales administradores del foro de ubuntu-cl, primero agradecerles porque sin sus gestiones la migración no habría sido posible, animarlos en todos los proyectos que tienen en mente, con algunos de los cuales estoy especialmente entusiasmado (con otros no tanto :D) y decirles que lamentablemente tendrán muchos malos momentos, pero disfrutarán de otros en los que verán a personas dar sus primero pasos hacia este coto de libertad que tanto disfrutamos.

Hace algunos días un amigo me dio un gran dato: en Mplayer se puede adelantar y retroceder los subtítulos mientras se esta reproduciendo el video, ello es una gran utilidad para esas películas en las que los subtítulos se desincronizan con el video en la mitad.

Eso se hace con los botones «X» & «Z» del teclado dónde x adelanta y z retrocede.

Este dato mi amigo me lo entregó pensando en The Shield, dónde la versión que tenemos tiene un «previamente en The Shield» que hace que los subtítulos disponibles en todas partes no coincidan.

Bueno, yo uso el joystick como control remoto, y además para no estar parándome a usar el teclado para estos menesteres decidí asignar un par de teclas de mi joypad para realizar la misma función.

Lo hice siguiendo esta antigua entrada de este blog y agregando al final del archivo lo siguiente:

JOY_BTN2 sub_delay -0.1
JOY_BTN1 sub_delay +0.1

El archivo input.conf quedó así
#botones de joystick
JOY_BTN4 seek -5
JOY_BTN5 seek +5
JOY_BTN6 volume -1
JOY_BTN7 volume 1
JOY_BTN3 quit
JOY_BTN2 sub_delay -0.1
JOY_BTN1 sub_delay +0.1

Luego de finalizada FLISoL Viña del Mar – Valparaíso, y respondiendo a la solicitud aparecida ayer en la lista de correos de ubuntu-cl de publicar impresiones sobre nuestra participación en FLISoL con el afán de hacer «autobombo» no recuerdo en qué lugar (ni a esta altura me interesa mucho) he decidido colocar mi impresión sobre FLISoL Viña del Mar – Valparaíso y nuestra participación en ella.

Lo primero que debo señalar es que una vez más estuve gratamente sorprendido con la organización del evento, en este punto y conociendo las dificultades a las que se enfrenta el equipo de organización (Delia y Jorge) no puedo sino felicitarlos y expresar mi admiración por la coordinación, cumplimiento de los horarios y la cantidad de personas (en aumento) que logran convocar. (cada vez el tipo de personas que llega a este evento es más variopinta, ya no son solamente gorditos de lentes ni flacos raquíticos)

Asistieron más de 300 personas (300 eran los registrados y desde donde yo estaba pude ver que muy poca gente de la que entraba al evento se registraba)

Algo interesante y que me llamó la atención fue que hasta los guardias de seguridad se interesaron por el software libre y por ubuntu en particular 😀

Dicho lo anterior voy a lo mio, seguramente hoy leeremos en la lista de correos y en el planeta ubuntu varios correos y publicaciones sobre lo bueno y lo superiores que somos. En lo personal creo que fui al evento solamente a pasar vergüenzas, a poner la cara por una comunidad que en este evento fue algo irresponsable y no supo estar a la altura.

Toda la gente me pedía que explicara las ventajas de ubuntu (una de las cuales es la fortaleza de la comunidad) y acto seguido tenía que explicar por qué no había gente de ubuntu-cl instalando. Para eso, tal vez, es mejor no estar.

Mi culpa: Creo que no hice suficiente ruido, pese a que publiqué una solicitud en el foro y varios mails en la lista de correos.
Creo que desde un primer momento expresé que estaba impedido de asistir a reuniones de coordinación porque estoy colapsado y porque es medio absurdo que yo asista desde Quillota a reuniones en Viña.
Debí ser mas vehemente en la solicitud de ayuda.
No quiero pensar que mi culpa fue seguir en el barco hasta el final y no retirarme cuando se estaba hundiendo.

La instalación de ubuntu fue un desastre, llegaron algunos voluntarios (alumnos del instituto) pero ni siquiera tenían discos para instalar. Creo que hicieron lo que pudieron y que gracias a ellos la cosa no fue un desastre total.
Como no me podía mover del stand, tuve que mandar algunos discos para los instaladores, la persona que envié cuando se vio con los discos en las manos se entusiasmó y se los llevó para la casa. Plop!
Ignoro cuantos computadores se instalaron y no quise preguntar porque no era mi intensión seguir pidiendo disculpas.

Un dato casi anecdótico: para otra ocasión debemos tener más discos, sacaba 10 discos y antes de darme cuenta ya no quedaba ninguno.

En fin, tal vez sería bueno que desde Santiago, dónde seguramente estaban golpeándose unos con otros para poder participar en algo, nos enviaran gente para apoyar a las regiones (el dinero para eso debe ser generado por la comunidad)

No todo puede ser malo, una día en solitario es mucho tiempo para pensar y analizar por lo que saqué muchas cosas en limpio.
1.- Todos mis esfuerzos irán al proyecto de captar nueva gente.
2.- Todos querían los transfers o no sé como se llama que tengo en mi note con el círculo de ubuntu, y preguntaban por todo tipo de tonteritas relacionadas con la distribución, debemos ya tener más poleras, tazones, transfers, llaveros, etc de ubuntu y ubuntu-cl (de calidad), para que con el producto de esas ventas financiar nuestra participación en este tipo de eventos y otros gastos como la internación de discos. Frente a esto ya tengo el dato del lugar que nos puede hacer todo ese tipo de artículos (para no tener que andar buscando, yo hago el contacto y los de las platas se arreglan con ella) nota: este punto no es contradictorio con el anterior porque creo que con estas cosas se capta gente (yo llegué a ubuntu-cl por los stickers)
3.- Hay una masa increíble de usuarios de ubuntu, un profesor del instituto luego de lanzarme un comentario sagaz sobre la pobre participación de nuestra comunidad, me comentó que en sus cursos una gran cantidad de alumnos son, más que usurios, fans de ubuntu.
¿No sería posible gestionar y realizar eventos de difusión de la comunidad en institutos o centros de estudio? pero no para hablar de la distro que hasta mi mamá sabe de qué se trata, sino que hablar de ubuntu-cl y sus actividades. La idea sería generar células de ubuntu-cl muy similar a lo que pasa con Pablox y sus boys en La Serena/Coquimbo.
5.- Observando la pasión que tienen los gorditos de lentes y los flacos raquíticos por las cámaras fotográficas gigantes recordé que quedó en el tintero un concurso de fotografía de paisajes chilenos para utilizar en el portal de ubuntu-cl y hacer algo similar a lo que tienen en ubuntu-uk (www.ubuntu-uk.org).

Bueno eso es mi opinión de FLISoL y de nuestra participación en el evento.

El cuento:

Hace un par de años que tengo un Walkman Sony NW-E002F y la verdad que nunca me preocupé mucho por hacerlo funcionar en Linux.

Para los que no conozcan este aparatito (que en su momento pretendío ser la competencia de sony al ipod shuffle) les cuento que los chicos de sony no entendieron muy bien por dónde iba la cosa en ese momento y para meter música dentro de este bicho es necesario utilizar una aplicación privativa, que solamente corre en Windows llamada SonicStage. (Me compré esta cosa sin saber esto… a veces me equivoco)

Siempre supe que existía una aplicación desarrollada por un chico para su novia que permitía hacer lo que hace SonicStage de forma más o menos cómoda dentro de Linux, pero la verdad cuando lo probé estaba en etapas tempranas de desarrollo y no me funcionó muy bien, en ese momento decidí buscar lo  que mis artistas favoritos podían ofrecer en 512 MB (para dejar esa «carga» de música fija) así que no me preocupé mucho del asunto. Luego me compré un teléfono al que podía meter la música directamente arrastrando y soltando desde Gnome así que el viejo Walkie se fue al cajón del escritorio.

¿Y a qué viene todo esto? A que se acumularon los siguientes hechos:

1.- Salidas en Bicicleta, por lo que necesito algo que escuchar.

2.- Los audífonos del teléfono aislan demasiado y yo aprecio mi vida.

3.- He descubierto que más apropiado que la música es escuchar gente diciendo imbecilidades (podcast) mientras pedaleo. Y esos se pueden escuchar solamente una vez.

4.- Entrar a Windows para hacer todo esto es un fastidio. (Para cualquier cosa es un fastidio).

Así que  decidí mirar como andaba el desarrollo de la aplicación que comentaba arriba, y resultó que se ha seguido desarrollando y ahora es algo robusto y estable (sigue sin ser agradable a la vista, pero no se puede pedir todo… yo me conformo con que funcione y creanme que lo hace a la perfección)

Instalación:

Lo primero que necesitamos es tener instalado java 5 o 6 runtime, si como buenos ciudadanos que son instalaron en su momento el metapaquete ubuntu-restricted-extras (un montón de paquetes que sirven para que su sistema pueda operar en un mondo bombardeado por software privativo: codecs de video y audio, el famoso .rar, los videitos de youtube, las letras de Microsoft, y java, entre otros) ya tendrán esta cosa dentro de su sistema, si no lo han hecho, no se compliquen la vida, que para problemas hay miles, e instalen el dichoso metapaquete:

sudo apt-get isntall ubuntu-restricted-extras

Luego debemos instalar ffmpeg -creo que es un codec-, no recuerdo si también está dentro del metapaquete pero igual pongan lo siguiente:

sudo apt-get install ffmpeg

Ahora llegó el momento de descargar la aplicación.
La encontrarán en la siguiente dirección:
http://sourceforge.net/project/showfiles.php?group_id=174319

Allí vamos a descargar nwe00xmp3man y dentro de Optionals el archivo zip que se llama OMGAUDIO.

El primero es la aplicación propiamente tal y la segunda es una carpeta virgen para colocar dentro de nuestro walkman.

Llegó el momento de conectar su aparato al USB del PC
Se abre una ventana de nautilus con el contenido de su reproductor (el que está montado en la carpeta /media/disk), dentro hay una carpeta OMGAUDIO, esa carpeta la respaldan (copian en su disco duro) y la reemplazan por una carpeta OMGAUDIO virgen que encontrarán dentro del zip que descargaron.

Esto es lo que encontrarán

Esto es lo que encontrarán

La aplicación es un archivo .jar, este archivo lo toman y lo pegan también dentro de su sony walkman (/media/disk), allí también crearemos una archivo (Boton derecho- Crear documento -Archivo Vacío) al que le daremos el nombre FileManager y escribiremos dentro de él lo siguiente:

java -jar /media/disk/NW-E00X_MP3_File_Manager-0.17a.jar &

Así se verá luego de colocar todo

Así se verá luego de colocar todo

Dónde le estamos diciendo que ejecute la aplicación NW-E00X_MP3_File_Manager-0.17a.jar  que se encuentra en la carpeta /media/disk (fijarse que coincida con la versión que descargaron sino coincide
simplemente cambiar lo que corresponda en esta linea de comando).

Nautilus posteriormente reconocerá que esa secuencia es ejecutable y haciendo doble click al archivo FileManager que hemos creado nos preguntará si queremos ejecutarla para lanzar la aplicación (les decimos que si).

De todas maneras podemos lanzar la aplicación digitando ese comando en cualquier terminal, pero es más cómodo hacerlo desde el FileManager.

Esta es la ventana de ejecutar

Esta es la ventana de ejecutar

Ojo que para lanzarla desde una terminal tienen que ubicarse en la carpeta en la que se encuentra el archivo .jar

La aplicación funcionando

La aplicación funcionando

Ahora solamente es cosa de agregar y quitar archivos con los botones de la izquierda y cuando estemos seguros de todo lo que hemos puesto apretar debemos el botón marcado con el diskette para salvar todo en el dispositivo.

Update:

El desarrollador de la aplicación se puso creativo y terminó con el desarrollo y comenzó una nueva aplicación, bueno el tendrá sus motivos; el asunto es que esta cosa funciona bien para la finalidad que tiene. Como resultado no encontrarán los archivos en los enlaces que aparecen allí pero si lo harán en el siguiente enlace:

http://sourceforge.net/project/showfiles.php?group_id=190494

El archivo se llama nweooxmp3man y dentro de él encontrarán (luego de descomprimir) el .jar y en la carpeta que tiene dentro el omgaudio.

Hoy en Software Libre: Concpeto y Mercado, nos toca hacer una pequeña reseña sobre lo que es una licencia de software.

Licencias de Software.

Podemos definir las licencias de software como un contrato por  medio del cuál el titular del derecho de autor del programa informático, que recibe el nombre de licenciante, cede el uso y/o la explotación de dicho programa a otro, que recibe el nombre de licenciatario.[1]

El licenciante será el titular del derecho de autor, ya que es en razón de dichos derechos que se encuentra facultado para establecer las condiciones de uso y explotación del software que ha creado. Debemos advertir que la licencia solamente puede tener por objeto un software existente, ya que no cabe hablar de licencia si lo que se acuerda es el encargo del desarrollo de un software que todavía no existe[2], en dicha situación estaríamos ante otro tipo de contrato, pero si se pretende calificar como contrato de licencia de software, debemos señalar que jurídicamente carece de objeto.[3]

Las licencias de software las podemos clasificar desde varios puntos de vista, pero para el presente trabajo utilizaremos dos categorías: aquellas que distinguen entre licencia típica y atípica; y la que distingue entre licencia libre y licencia privativa.

Licencias Típicas y Atípicas.

El criterio de distinción entre licencia típica y atípica gira en torno al hecho que existen ciertas licencias de software que debido a su uso masivo han devenido en estándares, convirtiéndose en licencias tipo. Los ejemplos más recurrentes son las licencias BSD, Xfree86, Mozilla y la GNU/GPL; sin embargo, cada autor es libre de estructurar la licencia con la que distribuye su software, en los términos que estime conveniente, es por ello que existen las licencias atípicas, que son aquellas que no se ajustan a estos estándares.

Dentro del mundo del software libre es común el uso de licencias típicas, lo anterior debido a la comodidad que la estandarización acarrea[4] ya que dichas licencias son más o menos familiares para todo el mundo ligado al software libre. Por otro lado la compatibilidad entre los diferentes programas y sistemas en los aspectos jurídicos son tan importantes para los desarrolladores como la compatibilidad en aspectos técnicos y la manera más fácil de asegurar dicha compatibilidad es utilizando la misma licencia que emplea el sistema destino de la aplicación creada, u otra licencia típica cuya compatibilidad con la licencia empleada por dicho sistema, sea ampliamente conocida.[5]

Licencias Libres y Privativas.

En términos simples diremos que las licencias libres son aquellas que entregan al licenciatario todas las libertades propias del usuario de software. Por consiguiente, licencia privativa será toda aquélla que restrinja, de alguna manera, dichas libertades. En este punto nos remitimos a todo lo dicho en su momento, sobre las libertades del usuario de software.

A su vez, las licencias libres admiten una subclasificación, entre aquellas que poseen cláusula Copyleft y aquellas licencias sin dicha cláusula.

La licencia libre con cláusula Copyleft “es aquella cuyos términos de distribución no permiten a los redistribuidores añadir a su licencia restricciones adicionales a las de la licencia de que se sirvieron.”[6]

La cláusula Copyleft fue creada por Richard Stallman y la Free Software Foundation con la finalidad de asegurar al desarrollador original de un software libre que todo desarrollador derivado, que pretenda publicar su producto derivado, deba hacerlo mediante una licencia que asegure las mismas libertades a los usuarios que las contempladas en la licencia original. El ejemplo típico de licencia con cláusula Copyleft es la licencia GNU/GPL.[7]

La naturaleza de dicha cláusula es la de una condición resolutoria, ya que el licenciante entrega al licenciatario las libertades propias del usuario de software, con la condición que la licencia de todo trabajo derivado entregue a sus respectivos usuarios las mismas libertades.

Por otro lado, en las licencias libres carentes de dicha cláusula, nada obsta al desarrollador derivado para publicar y distribuir su creación bajo una licencia privativa. Ejemplo típico de este tipo de licencia son la licencia BSD.[8]

Notas

[1] Nos hemos visto en la necesidad de elaborar una definición propia de licencias de software ya que la mayoría de los textos no se detienen en este punto, o estudian las licencias de software entregando una descripción detallada del proceso de formación del consentimiento, muestra de ello es: Nonius, Jorge “Introducción a las licencias de software libre

[2] Nonius, Jorge idem.

[3] El objeto es un requisito de existencia de los actos jurídicos.

[4] Nonius, jorge, op. cit., p. 26

[5] En tal sentido existen muchas organizaciones que llevan catastros de licencias de software a objeto de analizar las compatibilidades entre unas y otras, destaca en este sentido la Free Software Foundation, la que posee un completo catálogo de licencias libres y privativas, señalando además, en el caso de las licencias libres, tanto su compatibilidad o incompatibilidad con la licencia GNU/GPL, como el hecho de si posee o no cláusula Copyleft. Free Software Foundation, “Diversas licencias y comentarios sobre ellas

[6] Nonius, jorge, op. cit., p. 27

[7] Texto en Español (traducción no oficial) de la licencia GNU/GPL disponible en: http://www.viti.es/gnu/licenses/gpl.html

[8] BSD License Definition disponible en: http://www.linfo.org/bsdlicense.html

En Software Libre: Concepto y Mercado, nos toca analizar un par de conceptos que puede llevar a confusiones:

El Freeware y el Shareware

Aún dentro del software privativo, queremos definir dos conceptos que se tienden a asociar al software libre, pero que, en realidad, no son otra cosa que medios ingeniosos de publicidad o de venta de software privativo.

Freeware.

El Freeware[1] es un método de distribución de software privativo que busca captar el interés del usuario entregando una copia completamente operativa de dicho software, y sin límite en el tiempo, ofreciendo a la vez, la venta de una edición con más herramientas o más moderna del mismo software, o incluso la venta de hardware y otros productos asociados al programa[2].

Las licencias de freeware generalmente permiten su redistribución, pero es muy raro que den acceso al código fuente, ni menos permiten la modificación del software, e incluso más, en muchas ocasiones llegan a restringir el uso que se puede dar al producto. Ejemplos de freeware son: Windows Media Player, iTunes, Internet Explorer, Opera Browser, Quicktime.

Shareware:

El Shareware[3] es una modalidad de distribución de software, para que el mismo pueda ser evaluado de forma gratuita, dicha copia de evaluación puede no ser completa o bien caducar después de un período de uso. Si el usuario desea utilizar de forma permanente o completa dicho software, debe comprar su licencia. Con posterioridad a la compra el desarrollador envía al usuario una copia completa del programa o la clave necesaria para superar las limitaciones señaladas.

Este método de distribución de software ha tenido mucho éxito y ha ayudado a muchas pequeñas empresas desarrolladoras a tener acceso al público masivo, sin necesidad de una gran inversión en publicidad.

Sin embargo, de lo dicho anteriormente, aparece claramente que este método Shareware es incompatible con el software libre pues limita las libertades del usuario, tanto en la etapa de prueba como en la posterior a la adquisición de la licencia, ya que todo el sistema de negocio descansa en el poder que tiene el desarrollador de liberar de las trabas propias de la etapa de prueba a cada copia del software, previo pago del precio correspondiente. Y, una vez superadas dichas trabas, la única facultad que se da al usuario es la de utilizar el software, pero nada obsta que incluso dicha facultad esté restringida. En cuanto a la redistribución generalmente está permitida, pero sólo referente al producto de prueba, de tal forma que el nuevo usuario deberá comprar la licencia correspondiente si lo que desea es el producto libre del mecanismo de limitación.

Notas:

[1]“Free (gratis) + ware (software). Cualquier software que no requiere pago ni otra compensación por parte de los usuarios que los usan. Que sean gratuitos no significa que se pueda acceder a su código fuente. El término fue acuñado por Andrew Fluegelman en 1982”, Diccionario Informático Alegsa

[2] Ejemplo de esto es iTunes, exitoso software reproductor de música de la compañía Apple, cuyo principal objetivo es servir de nexo entre e la compañía y los usuarios a fin de promocionar su sistema de venta de contenidos multimedia y su hardware reproductor de audio y video: iPod.

[3]“De share (compartir) + ware (software). Un tipo de software que es distribuido gratuitamente exclusivamente para ser probado, pero posee restricciones en su funcionalidad o disponibilidad. Por lo general son limitados a 30 días de uso, pero también algunos desactivan opciones como «Guardar», o tienen limitado el número de veces que pueden ejecutarse, etc. En caso de que al usuario le convenza el software podrá comprarlo. El término fue acuñado por Bob Wallace.” Diccionario Informático Alegsa

Siguiendo con Software Libre: Concepto y Mercado, ahora nos toca señalar lo que entenderemos por software privativo.

Software Privativo.

Por oposición al concepto de software libre propuesto, podemos decir que software privativo es todo aquel software que priva a cualquier persona de las libertades de ejecutar, distribuir, estudiar, modificar y publicar dichas modificaciones. Lo determinante en esta definición es el hecho que las licencias privativas restringen de manera total o parcial las libertades de los usuarios del software.

Otras denominaciones no dan cuenta de esto, incluso llevan al error, ya que distraen de lo que realmente diferencia al software libre del software privativo. Algunos ejemplos son:

a) Software Propietario: Este nombre evoca la idea que sólo el software privativo tiene dueño, en el sentido que solamente el desarrollador del software privativo estaría amparado por el derecho de autor, pero esto no es así, ya que tanto el desarrollador de uno como de otro se encuentran amparados por  el estatuto dominical propio de la propiedad intelectual. Muy diferente es el tema de la manera que dicho creador autoriza la utilización de su obra, donde, como hemos dicho, tenemos que estar a lo señalado en el contrato de licencia.

b) Software Comercial: Este nombre entraña la idea que solamente el software privativo tiene potencial empresarial. Pero, como veremos, el software libre mantiene una industria que mueve gran cantidad de dinero, por lo que su potencial comercial es innegable. Debido a esta denominación muchas personas confunden el software libre con voluntariado, idea que no puede estar más alejada de la realidad, así por ejemplo, varias de las distribuciones más importantes de GNU/Linux son desarrolladas y mantenidas por grandes empresas[1], con un afán y vocación evidentemente comercial.

Notas:

[1] Por ejemplo, Ubuntu es propiedad de Canonical; SUSE Enterprise Linux es propiedad de Novell; Red Hat Enterprise Linux es propiedad de la empresa Red Hat

Retomando la transcripción de mi memoria a este blog, luego de intentar definir software libre, toca ocuparnos de otra manera de abordar la realidad del software libre, con otra perspectiva y prioridades: El Open Source.

Open Source (Código Abierto)

En el año 1998 dos importantes desarrolladores Eric S. Raymond y Bruce Perens[1], inspirados en el novedoso sistema de desarrollo implementado por Linus Torvalds en su kernel[2] Linux, ven la necesidad  y la oportunidad de acercar el software libre al mundo empresarial, para lograrlo atacan dos puntos:
a)La idea de gratuidad que la expresión Free software produce. Ya que el empresario desconfía de lo gratis; y,
b)El énfasis que la Free software Foundation[3] pone en el elemento ético, trasladando dicho acento a las ventajas técnicas y económicas que el software libre posee. De esta manera presentan al software libre como un modelo más eficiente de desarrollo de software[4].

A fin de lograr dichos objetivos acuñan el concepto Open Source (Código Abierto) y crean la Open Source Initiative (OSI), con el objeto dar un contenido al concepto de Open Source utilizan las Directrices Debian para el Software Libre[5] y elaboran lo que se conoce como Open Source Definition (Definición de Software de Código Abierto). Queremos señalar desde ya, que la Open Source Definition en ningún sentido se aleja de la idea central de la definición de software libre de Stallman y de la Free Software Foundation.

La Open Source Definition cuenta con diez puntos que a continuación reproducimos6:

1.    Redistribución Libre: La licencia no deberá impedir la venta o el ofrecimiento del software como parte de una distribución mayor, que contenga programas de diferentes fuentes. La licencia no deberá requerir el pago de los derechos de autor u otra tasa por dicha venta.
2.    Código Fuente: El programa tiene que incluir el código fuente, y tiene que permitir la distribución tanto en código fuente como en forma compilada. Si alguna forma de un producto no es distribuida con el código fuente, tiene que haber una forma, correspondientemente publicitada de obtener el código fuente a un precio razonable, preferentemente, una descarga a través de Internet sin cargo. A través del código fuente un programador puede modificar el programa. El código fuente deliberadamente ofuscado no está permitido. Las formas intermedias tales como la salida de un preprocesador o traductor no están permitidas.
3.    Trabajos Derivados: La licencia tiene que permitir modificaciones y trabajos derivados, y  además autorizar que ellos sean distribuidos bajo los mismos términos de la licencia del software original.
4.    Integridad Del Código Fuente Del Autor: La licencia puede impedir que el código fuente sea distribuido en forma modificada solamente si la licencia permite la distribución de «archivos parches» en conjunto con el código fuente, con el objetivo de modificar el programa al momento de compilarlo. La licencia tiene que permitir explícitamente la distribución del software construido a partir del código fuente modificado. La licencia puede requerir que los trabajos derivados tengan un nombre distinto o un número de versión distinto al del software original.
5.    No Discriminación de Personas o Grupos: La licencia no puede discriminar a ninguna persona o grupo de personas.
6.    No Discriminación de Campos Laborales: La licencia no puede restringir a nadie que haga uso del programa en un campo laboral específico. Por ejemplo, no puede impedir que el programa sea usado en un negocio, o que sea usado para una investigación genética.
7.    Distribución de la Licencia: Los derechos adjuntos al programa tienen que aplicarse a todos aquellos a los que se redistribuya el programa, sin la necesidad de pedir una licencia adicional para estas partes.
8.    La Licencia No Deberá que Ser Específica de un Producto: Los derechos adjuntos al programa no deberán depender de que el programa forme parte de una distribución particular de software. Si el programa es extraído de esa distribución y es usado o distribuido de acuerdo a los términos de la licencia del programa, todas las personas a las que el programa sea redistribuido deben tener los mismos derechos que son garantizados cuando forma parte de la distribución original.
9.    La Licencia No Puede Restringir a Otro Software: La licencia no tiene que colocar restricciones en otro software que es distribuido junto con el software licenciado. Por ejemplo, la licencia no tiene que insistir en que todos los otros programas distribuidos en el mismo medio tengan que ser software de código fuente abierto.
10.    La Licencia Debe Ser Tecnológicamente Neutra: no debe requerirse la aceptación de la licencia por medio de un acceso por clic de ratón o de otra forma específica del medio de soporte del software.

La Open Source Initiative ha dado un impulso innegable al software libre principalmente a través del cumplimiento del objetivo para el que fue creada, logrando la incorporación de un sinnúmero de empresas al movimiento. Pese a ello, debemos señalar que la expresión Open Source presenta un inconveniente mucho más grave que  la expresión free software. Tanto en inglés como en todo otro idioma Open Source tiene sólo una interpretación, código abierto (a la vista), lo que describe de manera acertada el proceso de desarrollo; sin embargo, esto nada tiene que ver con las libertades entregadas al usuario.

Lo anterior, por cuanto puede existir, y de hecho existe, software privativo desarrollado de manera similar al Open Source, entregando acceso al código a gran cantidad de personas a objeto de ayudar en la detección de errores y depuración del código. Sin embargo, el producto final limita al usuario en alguna o todas las libertades entregadas por el software libre.

A fin de evitar este problema y debido a que el término software libre en español no presenta inconveniente alguno, creemos que es el indicado para describir con precisión el objeto de nuestro trabajo. Por ello reservaremos la expresión Open Source, para referirnos al sistema de desarrollo propio del software libre, ya que si observamos la Open Source Definition, es  fomentar dicha práctica lo que este movimiento busca.

Notas:

[1]Bruce Perens, miembro activo de la comunidad del software libre, ex líder del  Proyecto Debian, entre sus muchos aportes destaca la “Bruce Perens’s Open Source Series”, una serie de libros de carácter técnico.

[2]Según el diccionario informático Alegsa, kernel o núcleo es “una parte esencial de un sistema operativo que provee los servicios más básicos del sistema. Se encarga de gestionar los recursos como el acceso seguro al hardware de la computadora. Se encarga también del multiplexado, determinando qué programa accederá a un determinado hardware si dos o más quieren usarlo al mismo tiempo. El kernel también ofrece una serie de abstracciones del hardware para que los programadores no tengan que acceder directamente al hardware, proceso que puede ser complicado.”
Otra explicación similar la encontramos en wikipedia: «En informática, el núcleo (también conocido en español con el anglicismo kernel, de raíces germánicas como kern) es la parte fundamental de un sistema operativo. Es el software responsable de facilitar a los distintos programas acceso seguro al hardware de la computadora o en forma más básica, es el encargado de gestionar recursos, a través de servicios de llamada al sistema. Como hay muchos programas y el acceso al hardware es limitado, el núcleo también se encarga de decidir qué programa podrá hacer uso de un dispositivo de hardware y durante cuánto tiempo, lo que se conoce como multiplexado. Acceder al hardware directamente puede ser realmente complejo, por lo que los núcleos suelen implementar una serie de abstracciones del hardware. Esto permite esconder la complejidad, y proporciona una interfaz limpia y uniforme al hardware subyacente, lo que facilita su uso para el programador.»

[3]La Free Software Foundation (FSF), fundada en 1985, está dedicada a promover el derecho de los usuarios de computadores a usar, estudiar, copiar, modificar, y redistribuir los programas de computador. La FSF promueve el desarrollo y uso del software libre, particularmente el sistema operativo GNU, ampliamente usado en su variante GNU/Linux. (Traducción libre del autor), más información disponible en: http://www.fsf.org/.

[4]Este nuevo modelo de desarrollo se inspira en el éxito de Linus Torvalds en el desarrollo de su kernel llamado Linux, al analizar dicho fenómeno en “La Catedral y el Bazar” Eric S. Raymond se detiene en un comentario de Torvalds y elabora lo que se ha denominado “Ley Linus”, la que establece que “dados muchos ojos todos los errores serán obvios”, además agrega que todo error por muy complejo que sea, deberá ser “transparente” para alguien, por lo que no necesariamente quién detecta un error será quién lo resuelva. La importancia de lo anterior radica en que unos de los aspectos más importantes y complejos del proceso de desarrollo de un software es la depuración del código, es decir la búsqueda y solución de errores, a fin de hacer el software más eficiente. Proceso que es completamente diferente si se trata de software libre o Privativo.

[5]El proyecto Debian es una distribución de GNU/Linux desarrollada y mantenida por la comunidad de usuarios (a diferencia de otras distribuciones como SUSE, Fedora o Ubuntu que son desarrolladas y mantenidas, principalmente, por empresas, Novell, RedHat y Canonical respectivamente). El proyecto Debian cuenta con un documento llamado “Contrato Social de Debian”, el que está compuesto de dos partes, la primera es una declaración de intenciones y principios del proyecto, la segunda se denomina “Debian Free Software Guidelines (DFSG)”-Directrices Debian para el Software Libre- lo que no es otra cosa que una definición de software libre hecha por la comunidad Debian. Dicha definición se divide en 10 puntos o directrices, los se encuentran en completa armonía con la definición elaborada por la Free Software Foundation.