martes, 7 de julio de 2009

¿Por qué hay tantos proyectos opensource?

Recien leo sobre otro proyecto opensource más y sigo leyendo opiniones fundadas en una falta de comprensión de las razones por las cuales aparecen estos proyectos, en contrapartida por ejemplo, a unificar 10 proyectos similares y desarrollar con mayor número de recursos (más programadores).

El origen en general
Primero hay que tener en cuenta que la mayoría de los proyectos opensource de alto nivel nacen hoy de modo complejo, no por iniciativa de pocos programadores, normalmente tenemos algunos referentes, una necesidad común de varios entes, y principalmente el apoyo económico de algunos de esos entes como para sentar las bases productivas del proyecto, sea espacio web, servers alquilados de testing, e incluso una partida inicial de sueldos, 3 a 5 para los principales developers del proyecto.

La iniciativa comercial
Un modo en que nacen proyectos opensource es gracias a la iniciativa comercial privada. Exitosos proyectos como VirtualBox, Xen, JBoss, Openfire y otros han sido iniciativa comercial que se basa en los modelos de negocios opensource, los se comportan básicamente de este modo ultimamente: se crea un software opensource de alta calidad, se lo libera y cabalgando sobre el marketing barato de miles de usuarios que descargan y usan el software, se funda un stack de servicios de soporte e implementación. El modelo puede no parecer exitoso a simple vista, sin embargo dado el nivel de inversión relativamente bajo necesario para producir determinado tipo de software (VirtualBox por ejemplo), y que un nivel de ingresos mínimo, ínfimo, a nivel mundial consiste en cifras bastante elevadas si se puede alcanzar, normalmente un proyecto opensource bien planificado como emprendimiento y que cubra una necesidad, rápidamente recupera las inversiones iniciales.
Luego de este primer paso, algunas startups opensource modernas prosiguen en su camino empresarial individual y otras, si están enfocadas en satisfacer necesidades empresariales de alto nivel y ya tienen un alto nivel de inserción de mercado en EE.UU. principalmente, terminan recibiendo ofertas de compra para toda la empresa o para el producto (VirtualBox, Xen, JBoss, MySql, etc.). Hay productos opensource que son muy exitosos pero no reciben estas intenciones de compra (FreeNX, OpenXpertya, OpenBravo, etc. ), y ello es debido a que no suelen registrar mayor inserción comercial en mercados de altos niveles de rentabilidad.

La iniciativa no comercial
Tenemos otro origen para proyectos opensource en la iniciativa privada o pública y no comercial, tal como se dió masivamente al principio de la expansión del software opensource. En este caso hay muchos proyectos, de variado nivel de utilidad y variado nivel de desarrollo. Hoy es comun que pequeñas empresas y programadores desconocidos inicien su camino profesional desarrollando o mejorando aplicaciones opensource a un nivel en que reciben atención masiva desde Internet; este es el caso de uso de Google Summer of Code, donde la empresa aporta su cuota de colaboración al opensource en general, financiando (unos miles de U$S de pago en dos meses), y recompensando "talento" individual para que aporte lo suyo. Otros casos se dan en proyectos de universidades y centros de estudio en los cuales los programadores participantes reciben usualmente crédito académico considerable por participar y aportar, y así se obtiene software de alto nivel de calidad, tanto como programadores que toman contacto con los modelos de negocios opensource desde la "cuna". Los programadores individuales normalmente aportan pequeños desarrollos puntuales como primigenios experimentos de código, proto-proyectos personales profesionales-comerciales (para ganar prestigio, para crear una herramienta y luego de hacerse conocidos montar su negocio alrededor de ella por ejemplo), y al final tenemos el caso más raro hoy en día, el solitario hacker de código, que reutiliza código opensource y lo hace público, tal como exigen las licencias y el espíritu origen del software libre y del software opensource en general, hoy ya expandido dicho espíritu a la sociedad y a la economía en general.

Como evolucionan hasta ser populares o no
En fin, muchos de los proyectos exitosos y conocidos de hoy, principalmente los de gran envergadura como proyecto de desarrollo, son aquellos con buen soporte tras de sí (Xen, Postgresql, Ubuntu, Tomcat, Apache, LightHttpd, etc.);
Otros proyectos semi-conocidos o prácticamente desconocidos pero de buen nivel brillan un tiempo y algunos pasan a formar una comunidad interna de desarrollo que lo sostiene (Ututo, etc.), pero ello depende mucho de los motivos de las personas que crearon el proyecto, y muchos proyectos opensource nacen solo como una expresión individual de capacidad de desarrollo y ganas de compartir el resultado y/o con un apoyo en recursos vital para el sostenimiento de la iniciativa (SIU-Toba, Tuquito, etc.), prácticamente sin intención ni planes de lograr que una comunidad y terceros externos al origen del proyecto lo soporten y con pocos o ninguna comunidad de desarrollo fuera del ámbito donde se originó el proyecto; al terminarse el apoyo externo vital que sostuvo el proyecto y sin comunidad ni terceros que soporten el proyecto, este decae y se estanca. Por ende estos últimos software opensource no son muy utilizados, son casi desconocidos y no son particularmente apoyados por las comunidades de desarrolladores opensource (la mayoría residente en países con fuerte enfoque comercial-opensource: Brasil, EE.UU, EU, etc.), que suelen buscar una viabilidad comercial y profesional, tanto como la "calidad de código" del proyecto.

Conclusión
Espero que esto les haya aclarado a muchos porque hay tantos proyectos opensource "mediocres" como podría parecer a primera vista y de miles y miles solo hay unos pocos cientos de proyectos de alto nivel de calidad y alta popularidad comercial y/o comunitaria.

No hay comentarios: