JDJ: ¿Qué significa todo este anuncio?
Jason: Anuncia un acuerdo entre Apache y SUN respecto a implementaciones Open Source de los estándares Java. Entre los aspectos a los que se ha llegado a un acuerdo destacan:
Para especificaciones lideradas por Sun y que hayan terminado de aquí en adelante (incluyendo revisiones a especificaciones existentes ) y para especificaciones que ya hayan aparecido previamente, los términos de la nueva licencia permitirán implementaciones independientes y bajo licencias Open Source. Los ficheros binarios del Test Compatibility Kit (TCK) para esas especificaciones estarán disponibles sin coste alguno para grupos académicos, sin ánimo de lucro u Open Source. Un comité de tres miembros, incluyendo a un representante de la Apache Software Foundation y un representante académico se asegurarán de la imparcialidad de todo el proceso. SUN proporcionará a estos grupos cualificados un sustancial soporte para ayudarlos en el uso y la ejecución de los TCKs. Los lideres de las especificaciones podrán escoger las licencias Open Source para susimplementaciones de referencia (RIs) e incluso para los TCKs si así lo desean. Existe todavía un punto de gran importancia para las implementaciones comerciales de las especificaciones Java:
SUN hará disponibles los TCKs de especificaciones pasadas y futuras de una manera separada del código de la implementación de referencia. Previamente, existía un requisito que obligaba a licenciar la implementación de referencia al licenciar el TCK lo que hacía imposible las implementaciones independientes. Para más detalles sobre el acuerdo, podéis ver la carta de intenciones de SUN en
http://jcp.org/aboutJava/communityprocess/announce/LetterofIntent.html y la nota de prensa de Apache http://jakarta.apache.org/site/jspa-agreement.html
JDJ: Finálmente, ¿es Java Open Source?
Jason: Eso depende de lo que quieras decir con la pregunta. Yo creo que puede significar tres cosas diferentes:
¿Puede haber una implementación Open Source de Java? La respuesta es sí. Este acuerdo debería asegurar que cuando J2SE 1.5 aparezca pueda existir una implementación independiente con licencia Open Source. Muchas especificaciones Java tendrán esa posibilidad desde ya.
¿Está la implementación de referencia de Java (el JDK) disponible como Open Source? No. Este acuerdo no tiene ese objetivo. Apache no cree que le deba decir a SUN o a cualquier otra empresa bajo que licencia ha de estar su código. Lo que cree Apache es que si no quieres una licencia en tu código tienes que tener ese derecho. El propósito de este acuerdo es ese.
¿Se desarrollará Java siguiendo el método Open Source? Ahora mismo existe un proceso formal por el cual las especificaciones Java se crean dentro del Java Community Process (JCP). El JCP probablemente seguirá con esta labor, a pesar de que el deseo de Apache es que se haga más abierto. El proyecto que yo lidero, JDOM, es el JSR número 102, y con este JSR estamos demostrando que es posible tener un desarrollo abierto incluso dentro del JCP. Ahora bien, la posibilidad de tener implementaciones de referencia y TCKs Open Source ayudará al progreso de este JSR.
JDJ: Apache vió un crecimiento grandisimo en el número de proyectos durante el último par de años. ¿Cuáles ves como los mayores retos que afronta la Apache Foundation a la hora de ser capaz de mantener el momento y el soporte de todos los proyectos a largo plazo?
Jason: Apache sólo acepta proyectos que tengan una comunidad establecida, vital y activa. O dicho de otro modo, el código ha de venir de una comunidad de programadores. Apache no acepta código porque sí, por muy tentador que sea.
Hasta ahora esta política ha funcionado bien. El reto principal es integrar a los programadores de estos proyectos dentro de la comunidad Apache.
JDJ: ¿Estás completamente satisfecho con la esencia y el nivel de compromiso alcanzado en este anuncio?
Jason: Por ahora es un acuerdo de un rumbo a seguir. Apache estará mucho más satisfecho cuando vea este plan de acción ejecutado.
JDJ: En tu opinión, ¿Qué gana SUN de este acuerdo?
Jason: Apache ha sido un colaborador fuerte de SUN, promocionando Java en la parte de servidor. Proyectos como Tomcat, Ant, Xerces, Xalan y Axis/SOAP son ampliamente utilizados y vitales en la parte de servidor para la comunidad Java. Muchos proyectos de Apache tienen el soporte de desarrolladores de SUN, unos pocos tienen especificaciones Java implementadas, y usualmente cuando esto sucede el código de Apache se ha usado como base para las implementaciones de referencia. Sin embargo, los aspectos legales establecidos alrededor de las implementaciones Open Source de Java tenían que ser establecidos definitivamente para que Apache pudiese continuar dando soporte al Java Community Process y a las especificaciones que el JCP produce.
JDJ: ¿Planea Apache crear una implementación de JXTA?
Jason: JXTA no es una especificación del JCP. Es un producto bajo el que está SUN , open source, independiente, que no depende del lenguaje de programación y con una licencia al estilo Apache. No está afectada por este acuerdo.
JDJ: ¿Crees que este acuerdo resultará en que SUN probará finalmente JBoss para la certificación J2EE?
Jason: JBoss ahora tendrá acceso a los TCKs para J2EE 1.4 que saldrán a final de año. Debido a que JBoss es una organización con ánimo de lucro, probablemente tendrán que pagar por los TCKs. Hablando con ellos, han comentado que no tienen ninguna objección sobre eso. Será cosa suya el acatar el TCK.
JDJ: ¿Cómo se siente Apache cuando muchas de sus ideas/productos son incorporadas por otros componentes? Por ejemplo, un equivalente al proyecto ORO ha sido incorporado dentro de Java 1.4 como clases regexp.
Jason: ¿Cómo se siente Apache cuando sus productos se incorporan dentro de otros productos de otras compañías? Por ejemplo, ¿Cómo utiliza IBM el servidor web Apache?. Apache usa este estilo de licencia ( una licencia muy liberal que permite la reutilización en productos comerciales ) precisamente porque quiere que su código sea útil y utilizado por cualquiera y por todo el mundo que esté interesado en él. ¿Cómo se siente Apache cuando el JCP crea especificaciones para la plataforma Java que son similares a proyectos suyos existentes? Esta pregunta es más difícil de responder porque puede haber tantas opiniones como desarrolladores dentro de Apache. Yo creo que es justo decir lo siguiente: "A la gente le gusta ver como Java incorpora funcionalidad como expresiones regulares y logging. Sin embargo, hemos visto como estas especificaciones se han creado en privado y teniendo muy poco en cuenta la opinión de la comunidad en comparación con los proyectos típicos de Apache".
No es sorprendente que cuando comparas las especificaciones Java con los proyectos Apache que hemos creado con gran cantidad de opiniones de usuarios, los nuevos estándares no parecen de igual calidad. Es más, las nuevas tecnologías caerán en la medida que Apache continue innovando y permita no tener que esperar por el J2SE 1.5 para tener nuevas versiones. Al mismo tiempo, la gente de Apache se da cuenta de que hay el efecto estílo-Windows de Microsoft: todo lo que venga con la plataforma gana la mayor parte del mercado sin que importe su calidad en comparación con otros productos.
JDJ: ¿Es este el principio del fin? ¿Estamos entrando en un futuro donde veremos diferentes sabores de Java, como lo que sucede en el mundo C/C++, y en el que tendremos que construir versiones específicas para diferentes JVMs?
Jason: Es importante reconocer que el acuerdo permite implementaciones Open Source independientes que pueden ser "compatibles". Apache cree que este acuerdo mejorará la portabilidad de Java a través de una gran disponibilidad de TCKs y con la existencia de implementaciones Open Source sólidas sobre las cuales los vendedores puedan trabajar. Por ejemplo, la portabilidad de los servlets ha sido mejorada sólo con la disponibilidad del motor de servlets Tomcat.
JDJ: Puede parecer una pregunta obvia pero incluso pensando que Apache es una organización sin ánimo de lucro, ¿cómo planean continuar ofreciendo excelentes ofertas de calidad en el futuro?
Jason: Para una buena descripción de como funcionan los proyectos Open Source, yo recomendaría un libro titulado "The Cathedral and the Baazar" de Eric S. Raymond y Bob Youngor o algún documento como "Open-Source Software Development and Distributed Innovation" de http://www.smu.edu.sg/research/pdfs/kogut06K1.pdf
JDJ: ¿Puedes explicar la letra pequeña que pueda haber en el soporte que ofrecerá SUN para la comunidad Open Source?
Jason: Durante los meses antes del acuerdo Apache estableció como un requerimiento mínimo que los ficheros binarios de los TCK pudieran ser bajados fácilmente por cualquier grupo académico u Open Source. La noción de que un líder de una especificación pudiese decidir el descartar la cuota por la licencia no era suficiente ya que un líder que estuviese demasiado ocupado puede que no pudiese responder a un pequeño grupo o a un individual, y sin embargo queríamos que el próximo Linus Torvalds brotase (esta vez en JavaLandia). Durante las negociaciones, SUN estaba deseando licenciar los TCKs de una manera gratuita a todos estos grupos pero estaba preocupada por que los TCKs son bastante complicados y requieren soporte para su ejecución. SUN no podía garantizar soporte para todas las compañías sin ánimo de lucro porque, no como los binarios de los TCK, existe un coste real en dar soporte a cada cliente.
Para resolver ese problema, la propuesta es tener un comité (consistente en un miembro de Apache, un miembro de SUN y un miembro académico) el cual puedan garantizar los ficheros binarios de los TCK de manera gratuita a cualquier grupo cualificado y garantizar el soporte de estos TCKs con algunos límites dentro del presupuesto. El método para la cualificación de los grupos y para garantizar soporte será estudiado más por los miembros del comité. Personalmente no me sorprendería que las listas de correo Open Source se convirtiesen en el vehículo más común para el soporte de los grupos Open Source.
JDJ: ¿Cómo crees que los principales jugadores dentro de Java se sienten respecto a este movimiento?
Jason: Entre los miembros del comité ejecutivo del JCP ha habido un fuerte apoyo para este cambio. Las preocupaciones de Apache fueron listadas por el comité ejecutivo como el problema número uno a ser tratado en el documento legal JSPA mientras va desde la revisión de la comunidad hasta la revisión pública. Varios miembros del comité ejecutivo fueron grabados apoyando esta decisión durante la JavaOne.
JDJ: Cuentanos un poco sobre Apache. ¿Es una compañía/persona oficial? ¿Tienen oficinas? ¿Existe algún teléfono en algún lugar del planeta con alguien que conteste "Buenos días, Apache, ¿en que puedo ayudarle?"?
Jason: Apache es una organización sin ánimo de lucro, con un comité y unos bienes (servidores, márcas comerciales, etc..). No existen oficinas centrales. Respecto a lo del número de teléfono, ¡ preferimos los emails a los teléfonos !....
JDJ: Finalmente, ahora que ha empezado a correr la voz de estas noticias ¿cuáles han sido, a groso modo, las opiniones de la comunidad?
Jason: He encontrado que la gente sigue haciendo preguntas. Los aspectos son realmente muy complicados, y cuanto más profundo cavas más detalles encuentras. ¡ Eventualmente incluso deseas no haber cavado tan profundo ! Felizmente, las cosas parece que se están mejorando y deseo que fragmentos de preguntas y respuestas como este ayuden a la gente a comprender que es lo que está cambiando y lo que significa.
|
Reader Comments