LIBERACIÓN DE APLICACIONES PROPIETARIAS Autor: Alfredo Romeo Molina Fecha: Agosto 2003 Licencia: GFDL 1.INTRODUCCIÓN Una de las grandes acusaciones que se le ha hecho históricamente a la comunidad del software libre es que la misma está formada por voluntarios. Bajo esta definición de la comunidad del software libre, encontramos un profundo desconocimiento de la realidad de la misma. Aunque en las primeras años y en multitud de proyectos este hecho ha podido ser verdad, la tendencia comienza a ser totalmente diferente. Proyectos que hayan nacido como independientes y que hayan comenzado desde abajo, creando el código desde cero, existen multitud de ellos (Sendmail, Gnumerics, GIMP). Sin embargo, existen áreas donde el software libre no ha llegado a penetrar por las propias características de los mercados. Estas áreas son normalmente nichos de mercado verticales donde las posibilidades de formar comunidades de interés entre desarrolladores es baja. De esta manera, la exisetncia de software libre en este tipo de mercado es prácticamente nula.Sin embargo, comenzamos a ver una tedencia donde empresas de software propietario están liberando aplicaciones que antaño eran propietarias, bajo licencias de software libre, gracias a las bondades que el mismo tiene. La publicación del ensayo La Catedral y el Bazar de Raymond [1] el año 1998, introdujo un nuevo concepto en el modelo de desarrollo del software. Las empresas comenzaron a comprender que la liberación de desarrollos propietarios era, no sólo una oportunidad de abrazar un modelo de negocio totalmente distinto y que no estaba testado, sino sobre todo, una manera nueva de enteder la importancia de una comunidad en el desarrollo de un programa informático. Este modelo de negocio sin embargo aún no ha sido explotado lo suficiente entre los miles de desarrollos propietarios existentes. Ya descrito por Raymond y posteriormente ampliado por Hecker (Sell it, Free it)[2], la liberación de aplicaciones constituye un campo por explotar por parte de las empresas de software propietario. En los siguentes epígrafes analizaremos las razones por las cuales es interesante liberar una aplicación, los requisitos, así como los pasos necesarios a realizar para la liberación, viendo algunos ejemplos de empresas que han comenzado a liberar aplicaciones. 2.¿POR QUÉ LIBERAR UNA APLICACIÓN? La liberación de una aplicación consiste en liberar el código, de tal manera que pueda ser modificado, copiado, y distribuído con total libertad. Una empresa de software propietario cifra normalmente su negocio en el código fuente del programa, ya que el mismo, representa la fuente de sus ingresos potenciales. Mediante el software propietario, la empresa cobra licencias de uso por el programa en cuestión. Sin embargo es posible que existan razones por las cuales,la liberación de una aplicación sea totalmente lógica. Desde razones de interés puramente financieras, hasta las estratégicas, pasando por las comerciales, las empresas que tienen software propietario, pueden abrazar las bondades que el software libre trae. Según Martin Fink [3] existen diferentes razones por las cuales una empresa con una aplicación propietaria tendría interés en liberar una aplicación, como la devaluación de un producto de la competencia, la estandarización una determinada tecnología, la reducción de costes. Cuando se decide la liberación de una aplicación no tienen por qué concurrir todas los factores que delineamos a continuación. Es posible que un solo factor anime a una institución a liberar desarrollos propietarios. * Estandarización de una tecnología La estandarización de una tecnología es la lógica detrás de muchas de las liberaciones. El carácter libre de la tecnología permite distribuir sin ningún tipo de trabas, de una manera masiva la aplicación con la consecuente extensión de la tecnología. La inexistencia de aplicaciones libres en un nicho de mercado, puede ser un poderoso reclamo para las empresas de software propietario. Si pensamos en un momento la lógica detrás de esta premisa, ésta es una de las estrategias que ha mantenido Microsoft a la hora de implantar el sistema operativo Windows como estándar de Facto entre los sistemas operativos de la tecnología. ¿Cómo ha sido posible la extensión de esta tecnología? En principio esto ha sido debido al efecto red [4], que le ha permitido amasar una cuota de mercado de más del 90% en determinados nichos como sistemas operativos y ofimática. Además del efecto red, el éxito ha sido debido al poderoso canal comercial construído alrededor de un sistema operativo y una suite ofimática, y quizás más importante, la extensión del mismo entre los usuarios finales a través de la "piratería". Según los datos publicados por la Business Software Alliance, España era el segundo país europeo con un índice de piratería informática más elevado. Esta aparente "gratuidad", ha ayudado a convertir a aplicaciones ofimáticas como Microsoft Office, en estándar de facto * Devaluación de un producto de la competencia Esta es una solución ideal para aquellas empresas de software propietario que por razones comerciales, no puedan competir en el mercado con aplicaciones propietarias. Si una empresa libera su código, automáticamente el valor de la aplicación competidora disminuirá notablemente, ya que habrá un producto sustitutivo de casi idénticas prestaciones a un coste prácticamente nulo. Así la aplicación propietaria queda afectada por la nueva situación del mercado, obligándole a medio-largo plazo a reaccionar ante este hecho. La empresa que libera, necesariamente no tiene que ver como unos ingresos a corto plazo, sino que se trata más de una estrategia a medio-largo plazo. Este es el caso de OpenOffice.org. Una de las razones detrás de la liberación de OpenOffice.org por parte de Sun fue la de mermar la cuenta de pérdidas y ganancias de Microsoft. Microsoft Office representa en la actulidad en torno a un 60% de los ingresos totales de Microsoft. El precio de Microsoft Office varía entre EUREUR300 y 800 euros en función de la versión. Por su parte OpenOffice.org cumple con las necesidades del 80% de los trabajadores y está disponible a través de la red, y de empresas dispuestas a ofrecer servicios sobre el mismo, desde formación hasta soporte. La irrupción de una aplicación tan robusta, estable, funcional y libre como OpenOffice.org ha mandado una clara pregunta a los ejecutivos de Microsoft: ¿cómo demostramos el precio de nuestra suite ofimática Microsoft Office frente a OpenOffice.org? ¿Qué valor podemos aportar al usuario? Esta pregunta es seguramente la que más se hacen en las oficinas de Redmond (EE.UU) ya que de ella depende gran parte de su cash-flow. La gratuidad de OpenOffice.org obliga a que Microsoft esté comenzando a llevar una nueva política de precios en cuanto a su nueva línea de servidores así como su suite ofimática, en las que podemos prever reducciones de entre un 20-30% sobre las licencias en los próximos años. Asímismo ocurre en el área de servidores. Conscientes del empuje de GNU/Linux en este área, Microsoft ha decidido reducir el precio en más de un 50% en alguna de sus gamas. Windows 2003 Web Edition es una versión reducida de Windows 2003, y tiene un precio de EUR399 frente a los EUR999 de la versión estándar. * Reducción de costes El desarrollo de servicios alrededor de la plataforma tecnológica de Amazon, hace que los costes de la misma sean demasiado caros para ser asumidos por una sola empresa, ya que dañaría gravementes sus arcas. ¿Qué mejor forma que liberar un proyecto de tal manera que todas aquellas empresas, instituciones, voluntarios, etc. que quieran colaborar puedan hacerlo? De esta manera, el coste de desarrollo es distribuído a través de toda la comunidad, con lo que los costes directamente imputables a la empresa se reducen a unas proporciones ínfimas. La reducción de costes es uno de las obsesiones de la industria financiera. Es aquí precisamente donde el refrán "en casa de herrero, cuchillo de palo" no se cumple. El ratio financiero de eficiencia (costes de explotación sobre ingresos totales) es para los bancos uno de los de obligado cumplimiento, por lo que gran parte del esfuerzo en esta industria se concentra en la reducción de márgenes a toda costa. Esta motivación fue la que llevó en el año 2001 al banco de Inversiones Dresdner Kleinwort Wassernstein a liberar Openadaptor [5], una plataforma que permite una integración mucho más fluída del flujo de información entre los diferentes sistemas de información del banco y sus clientes. Una vez liberada los costes de desarrollo, mantenimiento y evolución pueden ser distribuídos a lo largo de toda una industria, y no ser imputados sólo y exclusivamente a la empresa liberadora, así como no estar presos en el futuro de ningún dependencia tecnológica con una empresa en particular. * Hardware Las empresas vendedoras de Hardware tienen una gran oportunidad de ofrecer servicios de valor añadido en la oferta de sus equipos. Mediante el acuerdo con diferentes partners pueden liberar soluciones que permitan la venta adicional de equipos en base al valor añadido ofertado. La empresa de hardware puede desarrollar una aplicación y liberarla como modo de incentivar la venta del hardware. ¿Qué mejor solución para una empresa de telefonía móvil que venda teléfonos con cámara incorporada, que ofrecer la posibilidad de portales realizados con tecnología libre para que puedan alojar sus fotografías? La empresa ofrece tecnología libre desarrollada y evolucionada por los técnicos de la empresa, de una manera libre de tal manera que puedan construir web personales (blogs) en base a las fotografías que van tomando. Para ello, la empresa puede utilizar tecnología libre totalmente amoldable a los gustos de cada una de los usuarios. La situación win-to-win es clara para todas las partes envueltas. Los desarrolladores de la empresa de telefonía movil pueden liberar una aplicación personalizada para los modelos de cámaras que se tengan y a las funcionalidades existentes. La disponibilidad de la descarga directa de la aplicación, supone que cualquier persona pueda descargarla para usarla asociada a sus fotografía. * Discontinuidad de Aplicación Propietaria En ocasiones las empresas pueden ver la liberación de una aplicación como salida para un producto que será discontinuado con total seguridad por parte de una empresa de software propietario. De esta manera, la empresa productora de software no dejará completamente de lado a los clientes que en su día adquirieron la tecnología y que no la siguen manteniendo. 3.REQUISITOS PARA LA LIBERACIÓN DE UNA APLICACIÓN En función de quien sea el liberador de la aplicación, tendremos que justificar una serie de variables u otras. No podemos llevar a cabo el mismo análisis para una empresa que desarrolla software propietario, que para un organismo público o una institución educativa que tiene desarrollos propios. En el primer caso, el análisis debe ser obligatoriamente centrado en el rentabilidad de la empresa, que el segundo, deben ser considerados más factores, como los de impacto social de la liberación de una tecnología. Obsérvese que el término rentabilidad utilizado para referirnos a las empresas, no implica un retorno financiero como tal, sino que envuelve otros tipos de factores como el de responsabilidad social de la empresa. * Posicionamiento de la Aplicación Si una empresa es la que está evaluando la posible liberación de su aplicación, está tendrá que analizar su posicionamiento en el mercado. Si su aplicación es necesaria en un mercado determinado, tiene una cuota de mercado lo suficientemente amplia, o bien es considerada una killer application por parte de sus clientes, la liberación de una aplicación tiene que estar muy bien soportada por parte de un riguroso análisis del modelo de negocio perseguido. Los efectos positivos del software libre se producen cuando se es capaz de construir una gran comunidad de contribuidores. Si su aplicación es una que está definida a un nicho de mercado muy particlar, tenga en cuenta la dificultad para construir una comunidad alrededor de la misma. * Análisis Económico de una Liberación La liberación de una aplicación, no es baladí como veremos a continuación. Exige una serie de pasos que han de seguirse si se quiere tener la certeza de que tendrá éxito la liberación de nuestra aplicación. Estos pasos envuelven una serie de recursos que han de ser cuantificados desde el punto de vista económico. Es posible que liberar un proyecto necesite movilizar más de 10 desarrolladores a tiempo completo por parte de la empresa si el mercado al cual acudimos es el de una aplicación modularizada donde existen múltiples funcionalidades. El mantenimiento de este cuerpo de desarrolladores ha de ser evaluado por parte de la empresa que libera la aplicación. Si el retorno en la inversión directa no está clarificado, la empresa no debería invertir recursos en la contratación de desarrolladores. De todas maneras existen alternativas como la liberación de módulos, documentación o comunicación del proyecto, para poder formar una comunidad con un número elevado de desarrolladores sin que la empresa tenga que invertir un considerable tiempo * Análisis de Impacto Social de la Liberación de una Aplicación Hemos hablado anteriormente de que una institución o un organismo público debería realizar un análisis de impacto social de la liberación de una aplicación, para ver cuál sería el retorno tecnológico a la comunidad, para que pudiera volver a reutilizarse por parte de toda la sociedad. En muchas ocasiones estos organismos tanto privados como públicos mantienen desarollos importantes que pueden liberar para que otras instituciones, empresas y hasta los mismos ciudadanos, puedan utilizarlos. La liberación de una aplicación de gestión de recursos humanos que haya desarrollado una fundación u organización social, puede suponer un impacto social tremendo, ya que automáticamente que se producuce la liberación, un gran número de desrrolladores pueden comenzar a manipular la tecnología para acondicionarla a todo tipo de áreas. El impacto social puede ser enorme si esta tecnología está destinada al Tercer Sector. Análisis de Impacto Social deberían ser realizados donde se incluyeran el número de instituciones, personas, proyectos, áreas de trabajo, etc.al cual la aplicación estaría destinada. * Propiedad Intelectual de la Aplicación Liberada En muchas ocasiones, las aplicaciones contienen desarrollos de terceros, que mediante acuerdos con terceros se han integrado en la aplicación propietaria. Ésto tiene diferentes implicaciones desde el punto de vista legal que son necesarias entender. La empresa liberadora tendrá que realizar una cuidada auditoría legal para que pueda estar seguro, de que todo el código que se incluye en la aplicación propietaria ha sido desarrollado por la empresa y tiene todos los derechos sobre el mismo. Este es el aspecto que forma parte de la actual batalla de SCO frente a IBM, al acusar la primera a la segunda de utilizar en el kernel de GNU/Linux con líneas de código propietario. Independientemente de las razones detrás de la demanda (ver capítulo DAFO), es importante analizar la procedencia del código fuente para confirmar el 100% de la autoría del código. * Modularidad de la Aplicación La aplicación propietaria a liberar, tiene que tener la arquitectura necesaria para poder liberar la misma. Todo software puede ser liberado, pero su funcionalidad y las posibilidades de evolucionarlo están directamente relacionadas con la arquitectura herededada. Pongamos el ya mencionando OpenOffice.org y su liberación de código por parte de Sun. La modularidad de la aplicación hizo posible que pudieran ofrecese dos tipos de aplicaciones en función del código incoporado por parte de Sun en StarOffice. StarOffice incluye código de terceros, en su base de datos por ejemplo, por lo que la misma no puede ser incluída como tal en OpenOffice.org, cuya licencia si lo constituye como software libre. Por otra parte Netscape pasó gran parte del tiempo tras el anuncio de la liberación del codigo de Netscape, adaptándolo para que el mismo pudiera ser liberado. Estos costes no son baladís, por lo que un estudio en profundidad, tanto económico como legal es necesario. * Capacidad de Liderazgo & Capacidad de Coordinación El hecho de que las comunidades de software libre estén organizadas de una manera descentralizada al estilo bazar anteriormente descrito, no implica que la comunidad tenga que tener una direccion y liderazgo predefinidos.Una de las claves para el éxito de una comunidad se produce entre otras cosas por la existencia de un fuerte liderazgo así como por la existencia de unos buenos mecanismos de coordinación [6]. Es necesario que el grupo de desarrolladores que se haga cargo de conducir la aplicación en un futuro, sea consciente de las implicaciones que tiene el rol. Las comunidades de software libre están organizadas en base a la meritocracia. Frente al software propietario donde las funciones están perfectamente definidas, la naturaleza abierta de las comunidades de software libre permiten el que contribuidores que comenzaron haciendo las rutimas más básicas, hayan subido en un breve espacio de tiempo a convertirse en el principal coordinador del proyecto. Tener un líder de la comunidad que incentive las contribuciones por parte de terceros, así como sepa definir la evolución del proyecto, significará tener una gran parte del éxito asegurado. Además de este liderazgo, es necesario el mantener unos mecanismos de coordinación y de gestión de los programas absolutamente necesarios para el buen funcionamiento de la comunidad una vez implantada. El conocimiento de éstos por parte de la comunidad se antoja fundamental para el éxito de la aplicación liberada. 4.PASOS EN LA LIBERACIÓN DE UNA APLICACIÓN El modelo de liberación de código de Open:service está evolucionado desde otros modelos, aportando nuestro conocimiento de la comunidad de software libre española, así como las particularidades del mercado donde nos encontramos. Hemos conjugado las experiencias de los miembros de Open:service en actuaciones en diferentes proyectos en la comunidad como Hispalinux, GNOME, OpenOffice.org, etc., unido al conocimiento sobre modelos de negocio basados en el software libre. Nuestra metodología prevista presenta diferentes fases. La fase más importante es la conceptual, la del análisis del business case y valorar las ventajas y desventajas desde el punto de vista económico la liberación de la aplicación. Este análisis no sólo nos dará la misión del proyecto, sino cómo llevarlo a cabo para rentabilizarlo en su verdadera dimensión. Una vez concluída esta fase conoceremos los pasos que tendremos que seguir para liberar el proyecto en su conjunto, con su fase de implantación. La fase tercera se centra en el lanzamiento del proyecto y en la campaña de comunicación a realizar para el conocimiento por parte de la comunidad. La última fase se centra en la gestión y organización del proyecto y cómo la propia dinámica de la comunidad dará lugar a nuevas posibilidades de business cases en el futuro. Es muy importante reseñar que estas indicaciones son generales. No todos los proyectos de software libre porque las necesidades de cada una de los mercados en los que operan son totalmente diferentes. Por ejemplo, el proceso de liberación de una plataforma de e-learning sería totalmente diferente al que una empresa con una aplicación de gestión comercial. Si esta plataforma de e-learning tiene una base de clientes muy pequeña y su estabildad está aún por demostrar, tendrá que tener un enfoque diferente al de una aplicación madura que tenga una considerable base de clientes. El análisis, la implantación, el plan de comunicación y la gestión del proyecto, serán radicalmente diferentes. Fase 1. Análisis del Business Case. Construyendo el Plan de Negocio El análisis que una empresa tiene que llevar a cabo para la toma de la decisión sobre la liberación de una aplicación existente, no difiere mucho de un plan de negocio. Un plan de negocio se define como el documento vivo que contiene el modelo de negocio de una empresa/proyecto pasado, presente y futuro. La empresa desarrolladora al fin y al cabo tiene que analizar el retorno económico esperado en una posible liberación de la aplicación. El plan de negocio es el documento que analiza y expone cómo una empresa rentabilizará un proyecto, unidad de negocio. Para ello se analizan diferentes factores como son la situación del mercado donde operará la aplicación, las posibilidades de atraer desarrolladores en la comunidad, la situación legal de la aplicación en cuanto a los derechos de autor y la liberación bajo una nueva licencia. Por otra parte se estudiarán las propuestas de valor que se ofrece a los diferentes agentes (empresa, comunidad, clientes) así como un estudio económico pormenorizado analizando las diferentes líneas de negocio y los costes envueltos en los mismos. Este plan de negocio está centrado en un proyecto de liberación de código y los pasos a realizar para la construcción de una comunidad alrededor del mismo, además del análisis económico y financiero de las posibles líneas de negocio construidas alrededor de el mismo. Para analizar correctamente el business case que se nos plantea, necesitaremos de la colaboración activa por parte de la empresa liberadora para comprender exactamente el modelo de negocio previo de la aplicación y su posible evolución en un entorno libre. El Plan de Negocio para la liberación de la aplicación tendría que incluir los siguientes puntos: I.MISSION STATEMENT ¿Cuál es la visión del Proyecto?. ¿Hacia dónde se encamina el mismo? II.ANÁLISIS DE MERCADO: APLICACIONES OPENSOURCE Vs. PROPIETARIAS Análisis del mercado donde concurre la aplicación propietaria, así como de la competencia existente en el mercado, tanto desde el punto de vista propietario como libre. III.RELEVANCIA EN LA COMUNIDAD DE LA APLICACIÓN ¿Cuál es la relevancia de la comnidad en esta aplicacion? ¿Quién está interesado? IV. ARQUITECTURA. ANÁLISIS DE LA ARQUITECTURA ¿Cuál es la arquitectura de la aplicación? Qué posibilidades tenemos de modularizar la aplicación? Qué posibilidades de crear subproyectos? V. SITUACIÓN LEGAL ¿Cuál es la situación legal del actual desarrollo?¿Existe código de terceros?¿Está todo el código desarrollado por la empresa? VI. CREANDO LA COMUNIDAD (FASE 2 Y 3) ¿Cómo crear la comunidad? Pasos a seguir en la creación de la misma. Cuál es el Plan de Comunicación a realizar? VII. GESTIONANDO Y ORGANIZANDO LA APLICACIÓN (FASE 4) ¿Cómo gestionar el proyecto? ¿Qué organización es necesario realizar? VIII. PROPUESTAS DE VALOR: EMPRESA, CLIENTES, COMUNIDAD Bajo este epígrafe se analizan las propuestas de valor que la liberación de la aplicación significa tanto para la propia empresa, la actual clientela así como la comunidad. IX. ANÁLISIS DAFO Realización de un análisis DAFO de la situación de la aplicación en el contexto donde opera, analizando para ello los factores internos que presenta (fortalezas y debilidades) y los factores externos X.DESARROLLO EMPRESARIAL: RED DE ALIANZAS El desarrollo de la comunidad se verá fortalecido por la constitución de una red de alianzas con diferentes empresas, organismos, universidades, etc que habrá que planificar XI.ANÁLISIS COSTE - BENEFICIO. PREVISIONES FINANCIERAS Análisis financiero de las previsiones financieras de la liberación de un proyecto. ¿Cuáles son las variables que afectarán principalmente la rentabilidad de un proyecto? ¿Cuál es el umbral de rentabilidad del proyecto? XII. MÉTRICAS. MIDIENDO EL ÉXITO DEL PROYECTO. ¿Cuáles son las métricas necesarias para medir el éxito de un proyecto? XIII. PLAN DE SALIDA ¿Cuáles son los posibles planes de salida que la aplicación tiene y por ende la organización, en caso de que no se logren las métricas previstas? Fase 2. Plan de Implantación El plan de implantaciónr recoge los pasos necesarios desde la decisión de la liberación de la aplicación, hasta la liberación final a la comunidad. Durante esta fase el análisis se centra en el estudio técnico de la aplicación y los pasos necesarios para ofrecer la aplicación a la comunidad en los términos apropiados: saneamiento de código, selección de la licencia, desarrollo del portal, plan de formación, modelos de trabajo y organización de la comunidad, así como las necesidades de comunicación interna que se precisa en la comunidad. Partiendo de la base que el Plan de Negocio haya ofrecido, * Análisis de Arquitectura La primera fase envuelve un estudio sobre la actual arquitectura de la aplicación. ¿Es modularizable la aplicación?¿Se puede separar entre diferentes módulos libres y propietarios?. Este análisis es fundamental para poder acometer un proyecto de software libre con garantías. La modularización permite el poder trabajar de una manera descentralizada y con garantías de un trabajo mucho más ágil, si el mismo no es modularizable. * Saneamiento de código Es ncesario realiare una auditoría de código para saber que el mismo está 100% operativo y que se libere de la manera más limpia posible. Para ello en ocasiones será necesario documentar al máximo al mismo para que la comunidad pueda reducir al máximo el tiempo de familiarización con el código fuente. * Área Legal La parte legal se convierte en una de las claves más importantes para la liberación de una aplicación. Lo primero que el productor del software propietario debe decidir es bajo qué licencia de software libre (ver capítulo Entorno Legal) liberará la aplicación. Ante sí tiene diferentes opciones, desde las más libres como la GPL, hasta algunas algo más permisivas con la viralidad del software como la BSD. En función de la licencia sobre la cual libere la aplicación, las implicaciones serán unas y otras, por lo que recomendamos una exhaustiva auditoría del código así como el desarrollo de una estrategia legal (posibilidad de licencias duales) * Área de Infraestructura Es necesario tener un claro entendimiento de las herramientas de desarrollo y comunicación que la comunidad va a desarrollar. En función del uso que se haga de las mismas, el éxito de la comunidad será uno u otro. Habremos de decidir sobre la plataforma de desarrollo a utilizar como Collab.net, SourceForge, u otras. Éstas integran las herramientas necesarias para la organización de un proyecto de comunidad. Sourceforge por ejemplo es una de las plataformas más usadas para el desarrollo de proyectos de software libre .Es usada entre otros por IBM como plataforma de desarrollo. La neutralidad de una plataforma como ésta, facilita el desarrollo de proyecto conjuntos entre empresas rivales como es el caso de IBM y HP [7]. Collab.net por su parte es la elegida por Sun Microsystems para alojar sus proyectos de software libre * Formación Es necesario realizar un plan de formación que englobe a todas aquellas personas de la institución, tendente a sacar el mayor partido a las herramientas utilizadas. Cursos sobre el uso de -zillas (Issuezilla, Bugzilla), CVS, Wikis, Administración de Listas de correo, etc. serán imprescindibles para todas las personas envueltas en la comunidad,por lo que la elaboración de tutorials, cursos online, etc. es deseable contemplarlo. * Organización del Proyecto ¿Cuál será el organigrama del proyecto? ¿Cuál será el órgano de gobierno del proyecto? ¿Con cuántos subproyectos se cuentan en la actualidad? ¿Hacia donde tendemos? ¿Cómo afecta al actual organigrama de la empresa? Estas son algunas de las preguntas que la empresa que libera tiene que realizarse. Es fundamental tener una clara estructura definida de trabajo. La organización que libera tiene que tener en cuenta la dinámica propia de las comunidades, que no siempre tienen una evolución lógica. Se debe definir bien en qué diferentes subproyectos puede ser dividida el programa para dar más cabida a desarrolladores que sean especialistas en cada uno de los módulos en los que se trabaje * Recursos Humanos en el Proyecto El análisis de los recursos humanos es fundamental para conocer las posibilidades de liderar la comunidad en el futuro. ¿Con qué numero de desarrolladores se cuenta en la actualidad?¿Cuántas son las previsiones de desarrolladores con las que contaremos? ¿Cuántos dedicarán a tiempo completo al nuevo lanzamiento?¿Cuál es el umbral de rentabilidad de desarrolladores? Este tipo de preguntas es clave tenerlas clara para poder llevar de una manera exitosa el proyecto. Recordemos que una de las claves del éxito es la capacidad de liderazgo por parte de los desarrolladores que vayan a incorporarse al proyecto por parte de la emrpesa liberadora, así como la capacidad de organizar los mismos. Fase 3. Plan de Comunicación El plan de comunicación persigue especificar los pasos necesarios para dar a conocer la liberación de la aplicación al resto de la sociedad teniendo como máximo objetivo crear una comunidad numerosa alrededor de la aplicación. Ya hemos visto en la Parte I que una de las claves para la formación de comunidades, es la existencia de un numeros grupo de desarrolladores que respalden el proyecto. Para ello es necesario comunicar tanto externa como internamente el qué del proyecto, de ahí la importancia máxima de su planificación. La liberación de opengroupware en julio de 2003 vino acompañada de una campaña de comunicación en la que todos los coordinadores de marketing de OpenOffice.org traducimos una nota de prensa en cada uno de nuestros idiomas. Lo resultante fue que la web de opengroupware.org recibió más de 22 millones de hits durante el primer día de su existencia. * Concepto Campaña de comunicación para dar a conocer la liberación del desarrollo al resto de la comunidad y clientes objetivos. Se persigue que el desarrollo tenga el mayor impacto en toda la comunidad y que a partir de este impacto, se pueda implantar una comunidad fuerte detrás del proyecto. * Actividades & Canales Promocionales La liberación de una aplicación necesita de diferentes canales de comunicación para poder dar a conocer al resto del mundo que una aplicación está disponible para su descarga. Decimos el mundo porque las posibilidades de colaboración están abiertas para el ucraniano de Sebastopol, hasta el jamaicano de Kingston, pasando por el español de Cordoba, así que los canales de comunicación a utilizar, no se pueden centrar sólo y exclusivamente en el país de origen. El primer canal promocional que vamos a tener será el propio donde se encuentre alejada la web. Si decidimos mantener nuestra propia web, hemos de tener presente que si la aplicación es interesante, decenas de miles de hits nos llegarán por lo que el proyecto tiene que tener esta capacidad. Por otra parte es necesario la creación de un gabiente de prensa que sea el que coordine la emisión de notas de prensa. La capilaridad actual de la red, hace que una nota de prensa sobre alguna liberación de tecnología rápidamente se distribuya a lo largo de todo el mundo. Por ello, si queremos construir una comunidad global y con los mejores, es altamente recomendable la de notas de prensa, tanto en español como inglés, sobre la aplicación en cuestión. Incluimos a continuación la pregunta que recogía Slashdot [8] de un responsable de una pequeña aplicación para empresas inmobiliarias sobre el volumen de visitas que recibía su proyecto de software libre tras la realización de notas de prensa, y la respuesta dada por un miembro de la comunidad: Pregunta: "Normalmente hay un interés creciente cuando las notas de prensa son emitidas (en base al incremento a corto plazo de visitas a la website), pero vuelve al tráfico normal de 40 visitas por día meida a través de webaliza en un corto periodo de tiempo. Es ésto una anomalía?" Respuesta: "Esto parece bastante normal. Cuando realizas una nota de prensa, vas a atraer tráfico a la web (de ahí que las corporaciones estén liberando constantemente aplicacioneas). El hecho de que decrezcan, es totalmente normal, se espera que venga la gente, vea de qué va todo esto, descargue el tema y se vaya" El uso de sitios de noticias como Barrapunto, Slashdot, Hispalinux.net, Boletin de Hispalinux, etc. se hace imperativo. Todo esto se puede combiarn con la realización de diferentes actividades que puedan mantener la comunicación viva en el proyecto: evento de lanzamiento, evento anual, etc. Fase 4. Gestionando y Organizando el Proyecto Hemos comentado de la máxima importancia que unos buenos mecanismos de colaboración y desarrollo son imprescindibles para la conosolidación y por tanto éxito de un proyecto de liberación de software libre. Una vez lanzado el proyecto de liberación de la aplicación, un grupo de personas liderará la comunidad que se comience a reunir alrededor del proyecto. Para su correcto funcionamiento, diferentes áreas han de ser tenidas en cuenta previamente como son las propias de operaciones, las de mantenimiento, la comunicación y la dirección estratégica del proyecto. * Operaciones Es necesario tener claro cómo se realizarán las operaciones y bajo que plataforma de desarrollo. En caso de tener una aplicación interesante, la infraestructura tendrá que estar preparada para alojar una gran cantidad de usuarios que querrán descargarse la aplicación. La planificación de los costes de operaciones, mantenimiento y soporte han de ser analizados detenidamente para conocer. ¿Cuál es el mantenimiento que una plataforma de colaboración de las características elegidas? ¿Cuál es el nivel de usuarios que se necesita para el mantenimiento óptimo del proyecto? * Recursos Humanos Ya hemos dicho que uno de los aspectos más importantes para el desarrollo de una comunidad es contar con un número suficiente de desarrolladores que sean capaces de llevar hacia adelante la comunidad en su conjunto. En función de la aplicación, es posible que el número de desarrolladores necesario sea de 2 o de 28, por lo que un análisis se justifica para conocer dónde se encuentra el número ideal de desarrolladores para evolucionar la aplicación. Es posible que el anuncio de la aplicación no consiga atraer al número idel de desarrolladores que se necesitan para una evolución lógica del proyecto, por lo que la empresa tendrá que plantearse las acciones que llevará a cabo para atraer mayor número de programadores. Asimismo es necesario mantener una política de motivación entre los desarrolladores para mantenerlos en el proyecto. "Cariño" es lo que en muchas ocasiones necesitan, por lo que acciones de este tipo han de ser planificadas y tenidas en cuenta como base del éxito del proyecto. * Campaña de Comunicación La campaña de comunicación del proyecto es uno de los pasos más importantes que existen en la actualidad. Es fundamental que se conozca la existencia de una aplicación libre en el mercado y que los desarrolladores de todo el mundo puedan lanzarse a probarla. La planificación de ésta por tanto es más que fundamental. Se debe conocer cómo ser capaz de atraer la máxima atención sobre este asunto. * Comité de la Comunidad A medio plazo es ideal la creación de un comité de comunidad al modo que ya existe en otros muchos proyectos de software libre como veíamos anteriormente. La misión del mismo es ser la cabeza visible de toda la comunidad y poder canalizar el proyecto hacia la visión que la comunidad establezca. Asimismo este comité tendrá la misión de velar por salvaguardar la propiedad intelectual de la compañía. ¿Cuál será la dirección estratégica del proyecto?¿Quiénes son las Instituciones & Sectores más interesantes para la inclusión en este proyecto? ¿Cómo se reaccionará ante una posible desviación (fork) del proyecto? 5. ALGUNOS QUE HAN ENTENDIDO LA REVOLUCIÓN El nuevo paradigma tecnológico comienza a ser entendido por parte de diferentes empresas e instituciones. La liberación de aplicaciones está floreciendo y diferentes áreas están siendo objeto de atención por parte de empresas, que ven en la liberación de sus aplicaciones, un atajo hacia un modelo de negocio exitoso. Pero esto no está ocurriendo sólo entre las empresas que contaban con software propietario sino que está comenzando a verse entre la administración, como una excelente manera de proveer a los funcionarios públicos con herramientas flexibles y altamente productivas de una manera libre. Esta es quizás una de las grandes consecuencias que el software libre ha traído a la informática que conocemos. Diferentes aplicaciones están siendo liberadas cambiando radicalmente el panorama existente en la industria informática. * Suite Ofimática La liberación del código de OpenOffice.org en el año 2000 por parte de Sun Microsystems y la publicación de la versión 1.0 en mayo de 2002, constituyen un auténtico punto de inflexión en la historia del software libre. Aunque fue Netscape la primera empresa de software propietario en apostar claramente por los modelos de desarrollo en bazar al liberar el código de su navegador Communicator y lanzar el proyecto Mozilla, podemos decir que el primer hito importante en la historia se produce mediante la liberación de la suite ofimática OpenOffice.org. La suite ofimática es una de las aplicaciones más conocidas por parte de todos los usuarios. Su carácter libre y multiplataforma, permitían por primera vez al software libre mostrar abiertamente el concepto del software libre asociado a aplicaciones no sólo más robustas e integradas que las propietarias sino su carácter gratuito. La irrupción de esta suite ofimática hizo que las miradas se volvieran a OpenOffice.org como realidad informática totalmente disponible para todo tipo de usuarios desde instituciones hasta empresas. * Servidor de Groupware El 10 de julio de 2003 el proyecto OpenOffice.org anunció liberación de código del software de servidor Groupware Skyrix. El software OGo está basado inicialmente en la contribución de código de SkyriX 4.1 Groupware Server, un producto con más de 7 años en el mercado. Según indica Stu Green, el presidente de la consultora de software libre Open Source Professional Services, en la nota de prensa de emisión del comunicado "la liberación de OGo significa que la suite OpenOffice.org está preparada completamente para la empresa con soluciones de groupware repleta de funcionalidades y lo suficientemente madura. Estas capacidades demuestran de una vez por todas como el software libre es mejor que las soluciones propietarias que requieren pagos por licencia tanto en el lado del cliente como en el servidor" [9] * Gestor de Contenidos DigitalCons fue una empresa que en el año 1995 Rob Page y Paul Everitt fundaron. La empresa tendría como misión el desarrollo de software para la gestión de contenido en portales. Para ello desarrollaron dos herramientas, Bobo, un kit de herramientas libres para objetos web, y Principia, que era plataforma comercial de aplicaciones web. Ante la tesitura de competir en un mercado altamente competitivo, la empresa decidió hacerla libre por entre otras, las siguientes razones: incremento por 3 de la base de clientes, creación de una plataforma sólida de desarrollo, fácilmente migrable y abierta, Creación de una comunidad de desarrolladores que correrá la voz.[10]. Así nacio Zope, el gestor de contenidos libre más implantado en el mundo. * Paquetes para PYMEs En el plazo de un año, estamos seguros vamos a ver diferentes paquetes de contabilidad, nóminas, facturación para PYMEs que hayan sido liberadas. Estas liberaciones que cumplan a la perfección con la mayoría de las necesiades de diferentes organizaciones. Cuando la disponibilidad de este tipo de aplicaciones esté para todas las PYMEs de nuestro país, la implantación de escritorios libres comenzará a tomar fuerza en este campo. Es sólo cuestión de esperar. 6 ....POR ESO NO NOS PUEDEN PARAR. Estamos convencidos de que la revolución de la liberación de aplicaciones ha comenzado. Diferentes empresas están entendiendo lo que reamente significa el software libre. La posibilidad de tener acceso a una tecnología a un coste mínimo cono manera de entender la tecnologia. El conocimiento está a disposición de todos los agentes de la sociedad. Es simplemente cuestión de querer incoporarse al mundo de las tecnologías. Esto está siendo entendido por diferentes agentes, entre los que encontramos a multinacionales, empresas de capital-riesgo, universidades, desarrolladores, Administración, y en general la ciudadanía. * Multinacionales apostando por Desarrollos Libres Las multinacionales han entendido que la liberación de aplicaciones puede suponer una excelente estrategia a llevar a cabo con diferentes proyectos. Desde la apuesta clara de IBM ofreciendo soporte sobre Apache en el año 1998, multiud de iniciativas se han lanzado entre multinacionales para apoyar de una manera u otra el software libre, incluyendo la liberación de aplicaciones, como son las de HP, Sun, Dell y Oracle. Ésta última liberaba en noviembre de 2002 [11], diferentes herramientas y librerías bajo licencia GPL que contribuían a mejorar el soporte en cluster de linux y poder añadir nuevas funcionalidades al kernel de Linux. Esta es la tedencia que veremos en cada vez más y más multinaciones. La liberación de aplicaciones y herramientas antaño propietarias a toda una comunidad de desarrolladores. Real Networks anunciaba durante julio de 2002 [12], la creación de su plataforma de desarrollo colaborativo Helix. Helix es una comunidad compuesta principalmente entre Real Networks, desarrolladores independientes, y otras empresas de audio que están interesadas en desarrollar la primera tecnología multiplataforma para la creación, edición y audición. * Proyecto O-Step [13] El proyecto O-Step ha sido lanzado por Tonny Stanco, en Nueva York y constituye una iniciativa innovadora de liberar código. Bajo este modelo (The Open Source Threshold Escrow Program -Programa de Contrato de Umbral de Software Libre-), una empresa de software propietario se comprometería a liberar su código una vez alcanzado cierto umbral de ventas. De esta manera, el cliente vería asegurado su retorno financiero buscado en un periodo de tiempo determinado, y el cliente se aseguraría que no tendría una dependencia sobre el software. Este programa está dirigido sobre todo a grandes empresas (Global 1000) así como a las Administraciones Públicas. NOTAS (1)The Cathedral and the Bazaar. RAYMOND, ERIC S. Febrero 1998. Disponible en internet: http://www.firstmonday.dk/issues/issue3_3/raymond (2) Setting Up Shop. The Business of Open Source. HECKER, FRANK. Mayo 2000. Disponible en Internet: http://www.hecker.org/writings/setting-up-shop.html (3) The Business and Economics of Open Source Software. FINK, MARTIN. Página 191-203. Prentice Hall. New Jersey. 2002. (4) El Efecto Red es el efecto que se produce cuando un número determinado de consumidores, al utilizar el producto, aumentan el atractivo del producto que conduce a que, a su vez, un mayor número de consumidores lo compren. Este ciclo denominado ciclo de retroalimentación positiva fue expuesto por parte de dos economistas de Standford: Brian Arthur y Paul David (El Estilo Microsoft. STROSS, RANDALL E.; 1996. -página 228- Editorial Grijalbo. Barcelona). Este efecto es de vital importancia en el mercado de la tecnología y, especialmente, en el caso de los sistemas operativos personales y las aplicaciones horizontales. El Efecto Red conduce a que la dominación de una tecnología conlleva a alcanzar rápidamente el monopolio con cotas de más del 90% (penetración estimada de Microsoft Windows, Microsoft Office, Microsoft Internet Explorer). Brian Arthur explicaba cuáles eran las cinco fuentes que contribuían a este Efecto Red: aprendizaje de uso, externalidades de la red, economías de escala, tecnología con menor riesgo e interrelación tecnológica. (5) Establishes Worldwide Collaborative Software Development Community for the Openadaptor Technology. Nota de Prensa. Collabent. 31 de enero de 2001. Disponible en Internet:http://www.collab.net/news/press/2001/dresdner.html (6) Why Open Source software can succeed? Bonacorssi Andrea, Rossi, Cristina, Laboratory of Management, Sant'Anna School of Advanced Studies, September 2002. Pizza. Disponible en Internet: http://opensource.mit.edu/papers/rp-bonaccorsirossi.pdf (7)IBM's Open Source Community of Choice. SMITH, TOM. Techweb. 6 de noviembre de 2002. Disponible en Internet: http://www.techweb.com/wire/story/TOE20021106S0001 (8) Community Involvement for a Open Source Project. Comunidad Slashdot. 6 de agosto de 2003. Disponible en Internet: http://ask.slashdot.org/askslashdot/03/08/06/2043214.shtml?tid=126&tid=156 (9)Liberación de Groupware completo por SkyriX. Nota de Prensa. 10 de julio de 2003. Disponible en Internet: http://barrapunto.com/article.pl?sid=03/07/10/1524244&mode=thread (10) How we reached the Open Surce Business Decision. EVERITT, PAUL. Digital Creations. Disponible en Internet: http://www.zope.org/Members/paul/BusinessDecision (11) Oracle's GPL Linux Firewire Clustering. Usuario de Slashdot: Smoking. Comunidad Slashdot. 12 de noviembre de 2002. Disponible en Internet: http://slashdot.org/developers/02/11/12/161219.shtml (12) Real Takes the Open Source Route. HU, JIM. C-Net News. 22 de julio de 2002. Disponible en internet. http://news.com.com/2100-1023-945406.html?tag=fd_top (13) Transitioning An Industry to Open Source Software. O-Step. The Center of Open Source & Government. Disponible en Internet: http://www.egovos.org/ostep.html