¿Debo preocuparme por la licencia de la JVM de Sun?

Esta conversación salió hace poco en JavaVen, es un nuevo usuario en el grupo el cual se está planteando un proyecto y no sabe si la licencia de Java lo va a afectar de alguna manera:
Hasta aquí va bien, pero entonces las cosas se ponen más interesantes cuando otro de los miembros de el grupo decide ayudarlo:Hola amigos espero estén bien, les escribo para una consulta, estoy en proceso de mi trabajo de grado, voy a realizar una aplicación para una central telefónica (tarificador), se me pide que sea realizado bajo soft libre (php, perl, python), yo le comente a mi tutor para hacerlo en java (servlet), pero no se que tan libre sea el trabajo en java, y además me indiquen alguna guia (tutoriales, etc...) de los servlet, nunca he trabajado con esto....Gracias por sus comentarios y respuestas...
ok el tema es un poco enredado.No concuerdo con la posición de el "buen samaritano" ya que me parece exagerada por las siguientes razones:
La especificación de Java es completamente libre sin
embargo no todas las implementaciones (máquinas
virtuales, api, contenedores, etc) para el uso de
java no lo son.
Tu puedes utilizar java en tu proyecto el único
inconveniente seria que no puedes usar la VM de Sun o
IBM y mucho menos su api, ya que si es verdad que
desde la pagina de sun puedes descargarte la VM sin
ningún costo la licencia que poseen no cumplen por
completo las 4 características de software libre
(http://www.gnu.org/philosophy/free-sw.html) .
Existen varios proyectos de VM que si cumplen con
estas características
(http://www.gnu.org/software/classpath/stories.html#jvm)
de SL y algunos contenedores (por ejemplo las
licencias de jakarta muchas cumplen por completo).
Con respecto al api el único proyecto que yo conozco
completamente libre es classpath
(http://www.gnu.org/software/classpath/home.html) el
inconveniente que tiene este api es que actualmente no
posee todas las características de Java 1.5.
Espero haberte ayudado.
- El código de la máquina virtual de Sun (JDK) está disponible bajo una licencia abierta. No es libre pero al menos que usted piense preparar una máquina virtual a la medida no creo que lo afecte; De hecho la mayoría de los usuarios lo que quiere es resolver un problema usando el lenguaje (el cual si es estándar) y el hecho de usar una máquina virtual cerrada no afecta para nada la forma en como el código de la aplicación pueda ser distribuido.
- Los problemas de portabilidad empiezan si usted utiliza paquetes específicos de una JVM (como los de com.sun.*), pero eso no tiene nada que ver con la licencia (es un problema de portabilidad).
- La licencia de el código desarrollado en la JVM de Sun no tiene nada que ver con la licencia de la JVM. Es tan ridiculo como decir que no se puede hacer software gratuito en Windows porqué este está corriendo o fué hecho sobre un producto cerrado como el de Microsoft.
- La calidad de algunas alternativas GNU para Java no son del todo buenas. El proyecto CLASSPATH suena bien en papel (al igual que el Kernel Hurd) pero ¿quién las usa?. Es en estos momentos en los que la realidad ataca y los sueños romanticos se desvanecen para dar paso a "la mejor solución".
- El soporte cuesta dinero: Si, NADIE trabaja de grátis. Y si lo que tienes es una aplicación que es crítica para el negocio, entonces lo que menos quieres es no tener soporte en la resolución de problemas. Una de las razones por las cuales Java es tan utilizado en Wall Street es porque hay una compañia detrás que le da soporte (en el caso de Linux se usa RedHat, no Debian, por las mismas razones). Si, la realidad muerde de nuevo...
A veces hay que tener cuidado con lo que se dice, ya que las verdades a medias pueden ser más dañinas que una mentira.
Asi que yo le digo a mi amigo desarrollador: No te preocupes en utilizar la JVM de Sun; Es estable, eficiente y sobre todo si decides cambiarla porque de verdad te molesta utilizar un producto "no libre" entonces siempre tienes la opción de utilizar otro JDK. Concentrate más bien es hacer buen código :)
Buscar en Technorati: java,gnu,bsd



15 Comentarios:
hola en efecto, yo uso java para mis proyectos ademas de para proyectos en plataforma windows donde no se especifique el lenguaje, pero cuando son proyectos de software libre (como el decreto 3390) recomiendo el uso de perl o phyton o php en ciertos casos, pq?: http://listas.es.freebsd.org/pipermail/freebsd/2005-January/024787.html , por esto sun elimino el soporte java para open bsd lo cual impulso el proyecto blackdown en parte, se que suena un poco extremista pero eso demuestra que sun puede cuando quiera despegarse de cualquier plataforma por razones propias de ellos, yo uso es linux (ubuntu y RHEL) y se de que seria improbable que se eliminara el soporte de la jvm, pero uno nunca sabe
de nuevo, es mi opinion claro esta
Jimmy Nimo
La referencia que estas utilizando está equivocada; Yo también leí sobre el asunto y al final Sun y FreeBSD llegaron a un acuerdo el cual les permite usar la JVM de Sun en FreeBSD.
En resumen, todo fué porque estaban acomodando su licencia para el lanzamiento de 1.5:
http://www.infoworld.com/article/05/01/06/HNfreebsdsun_1.html
Y por si quieres leer más:
http://bsd.slashdot.org/article.pl?sid=05/01/06/0647249&tid=108&tid=102&tid=7
http://channels.lockergnome.com/linux/archives/20050107_freebsd_foundation_sun_working_on_java_license.phtml
http://lists.freebsd.org/pipermail/freebsd-questions/2005-January/070626.html
Recomendar una herramienta basados en ese criterio (No es software libre) es peligroso; Una herramienta debe ser recomendada (o no) en base a sus meritos y en el caso de la JVM de Sun ellos no piensan alienar a sus usuarios.
Si lo llegan a hacer con alguien, entonces ese día el daño estará hecho y la gente se moverá a otra plataforma.
Pues, si vas a desarrollar software para algún organismo del estado entonces SI debe preocupare la licencia de la JVM de Sun, sencillamente porque no satisface las condiciones establecidas en el decreto 3.390, en general el grupo de gente que ha impulsado la migración a Software Libre por parte del estado está muy alineados con el proyecto de la FSF y NO con el de la OSI.
En particular el punto de vista de la FSF/Stallman sobre Java es extremadamente explícito en "La Trampa Java".
Es posible que Java y otras soluciones "propietarias" o "privativas" sean toleradas temporalmente en el procso de migración, sin embargo con dificultad podrás justificar arrancar nuevos proyectos bajo Java para el estado, aún siendo la excelente opción que es.
La argumentación en venezuela no tiene nada que ver con motivos técnicos, sencillamente con el esquema de licenciamiento.
Ojo: Me gusta Java, es un kilo de herramienta y de infraestructura sin par, y comparto más la postura de la OSI que la de la FSF...
Hola Anibal,
Este es el enlace de el decreto 3390:
http://www.gobiernoenlinea.gob.ve/docMgr/sharedfiles/Decreto3390.pdf
Según tu le JVM de Sun no satisface las condiciones de el gobierno venezolano para el desarrollo de software libre. Vamos a leer que dice:
"Software Libre: Programa de computación cuya licensia garantiza al usuario acceso al código fuente del programa y lo autoriza a ejecutarlo con cualquier propósito, modificarlo y redistribuir tanto el programa original como sus modificaciones en las mismas condiciones de licenciamiento acordadas al programa original, sin tener que pagar regalías a sus desarrolladores previos"
Eso quiere decir que si yo hago una aplicación en Java y decido mantenerle privada o pública no hay problema, ¡no tengo que pagarle a Sun!. El lenguaje de Java es un estandar abierto y hay varias implementaciones (IBM, Sun, Bea, GNU con cierto exito). Así que yo dificilmente veo el porque sería difícil proponer a Java. Además Java cuenta con una de las collecciones más grandes de código gratuito (El projecto Jakarta y Apache por ejemplo).
Pero aún suponiendo que lo anterior no fuera cierto, el decreto dice lo siguiente:
"En los casos que no se puedan desarrollar o adquirir aplicaciones en Software Libre bajo Estándares Abiertos, los órganos y entes de la Administración Pública Nacional deberán solicitar ante el Ministerio de Ciencia y Tecnología autorización para adoptar otro tipo de soluciones bajo los normas y criterios establecidos por ese Ministerio".
Bastante razonable, al menos que tu decidas desarrollar una JVM por tu cuenta.
Sun ha estado hablando con IBM y están en el proceso de abrir más a Java; Eventualmente estoy seguro que el panorama será mucho más abierto en ese sentido, pero de algo estoy seguro y es que SUN no va a jugar la carta de monopolio que otras compañias han usado en el pasado.
Por poner un ejemplo:
RESTRICTIONS. Software is confidential and copyrighted. Title to Software and all associated intellectual property rights is retained by Sun and/or its licensors. Unless enforcement is prohibited by applicable law, you may not modify, decompile, or reverse engineer Software. You acknowledge that Licensed Software is not designed or intended for use in the design, construction, operation or maintenance of any nuclear facility. Sun Microsystems, Inc. disclaims any express or implied warranty of fitness for such uses. No right, title or interest in or to any trademark, service mark, logo or trade name of Sun or its licensors is granted under this Agreement. Additional restrictions for developers and/or publishers licenses are set forth in the Supplemental License Terms.
EXPORT REGULATIONS. All Software and technical data delivered under this Agreement are subject to US export control laws and may be subject to export or import regulations in other countries. You agree to comply strictly with all such laws and regulations and acknowledge that you have the responsibility to obtain such licenses to export, re-export, or import as may be required after delivery to you.
Tomado de:
http://www.java.com/en/download/license.jsp
Estas simples restriccines violan la libertad que reza "... lo autoriza a ejecutarlo con cualquier propósito..." que no es más que la libertad 0 como la expresa la FSF:
"The freedom to run the program, for any purpose (freedom 0)."
Recuerda que esto no tiene nada que ver con pagar o no pagar, es "free as in freedom, not as in free beer"
De hecho no recuerdo en cual de los downloads de Sun antes tienes que hacer un agreement de que no vas a usar el software con pròsitos de terrorismo, etc.
Las libertades de la FSF estan planteadas de fomar que no hay restricciones sobre el fin con el que se va a usar el software, ni el grupo de personas que lo vana a usar.
Yo, personalmente, considero que si el gobierno erradica el uso de Java en los organismos del estado va a perder mucha solidez en la infraestructura de software.
Sin embargo mi análisis de las reglas del juego que están planteadas por el decreto 3.390 del ejecutivo venezolano y la futura ley que ya se introdujo en el congreso me lleva a insistir en que:
Si vas a desarrollar software para e el gobierno venezolano _debes_ preocuparte por las condiciones de la licencia que impone Sun.
Topocho,
Varias cosas:
1. De nuevo es la licencia de el JDK, no el lenguaje. Si la licencia de Sun parece demasiado restrictiva entonces tienes a IBM, Bea y otros. Y es utopico pensar que el gobierno va a dejar de utilizar Windows, Oracle, SAP, 'pon tu vendedor comercial aqui' por el simple hecho de que no es software libre. Es bueno tener alternativas, pero el software libre no es una bala de plata.
2. No es sólo cuestión de pagar como dices tu, pero simplemente no creo que Sun decida comenzar a cobrar por el JDK o que piense restringir su uso.
3. Todo el software (libre o no) tiene derechos de propiedad intelectual. Aunque estos no sean ejercidos (como el caso de Linux) están allí para evitar que otra gente se apodere de un producto y trate de hacer dinero con él (como la gente de SCO los cuales curiosamente se metieron con IBM, otra corporación que en el pasado fué acusada de ser como Microsoft). En este caso Sun está en todo su derecho de controlar como está siendo usado el software, y en ese caso, de cubrirse las espaldas.
Sigo pensando que el asunto de la licencia de Sun está siendo exagerado y no creo que el gobierno Venezolano sea tan torpe como para dejarlo de un lado, por otras soluciones. Estoy de acuerdo que es algo que hay que mirar de cerca, pero en el caso de el "post" original de JavaVen está claro que el punto de la licencia es totalmente irrelevante para el estudiante.
JV.
Con respecto al punto 1: Si va, ahora, al final bajo el análisis de Stallman en "La trampa Java" es lo mismo. Si en cualquier sentido la plataforma no es libre, el licensiamiento de lo que tengas armado en función de la plataforma provativa (compiladores, interpretes, máquinas virtuales, especificaciones ) es irrelevante.
Con respecto al punto 2: Insisto, y no quiero parecer ladilloso: No tiene nada que ver con pagar, cobrar por Software Libre no solo es legal, sino que incluso apoyado por la FSF, OSI, etc. Estamos claros en que Sun no va a cobrar, son brutos en relación al software como negocio pero no TAN brutos.
No se trata del precio sino de la libertad, para el movimiento que promueve este cambio son irrelevantes los beneficios técnicos del Open Source, el punto es romper el esquema imperialista de dominación del conocimiento que empobrece al mundo, etc, etc.
Yo no sé cual enfoque está bien o mal, o si ambos, pero el punto es libertad no costo.
Con respecto a 3: Sun está en su derecho, al retener el control y no entregarlo a la comunidad hace que su software no califique como Software Libre. De iure no se acepta n dictaduras sobre el Software Libre , aunque de facto sólo hay un PHP, un Perl, un kernel de Linux, etc.
Adicionalmente el hecho de que Sun conservara el control, el monopolio, hizo que las empresas pudieran a postar a java con seguridad siendo GRATUITO, convirtiéndolo en lo que es hoy en día. El punto es que las empresas les interesa lo GRATUITO, no lo libre, eso es irrelevante para ellos.
Yo conincido contigo en que el punto de licenciamiento con Sun es exagerado, no estoy en desacuerdo contigo, mi punto es que he seguido este proceso desde el 3390 para acá, estoy pendiente de la lista de Software Libre, así como de las directrices y documentos del ministerio, y lo que sucede en nuestros clientes del estado.
Y las reglas del juego son claras: Si vas a desarrollar software para el gobierno, las licencias de Sun sobre las tecnologías Java si son de tu preocupación.
Con respecto a "no creo que el gobierno Venezolano sea tan torpe como para dejarlo de un lado, por otras soluciones", bueno, te recomendaría echar un vistazo a los periódicos de Venezuela de los últimos 3 años :-)
Hola Anibal,
No es por mofarme, pero:
"No se trata del precio sino de la libertad, para el movimiento que promueve este cambio son irrelevantes los beneficios técnicos del Open Source, el punto es romper el esquema imperialista de dominación del conocimiento que empobrece al mundo, etc, etc."
Suena más bien a una canción de Alí Rivera; Si, el software libre es una necesidad pero el mundo en el que vivimos no es altruista, el software existe porque ayuda en los negocios (de lo contrario sería irrelevante) y al final es una herramienta como cualquier otra.
La actitud hacia la licencia de Java es totalmente especulativa en mi opinión y esta grandemente exagerada. Concuerdo con ustedes que hay prestarle atención (como a cualquier otra tecnología) pero de allí a decir que no puede ser utilizada en proyectos de el gobierno es simplemente exagerado.
Tu mismo vives de hacer Software por un precio y estoy seguro que el conocimiento que tu tienes de como resolver problemas con Software es algo que no regalas como "Software libre" o ni siquiera "Open Source". Solamente corporaciones como IBM, Sun, Novell e incluso Oracle se pueden permitir ese lujo y es porque son los lideres de el mercado y esa movida los está ayudando a afianzarse aún más (no hay almuerzo grátis).
Tu dices que "Yo no sé cual enfoque está bien o mal, o si ambos, pero el punto es libertad no costo.". Eso no es del todo cierto, ya que si no hubiera dinero involucrado entonces no estariamos hablando de esto. Hay precio de licenciamientos, patentes, mantenimiento, entrenamiento. El punto es que el dinero SI ES un problema aqui y tiene que ser considerado (el gobierno no solo busca independencia tecnológica sino también reducir costos operativos).
Finalmente en cuanto a tu comentario de que el gobierno si ha metido la pata en materia de software en los últimos años... creo que mejor no toquemos ese tema ya que es algo altamente subjetivo, nos va a tomar mucho tiempo investigar para soportar una u otra teoría y se va a alejar mucho más de la idea original.
No sólo suena como a una canción de la Alí Primera, sino es que ese sería el fondo ideal. Mosca que yo no te estoy vendiendo eso, lo que hago es exponer la situación que percibo en relación al decreto 3390 y las personas que han motorizado la migración a Software Libre, son dos cosas diferentes.
Yo creo en el Open Source, y sin rollo puedo trabajar bajo el esquema de Software Libre (Free Software según la FSF).
Recuerda, como ya comenté antes, que no es lo mismo Software Libre que gratuito. Es completamente válido cobrar por un desarrollo licenciado bajo GPL, que a posteriori el model ode negocios sea el mismo es otras cosas. Eso está "en veremos".
Yo no dije "que el gobierno si ha metido la pata en materia de software en los últimos años" pero para mí es obvio que el gbierno ha tomado resoluciones mucho más impactantes a nivel nacional e internacional que decretar que se puede utilizar este o aquel software.
Ahora, va fácil, no me creas, suscribete a:
http://conexionsocial.org.ve/mailman/listinfo/softwarelibre
Y en los foros y listas del MCyT, después hablamos ;-)
Ya me suscribi a la lista de software libre y pregunté por allí (varias cosas). El tema es interesante, vamos a ver que tipo de respuestas logro obtener de la lista.
Ya lo sé ¿Viste el thread que armaste con esa pregunta? 11 respuestas un DOMINGO ja ja ja... ¿Y entonces cuá es tu comnclusión?
Sí, ya ví que levantantaste un thread de 11 respuestas (y en domingo) ¿Cuál es tu conclusión ahora?
Anibal,
Debo admitir que me sorprendió la reacción visceral de varios de los mienbros de la lista;
Tu te ries de el asunto pero a mi me parece serio, ya que este es el punto de partida perfecto para otras posiciones dogmaticas ligadas a la tecnología; Entre las consecuencias es la exclusión de compañias en el desarrollo de productos sólo porque la plataforma no sigue una "politica" (si, desgraciadamente la palabra está muy cargada aqui), la desinformación (actitud de nosotros contra ellos) y posiblemente la perdida de competividad (al excluirte a proposito de el uso de ciertas herramientas mientras que otros pueden elegir la combinación que más les convenga).
Concuerdo (ahora más que nunca) con ustedes cuando dicen que si hay que prestar atención al decreto 3390; Mi temor es que por lo poco que leí el mayor problema aquí es una mezcla peligrosa de "religión informática" y desconocimiento.
El siguiente articulo de el blog va a tratar sobre este mismo punto, y es muchas de las respuestas que recojí merecen ser analizadas en detalle :)
vergacion primo, molleja e peo. lo que yo digo es q sin java estamos jodios.
imaginate solamente desarrollando en .net????
otra cosa, el gobierno apuesta por el software libre, debido a que este se opone totalmente a las politicas de microsoft.
Microsoft != software libre.
y recuerden que microsoft es el ejemplo puro del neoliberalismo.
y en venezuela con chavez estamos !!!
Publicar un comentario en la entrada
Enlaces a este articulo:
Crear un vínculo
<< Regresar