El curioso incidente de Sun a medianoche*
por Richard StallmanDejamos esta página web como referencia histórica. A diciembre de 2006, Sun está preparando la publicación de su plataforma Java bajo la GPL de GNU. Probablemente Java de Sun será software libre una vez que se haya completado el cambio de licencia.
24 de mayo de 2006
Nuestra comunidad se entusiasmó con el rumor de que Sun había convertido su implementación de Java en software libre (o de «código abierto»). Incluso algunos líderes de la comunidad agradecieron públicamente a Sun por su contribución. ¿Cuál es la nueva contribución de Sun a la comunidad FLOSS?
Ninguna. Absolutamente ninguna, y esto es lo que hace que la respuesta a este no-incidente sea tan curiosa.
La implementación de Java de Sun sigue siendo software privativo, al igual que antes. No se ajusta a los criterios del software libre ni a los del código abierto, que son más laxos. Su código fuente sólo está disponible bajo un acuerdo de no divulgación (NDA en inglés).
Así pues, ¿qué hizo Sun realmente? Permitió una redistribución más conveniente de los binarios de su plataforma Java. Con este cambio las distribuciones GNU/Linux pueden incluir la plataforma Java, que no es libre, del mismo modo en que algunas distribuciones ahora incluyen el driver privativo de nVidia. Pero lo hacen al costo de que no sean libres.
La licencia de Sun tiene una restricción que, irónicamente, puede reducir la tendencia de los usuarios a aceptar software que no es libre sin pensarlo dos veces: SUN insiste en que el distribuidor del sistema operativo tiene que obtener la aceptación explícita de la licencia antes de permitir al usuario instalar el código. Esto significa que el sistema no puede instalar la plataforma Java silenciosamente sin advertir a los usuarios de que tienen software que no es libre, cosa que hacen algunos sistemas GNU/Linux cuando calladamente instalan el driver de nVidia.
Si examinamos con atención el anuncio de Sun, veremos que representa exactamente estos hechos. No dice que la plataforma de Java sea software libre, ni siquiera de código abierto. Únicamente predice que la plataforma estará «extensamente disponible» en las «principales plataformas de código abierto». Disponible, es decir, como software privativo, en términos que nos deniegan la libertad.
¿Por qué este no-incidente generó una reacción amplia y confusa? Quizás porque la gente no lee estos anuncios cuidadosamente. Desde que se acuñó el término «código abierto», hemos visto que las compañías encuentran métodos para usarlo junto al nombre de sus productos en la misma oración (pero parece que no hacen lo mismo con el término «software libre», aunque podrían hacerlo si quisieran). Un lector poco atento, al ver que los dos términos aparecen en proximidad, puede suponer erróneamente que son equivalentes.
Hay quienes creen que este no-incidente representa los pasos exploratorios de Sun hacia un futuro lanzamiento de su plataforma Java como software libre. Esperemos que Sun lo haga algún día. Estaríamos felices, pero debemos reservar nuestro aprecio para el día en que esto ocurra realmente. Mientras tanto, la trampa de Java permanece activa en espera del trabajo de los programadores que no toman precauciones por evitarla.
En el proyecto GNU continuamos desarrollando el compilador de GNU para Java y Classpath de GNU. Adelantamos mucho durante el último año, de manera que nuestra plataforma libre de Java se incluye en muchas distribuciones principales de GNU/Linux. Si desea usar Java y mantener sus libertades, por favor únase a nosotros para ayudarnos.