martes 14 de julio de 2009

¿Por qué tiene éxito Twitter?

No voy a esconder la cabeza, yo siempre pensé, y creo que lo he dicho aquí, que Twitter era una mierda pinchada en un palo, que iba a durar lo que durara la moda, y que en el remoto caso de que la gente fuera tan idiota como para querer usar algo así, los servicios de mensajería instantanea podían copiar la idea fácilmente y, ya de paso, subir el límite de caracteres. El tiempo ha probado que estaba equivocado. ¿Por qué ha tenido tanto éxito twitter, entonces?

Una de las claves es la que podría afirmarse que es su principal debilidad: la brevedad de los mensajes. Autolimitar la expresividad a un puñado de caracteres en principio es una limitación absurda, pero no lo es. En una entrevista, Borges contaba que podía parecer que el verso libre es más sencillo que el verso tradicional, pues evita la obligación de tener que encajar los versos en la rima y la métrica concreta de la versificación escogida. Sin embargo, aclaraba Borges que con el tiempo había llegado a la conclusión opuesta: El verso con una estructura definida es un recipiente que obliga al pensamiento a adaptarse a unos límites, a ir en una dirección definida, mientras que con el verso libre el poeta se enfrenta a las infinitas posibilidades del lenguaje y tratar de discernir en ese pajar inabarcable no ya una aguja, sino la mejor de todas las pajas (batalla inhumana). Con Twitter pasa algo parecido, la necesidad de limitarse a 140 caracteres obliga a los usuarios a prescindir de los malos usos que aparecerían de disponer de más espacio, incita a concentrar la máxima expresividad en el mínimo espacio, hace de cada algo interesante que merece la pena leer. Muchos de los Tweets ni siquiera alcanzan el límite ni parecen requerir más, pues los usuarios se adaptan mentalmente a él.

Además, la brevedad consigue que leer decenas de Tweets sea algo sencillo, empleando tan solo unos pocos segundos. Al aumentar la longitud de los mensajes el tiempo necesario para leerlos y contestarlos puede multiplicarse exponencialmente. La fluidez de las conversaciones en Twitter depende directamente del límite de caracteres.

La otra clave del éxito de Twitter sin duda son las posibilidades de comunicación entre usuarios, que se han logrado combinando elementos del IRC y del IM. Hay millones de personas, y puedes dirigir tus mensajes a cualquiera de los usuarios, que todo el mundo los lea, y que el mundo lea los tuyos. Es decir, las comunicaciones entre personas son fundamentalmente públicas, porque incluso cuando son entre dos personas la conversación es accesible a otros, y se escribe teniendo esto en mente (si, se pueden configurar las actualizaciones como privadas, pero la mayoría no lo hacen). Esta es la razón por la que ningún sistema de IM puede lograr el éxito de twitter implementado un "visor de cambios de estado" de los contactos (como ha hecho Messenger). El modelo IM es fundamentalmente de relaciones privadas y estancas, se requiere agregar al contacto y que él te acepte. Twitter permite comunicarse con cualquiera sin que él te acepte. Puedes seguir a alguien sin que él te siga a ti, y viceversa. Hay algo remotamente parecido a "canales". Mal visto, Twitter es un IRC con gestión de contactos adaptada al carácter público de las conversaciones, con almacenamiento persistente y con interfaz web.

Mirado así, está claro que Twitter no es ninguna moda, sino que es algo que va a durar. Eso si, tarde o temprano lo comprará alguien porque por muy útil que sea me parece dificil sacar un solo céntimo de beneficios al sitio. Y no esperen que yo lo use, me cree una cuenta hace dos años, puse un mensaje de prueba y no he vuelto a encontrar motivos para decir nada más.

miércoles 8 de julio de 2009

¿Qué demonios ha anunciado realmente Google?

Todo el mundo lo está llamando cosas como "Chrome OS", "cloud-based operating system", "PC operating system", pero no habrá fuerza divina que me impida continuar utilizando las convenciones de toda la vida y denominar a lo que acaban de anunciar "distribución Linux". Otra distribución Linux más, pues no tiene nada que ver con Android.

La primera impresión que da este anuncio es que la comunidad Linux y del software libre se enfrenta a una nueva era. El apoyo de Google me parece que será tan importante y decisivo como lo fue en su día el de IBM. Al igual que en aquel caso, Google no parece sacar beneficio de este SO, al fin y al cabo sus ingresos vienen de la publicidad, el corazón real de su negocio son sus gigantescos clusteres. ¿A qué viene invertir tiempo, dinero y reputación en esto, si la interfaz de sus aplicaciones web funciona igual en IE que en Chrome, salvando las diferencias técnicas entre ambos? IBM confió en Linux no para ganar dinero con ello -no tiene su propia distro-, sino más bien como barrera contra Microsoft, parece aceptable pensar que Google esté haciendo exactamente lo mismo.

Pasando al SO en concreto, ¿qué anuncia realmente Google? En todos los sitios web donde se ha hablado, donde se está hablando de este anuncio, se ha dicho que la frase "los sistemas operativos en los que funcionan los navegadores fueron diseñados en una era en la que no había web" es una pulla hacia Windows. Mi opinión sin embargo es que tambien se refiere tanto a Linux como a Mac OS X. Y cuando dice que el nuevo SO Chrome es "nuestro intento de re-pensar como deberían ser los sistemas operativos", da la impresión de que no están hablando de crear la enésima distribución Linux, ni tan siquiera de ofrecer una distro con un nuevo sistema de ventanas, como afirman que han hecho, sino de algo diferente.

De momento solo sabemos de cierto que la descripción del stack de software de esta distro como "un sistema de ventanas nuevo sobre un kernel Linux" podría ser casi literal. Todo lo demás todo son conjeturas. Sin embargo, teniendo en cuenta la experiencia con Android, podemos decir que Google no tiene el más mínimo respeto a lo establecido; por ejemplo Android añade un nuevo subsistema de IPC en el kernel, y un nuevo modelo de seguridad, y muchos otros cambios (que, dicho sea de paso, han irritado a mucha gente, por considerarlos innecesarios y/o por haber sido hechos en sus oficinas, sin pedir opinión a nadie, sin esforzarse lo más mínimo por facilitar o incluso hacer posible que esas cosas pudieran ser incluidas en la rama principal del kernel).

Eso fue con Android, pero Android es Android. Cabe pensar que en este otro "Chrome OS" Google haya empleado a su mejor gente. La falta de respeto a lo establecido sería la misma, pero la genialidad de los programadores podría ser bastante más alta. Teniendo empleada a gente como Rob Pike, creador de Plan 9, ¿alguien cree posible que se dediquen a repensar "como deben ser los sistemas operativos" sin consultarle?

Cabría pensar, si se diera este último caso, que este nuevo SO fuera un gran proyecto de R&D, que incluso mandara a POSIX a tomar viento. O tal vez sea tan solo un envoltorio bonito de Chrome y un nuevo sistema de ventanas super-mega-guai. Me temo que para hacerse una idea real tendremos que esperar a que Google empiece a dar más detalles.

jueves 2 de julio de 2009

Valencia es la tierra del...sofware libre

Me acabo de enterar por LWN que Valencia (la comunidad autónoma) está aproximándose cada día más hacia el software libre, demostrando una vez más esas teorías del equilibrio entre el Bien y el Mal. Es decir, que el hecho de tener un gobierno autonómico que ha llevado a Valencia a ser proporcionalmente la comunidad con mayor deuda pública -a pesar de haber vivido una década de vacas gordas con boom inmobiliario que les permitia reducirla o al menos no aumentarla- no es obstáculo para que haya gente competente que tome buenas decisiones buena (para que no me llamen partidista añadiré que Castilla y León, que tambien ha estado gobernada por el mismo partido durante mucho tiempo, es la segunda menos endeudada, solo por detrás de Euskadi).

¿Por qué menciono todos estos datos económicos? Porque creo que son más importantes de lo que parecen, ¿se dedicaría Valencia a derrochar dinero en excentricidades de GNU/hippies con los tiempos que corren? Lo dudo (en realidad no lo dudo, los gobiernos derrochan dinero continuamente, pero sin falsas afirmaciones rotundas los posts quedan mucho peor).

La verdad es que tampoco es algo nuevo en la comunidad valenciana, hace tiempo que tienen su propia distro, y tambien tienen el aparentemente muy famoso gvsig, un programa cuya instalación en Linux es una tortura, por cierto (lo sé por experiencia propia, tuve que ayudar a alguien sin conocimientos de Linux a instalarlo). El proyecto de transición a software libre en realidad comenzó en 2003.

Los miembros del proyecto han escrito un magnífico informe sobre todo el proceso, donde se detalla los retos y dificultades a los que han tenido que enfrentarse. Y la verdad es que tras leerlo, da la impresión de haberse llevado el tema con mucha más seriedad que en Munich. Los dos principios sobre los que se basa todo el asunto son estos:

  • El proyecto no se financiará con recursos nuevos. Sólo se utilizarán los recursos ya asignados al Servicio de Organización e Informática.
  • Debe minimizarse la repercusión del proyecto en el trabajo diario del personal de la conselleria. Lo fundamental es el trabajo y no la herramienta

Como se puede ver, no se trata de ninguna guerra de religión, sino que se ha tomado como un objetivo dentro de las actividades del departamento, y al margen de intereses políticos. En el caso de Munich, no solo se ha enfatizado y publicitado exageradamente como "migración a Linux"; la decisión la tomó el ayuntamiento, no el departamento de informática, como consecuencia de ello se ha tomado como un proyecto ideológico de todo-o-nada, con un coste especial de 35€ millones, algo más que lo que hubiera costado mantenerlo todo con software propietario (esto lo han reconocido los propios promotores del proyecto).

Para que luego pensemos que en España no sabemos hacer las cosas bien cuando nos ponemos...

sábado 27 de junio de 2009

La insoportable levedad de Mono (II)

(Continuación de la primera parte)

Todas esas razones ya de por si suponen un problema para Mono considerando su objetivo de convertirse en plataforma de programación para Gnome. Pero dejando de lado estas razones que afectan más bien a los programadores, tambien hay que mirar las cosas del lado del usuario. Y en ese lado del campo, la razón por la que Mono no se ha convertido en algo imprescindible para los usuarios de Gnome es la ausencia de aplicaciones.

Personalmente, no tengo Mono instalado en mi sistema, tampoco lo tenía cuando utilizaba Gnome. Es decir, no lo necesito. ¿Tal vez no me he adentrado en el mundo de aplicaciones Mono? Bien, hagámoslo ahora, echemos un ojo a esto y a esto. Pero por mucho que lo miro y remiro, no veo nada que me interese de verdad, no veo nada imprescindible. Si que tengo aplicaciones pygtk de las que no podría prescindir (no podría vivir sin virt-manager), tengo alguna que otra aplicación GTK hecha en C o C++, tengo hasta una aplicación que hace uso de wxWidgets en su versión GTK, amule. Pero nada con Mono. ¿Monodevelop? Tengo eclipse, o Kdevelop. ¿Beagle? Pregunten a Ubuntu porque se pasaron a Tracker. ¿Gnome Do? Los paneles y menus normales me son suficientes. ¿Banshee? Este si que es atractivo, pero yo diría que lo es fundamentalmente por las carencias de rhytmbox. ¿F-spot? Tambien es atractivo, incluso intenté usarlo, pero ciertos bloqueos de la interfaz y fallos diversos me hicieron desinstalarle, y como tampoco soy de los que necesita un gestor de fotos no fue una gran pérdida.

En resumen, que a la hora de la verdad, las únicas aplicaciones Mono que personalmente veo algo interesantes son (aparte de mod_mono, que sin duda será útil para migraciones de ASP.NET) son banshee y f-spot, pero ninguna se me hace imprescindible, puedo prescindir de ambas fácilmente, o encontrar equivalentes superiores. Tal vez para algunas personas si que sean críticas, pero no dejan de poder contarse con los dedos de la mano.

Pero ojo: una de las aplicaciones estrella de Mono que se suelen citar es Tomboy. Y he de reconocer que cuando veo a alguien poner a una aplicación de notas como ejemplo del potencial de Mono lo siento, pero me da la risa. Y no porque las aplicaciones de notas sean cosa de risa -para muchas personas son imprescindibles y les ayudan a mejorar su productividad-, sino porque tampoco es que sean precisamente la aplicación más interesante que se puede enseñar en un escritorio. Cualquier programador novato puede solventar casi todas las necesidades básicas de los usuarios de aplicaciones de notas con una implementación muy simplista (como la que yo uso en KDE). La "wikificación" y la sincronización en red de notas que tiene no serán tan sencillas, pero tampoco son features precisamente críticas -sospecho que muchas aplicaciones de notas no tienen esas cosas simplemente porque les importa un rábano-, y tampoco es que se puedan programar solo usando C#.

El potencial de Mono debería mostrarse a los usuarios no con una aplicación de notas, sino con algo con más sustancia. Algo como, por ejemplo, una reescritura de Evolution (se dice que Mono surgió precisamente como reacción a su inmantenibilidad). O de Gimp, o de Openoffice, o de Pidgin, incluyendo una reimplementación completa de los protocolos de red. ¿Les parece que pido mucho? Es mucho, pero ya ven, no son propuestas exageradas: KDE tiene un equivalente de Evolution, de Gimp, de Pidgin y de OpenOffice.org, todas ellas más que decentes. Y todas ellas en....C++. Si Mono es tan awesome y tan superior a otros lenguajes de programación pues, carajo, deberían tener cosas así. Deberían demostrar su awesomeness con algo acorde a su grandeza, no con aplicaciones de notas.

Teniendo en cuenta la ausencia de aplicaciones imprescindibles, ¿debería ser sorprendente que una distro evite incluir mono por defecto en sus CDs? Las distros no son tan burras como algunos piensan, muchas han incluido e incluyen los drivers de nvidia y ati, y el plugin flash -o facilitan enormemente su instalación- cuando es necesario, cuando se trata de algo verdaderamente imprescindible la teología de licencias pasa a un segundo plano. En el caso de Mono, a mucha gente le desespera, y con razón, tener que incluir todo el runtime para unas pocas aplicaciones. Y a los usuarios tambien, claro.

martes 23 de junio de 2009

La lista de los 500 principales

Hoy acaba de ver la luz la edición de Junio de la lista de los 500 supercomputadores más potentes del mundo.

Las tendencias vienen a ser las de siempre: El 88.60% (443) utiliza Linux -y muchos de ellos utilizan Lustre-, frente a un 87.80% de hace 6 meses y un 85.40% de hace un año. Windows mantiene su cuota de cinco equipos (1%), Mac OS X sale de la lista (lo cual no creo que quite el sueño a ningún maquero), y Sun mantiene 1 equipo con OpenSolaris. En cuanto a procesadores, Intel sigue dominando, IBM es segundo gracias a los Cell, y AMD en tercer lugar.

Lustre es un magnifico ejemplo del desorden interno que sufría Sun (aunque no tan bueno como el de Java). Lustre es un sistema de archivos distribuido opensource diseñado en principio para Linux y muy exitoso: lo utilizan 2/3 de todos los equipos del TOP500, 7 de ellos están entre los 10 más potentes. Su equipo de desarrollo fue comprado para Sun, pero aun hoy Lustre sigue funcionando solo para Linux, con promesas de llegar a funcionar sobre ZFS desde 2007 (puede que se convierta en realidad con Lustre 2.0, que está en versión Alpha).

Como consecuencia (dejando de lado otras ventajas de Linux, como su soporte de Infiniband anterior al de otros sistemas), de los 5 equipos que Sun tiene en el TOP500 (más dos compartidos con Dell), todos excepto uno son Linux. No sé si se capta la ironía: Sun mantiene en nómina a los desarrolladores de Lustre, venden 5+2 equipos que entren en el TOP500 (fuera de esa lista habrá más, claro), todos excepto uno sin su SO, mientras que sus competidores venden alrededor de 330 sistemas con ese mismo software. Hasta desarrollar de cero un sistema de archivos distribuido sobre ZFS les hubiera salido más barato y rápido.