#8 Claro eso es verdad, es una licencia vírica que obliga a liberar el código, mientras que MIT/Apache son licencias susceptibles de ser cancerosas que permiten que el código se use para propositos que pueden ser contraproducentes para el autor original.
Estaría bonito que alguien coja el código de la administración de licencia MIT, implemente algo que el gobierno quiere tener, pero que libere el código bajo una licencia privativa que no permita a la administración usar ese código sin pagar a la persona que lo desarrolló.
La administración para no tener que pagar tendría que ingeniarselas para implementar lo mismo de forma distinta, aunque a lo mejor sea menos eficiente...si es que es posible/viable.
#4#6 Si conoces las licencias deberías saber que precisamente es la GPL la que pone restricciones (en el sentido de que exige que el código sea siempre abierto y no lo cierren).
MIT y Apache 2.0 permiten todo tipo de venta descarada y egoísta de cualquiera permitiendo que el código se oculte en cualquier versión modificada que otra empresa haga del software producido con dinero público. Tu software liberado bajo MIT puede ser usando por otro sin darte ningún tipo de retribución y además puede competir contra el tuyo injustamente ya que todas las funcionalidades tuyas las puede tener él pero tú no puedes incluir las suyas si su código es cerrado o bajo otra licencia.
En cuanto a lo de que el autor del código pueda modificar la GPL para añadir una cláusula sobre las contribuciones: no, la cosa no funciona así (claro que no se puede hacer eso bajo el paraguas de la GPL, tal como pensabas).
El propietario del código (porque lo ha hecho o porque se lo han cedido) puede hacer lo que quiera con él. Puede liberarlo con licencia GPL, pero eso no significa que renuncie a su autoría. Por tanto, tras haberlo liberado como GPL, puede seguir vendiéndolo con la licencia que quiera (incluso una licencia privativa).
Si tu contribuyes a su projecto (por ejemplo, haces un fork del OpenALPR este y cuelgas tus cambios en github) ahora esa versión sigue siendo GPL sin que tú digas ni firmes nada. El autor original por lo tanto no puede coger esta versión y venderla con una licencia privativa, porque estaría vendiendo tu código que solo puede usar bajo las condiciones de la GPL (entre las que no está la posibilidad de re-licenciar tu código como le salga de los cojones).
El truco que usan estos autores (y que me parece fatal) es el siguiente: tú si quieres haz tu fork y publícalo. Yo (el autor) en ese caso simplemente ignoraré tus cambios, es decir, no los meteré en mi versión. Como tu eres un matado al que no conoce nadie y yo soy el autor original, la gente viene a buscar mi versión, no la tuya, así que tus cambios quedarán perdidos en el olvido githubero. Ahora bien, si quieres que integre tus cambios, tienes que literamente regalarme tu código. Entonces lo integraré pero ahora yo soy el propietario de todo el código, incluido tu trabajo, y por tanto puedo seguir vendiéndolo (vendiendo una versión con licencia privativa) a quién me de la gana y por el precio que quiera.
Obviamente esta treta va en contra del espíritu de la licencia. No obstante, no es que la GPL permita eso, sino que los autores usan una vía completamente separada de la GPL para vender versiones comerciales. Lo mismo que hacen con GPL lo podrían hacer con cualquier otra licencia, ya sea una licencia free software, open source, o lo que sea!
#63 Y para eso estás tú y gente como tú, que sabe del tema, para puntualizar cuestiones y hacer que todos, sobre todo los que somos ignorantes del tema y sólo lo conocemos por encima, tengamos más ideas del mismo De todos modos, no estaría de más que le hicieras llegar las disculpas al interesado, mencionando alguno de sus comentarios, para que las vea.
He de decir que, como desconocedor del tema, que me ha sorprendido que un autor de código GPL pueda añadir una clausula a la oficial de GPL en la que diga que el código añadido por un contribuidor externo pasa a ser de su propiedad, ni que sea firmado por el colaborador, como bien indica #8 o remarcas tú en #34. ¿Es legal que una licencia pueda ser GPL, que, básicamente, hace que la fuente sea distribuible de manera gratuita ("Free as a free beer"), que la fuente de cualquier añadido o programa derivado sea, obligatoriamente, GPL, de libre distribución si usa un código GPL, y al mismo tiempo, incluya una clausula en la que regalas tu código al autor?
Puedo entender que haya gente que quiera usar cosas de GPL (librerías, etc.) sin tener que convertir su código en "libre distribución" porque quiere sacarle rentabilidad comercial, y entonces que pida el software con otra licencia al autor, pero no entiendo que un código pueda ser GPL y, al mismo tiempo, "robe" (de manera "legal", se entiende) el código a quien contribuya.
#22 Estoy totalmente de acuerdo en que el problema de base es la falta de colaboracón.
De todos modos, me parece que sería un buen comienzo el forzar como mínimo código abierto para todo lo que ataña a las administraciones. ¿Por qué? Bien, porque colaborar cuando el beneficio es real y tangible (nos ahorramos hacer todo esto porque ya está hecho, aquí, míralo!) que cuando primero hay que ponerse de acuerdo y luego ya se verá el resultado....
En cuanto a GPL/MIT pues no estoy del todo de acuerdo.
Entiendo que en algunas cosas estaría bien el uso de licencias open source. Por ejemplo, en librerías para comunicarse con servicios ofrecidos por las administraciones, que podrían usar tanto otras administraciones como programas empresariales que no quieren ser "viralizados".
No obstante, para la mayoría de sistemas (los que no sean de "interface") creo que sería mejor una licencia de software libre, que protegería a las administraciones ante cualquier posibilidad de cierre del código por parte de futuros desarrolladores.
No tengo ni idea de quién es el autor. Por mi parte, si te fijas verás que la cuenta la creé (tras mucho tiempo lurkeando) para responder en un hilo que alguien mandó aquí de un artículo mío [1] que mandé a hacker news [2]. Como eres informático, no te costará saber cuál suele ser mi user, que no pude utilizar aquí porque ya estaba pillado. Luego lo metes en github y verás mis respositorios y a qué he contribuido o dejado de contribuir.
#61 Bueno, en este caso te doy la razón. Pero ten en cuenta que no todas las empresas son públicas, y que las privadas deben devolver a la comunidad open source, lo que la comunidad les da. Y deben invertir, ahí tienes el ejemplo de las fundaciones y cómo cada vez más invierten, no solamente en hacer Open Source, sino en el proceso de evangelización, con sus ingenieros promoviendo la realización de open source, o dando charlas y cursos.
Pero precisamente, hay más empresas privadas que entidades públicas, y si quieres buscar su colaboración en módulos y librerías, no te queda otra que hacerlos MIT o similares.
Pero es que, es lo que hay. De todas maneras, y aunque he firmado, en España el problema no lo veo tanto en la licencia, sino en lo que explico en #22
Está claro que GPL es una mala licencia para las empresas. En los últimos años muchísimas empresas se han puesto a desarrollar proyectos open source, sobretodo de software de infraestructura y demás (es decir, todo lo que no es único de su producto). Ahí estan facebook, google, netflix, amazon, etc. etc. sacando proyectos open source como churros. Tienen el dinero para hacerlo y los proyectos que sacan no se comen su nicho de mercado. Todo esto son muchísimos recursos invertidos, que terminan siempre en proyectos open source (que no free software) con licencias no-GPL porque lo que les interesa es compartir... hasta que decidan quedarse algo para ellos porque supone algun tipo de ventaja competitiva (pueden cerrar el código cuando quieran).
La licencia GPL lo que persigue es el beneficio de los usuarios finales: la gente. Para conseguirlo están las cláusulas de viralidad, etc. que están diseñadas justamente para evitar la posibilidad de cerrar el código. Como esto es una putada para las empresas, que no pueden quedarse con las ventajas competitivas que desarrollan (estan obligados a liberar), pues no apoyan este tipo de licencia. Hasta aquí todo razonable y comprensible no?
La misma gente de black duck ha publicado informes hablando del crecimiento del open source en las empresas [1]. Es decir, la cantidad de recursos dedicados a producir open source, con licencias no-GPL-like no ha parado de crecer en tiempos recientes. Por tanto, GPL está perdiendo "market share", no porque los desarrolladores que antes usaban GPL ahora prefieran otra cosa, sino porque hay muchísimos más proyectos no-GPL ahora, financiados por empresas. Las licencias ni son buenas ni malas ni mejores ni peores, son lo que son y sirven para lo que sirven.
Finalmente, estamos hipotetizando sobre qué licencia sería mejor si la administración adoptara la política de usar solo open source / software libre. Yo defiendo que GPL precisamente para blindar las administraciones (que aquí jugarían el papel de usuarios finales, no de desarrolladores) porque creo que la licencia nos defendería mejor a los contribuyentes. Si tu crees otra cosa arguméntalo, pero eso de decir "no porque el software GPL se acaba pagando" no es un argumento válido y ya te he explicado antes por qué.
#44 Has estado mintiendo por todo el hilo diciendo que la GPL implica varias cosas que son mentira y te he explicado por qué. Sigues mintiendo con eso de que "ahora es la base legal para cobrar por el open source", y te quedas tan ancho. ¿Cuánta gente ha pagado por usar linux en dispositivos comerciales? ¿Y por usar gcc? ¡Nadie!
Has tenido una mala experiencia con un grupo concreto (OpenALPR) y has decidido montar una cruzada contra una licencia que ese grupo NO USA (cuando te vende una versión comercial de ese software) en vez de contra el grupo. Lo siento pero llegados a este punto eres más troll que otra cosa.
#6 Para conocer bien las licencias estás bastante equivocado. Una cosa es que tu empresa no quiera redistribuir su código como GPL y otra es que para usar GPL en algo comercial tengas que pagar. Estás mezclando conceptos. Sin ir más lejos hay cientos de aparatos que usan Linux (proyecto GPL por excelencia) y adivina: no los dan gratis!
#35 Quédate con lo que quieras, pero no mientas. Con el código MIT los autores pueden hacer exactamente lo mismo que lo que han hecho los de OpenALPR si quieren. La licencia no protege de nada en este caso, da igual qué licencia sea!
#3 Si es con el dinero de todos, tendremos derecho todos a decidir cual es su licencia, ¿ no ? Yo por ejemplo prefiero las licencias no víricas, que son 100% libres, no un 99% libre con un 1% que hace que su uso no solo no sea libre si no que para mantener ese 99% en próximas generaciones te mete el diablo entre lineas ( EDIT: como dice #6 ). Personalmente, BSD, MIT o incluso Public Domain me van mucho más.
#30 En el repositorio de OpenALPR hay un bonito archivo CONTRIBUTING.md, que te manda a firmar esto [1] para "poder contribuir". Fíjate en este bonito párrafo:
Grant of Copyright License. Subject to the terms and conditions of this Agreement, You hereby grant to OpenALPR and to recipients of software distributed by OpenALPR a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Your Contributions and such derivative works.
Es decir, te hacen firmar que les regalas tu código, justo como he dicho yo que tenían que hacer si luego lo querían vender con otra licencia para su propio beneficio.
¿Que no quieres contribuir en este proyecto? Me parece genial. También puedes hacer un fork (es un solo click con github) y publicar tus mejoras en él. Si no firmas el acuerdo de mierda este, la gente de OpenALPR no podrá coger tus modificaciones y revenderlas (legalmente claro).
En cuanto a tu gente de legal... igual podrías pedirles que hagan su puto trabajo y se enteren de cómo funciona el tinglado, en vez de desinformar a la gente por internet porque los abogados de tu empresa son unos putos vagos.
Entiendo que te ha jodido sobremanera encontrarte con una gente que usa la licencia GPL sin seguir su espíritu (eso de obligar a los demás a que te regalen su código para que puedas venderlo relicenciado va claramente en contra del espíritu de la GPL), pero eso es culpa de la gente de este proyecto, no de la licencia.
El problema es que tú (o tu empresa) no quieres que todo sea abierto y por lo tanto no puedes usar la GPL.