Me parece que mezclas cosas.
1- La licencia es un contrato. La mayoria de la gente no la lee. La mayoria de la gente no la entiende. El hecho que haya que hacer diferencia entre libre/gratis muestra eso.
PERO eso te puede "proteger" y es algo que una empresa SI debe preocuparle. Los contratos le importan a quienes les pueden causar problemas=empresas.
2- Debes entender principios de economia para verle la gracia a esto...
Primero, debes saber a que campo de software le estas atacando (Software masivo, Interno, Embeido, Juegos, Plataformas, De vida corta):
http://www.joelonsoftware.com/articles/FiveWorlds.html
Cual es la funcion que hay que cumplir? esta:
http://spanish.joelonsoftware.com/Ar...lIntoSoft.html
El principio basico, creo yo, es el de
substitutos y
complementos (Una buena explicacion aqui:
http://www.joelonsoftware.com/articl...gyLetterV.html (Ingles))
Si te preocupa que el codigo fuente seam mal usado/te lo roben/etc... entonces PORQUE RAYOS CONSIDERAS OPEN SOURCE! Bajo esa premisa, se supone que el valor o producto que vendes es el codigo, es lo mas importante. Pero no todo el software es asi.
Por ejemplo, en mi empresa vendemos sitios web/hosting. Usamos algunos productos opensource... pero aunque el usarlos nos da una ventaja... bueno lo que hacemos es realmente darle confianza al cliente al saber que llama a un paisano en su ciudad y puede pedir soporte en su idioma, mas diseños exclusivos, mas configurar esto y aquello, asesoria, programaciones personalizadas, etc... Para nosotros, los proyectos open source son COMPLEMENTOS de lo que nos diferencia de los paquetes de hosting que se venden a huevo, pero que exigen un equipo de administradores, diseñadores, programadores (o sea como nosotros) para mantenerlo en funcionamiento. Existen millones de opciones de hosting desde gratis hasta exageradamente costoso, pero de alguna manera nos ASEGURAMOS que hosting/sitio web sean los complementos pero NO LOS DIFERENCIADORES de nuestra empresa.
ALguien puede SUSTITUIR nuestro servicio con un hosting mas barato.... pero no se puede SUSTITUIR el servicio tecnico, tan facilmente. En cambio, alguien puede SUSTITUIR nuestro administrador web en ASP.NET por un PHP y si nuestro servicio apesta, estamos arruinados. Punto.
Por el contrario, tengo un proyecto open source llamado MUTIS... es para hacer un sistema de busqueda como el que tiene Google (ok, no tan tremendo!). Es licencia APACHE que basicamente significa: Me importa un reverendo comino que haces con mi codigo, pero igual me da la gana de hacerlo open source. Porque? Porque no me gusta trabajar? No, porque tal vez alguien me ayude y me ahorre una semana de trabajo (de hecho ya hay alguien que me esta colaborando en portarlo a Win32).
Para mi, MUTIS es un complemento. Uno importante, pero igual motores de busqueda hay muchos y buscadores tambien (de hecho, lo puedo sustituir con uno comercial o uno open source sin afectar demasiado).... el tenerlo open source me daria una ventaja contra otros porque planeo hacer un SDK para que mis clientes (futuros) puedan hacerle modificaciones facilmente, asi que se vuelve en una seguridad/ventaja para el cliente...
Pero no todo mi codigo es open-source. Mi area de experiencia es en integrar software, procesar datos y esas cosas. ESE codigo es muy importante para mi y a DIFERENCIA de un motor/engine/plataforma no es de "conocimiento publico" que elimina la ventaja, en gran medida, de tenerlo de forma cerrada. Ese codigo es lo que realmente voy a vender, porque es la parte bien aburrida de hacer, requiere mucha experiencia, etc.. etc...
Por lo tanto:
1- El licenciamiento que eligas, debe corresponder a QUE es la parte con valor: El codigo o el servicio
2- Si es una plataforma, es mejor open source. El tipo de licencia puede atraer o retraer programadores open source y empresas privadas. Si usas GNU algunas empresas privadas podrian objetar su uso, en ese caso, yo elegi apache, asi ningun programador open source tendria alguna razon para no hacer parte y ninguna empresa privada a usarlo.
Debes entender cuando un producto es "masivo" y de dominio publico, como son los servidores web, los editores de texto, etc... en eso ya casi no hay negocio por causa del codigo pero si por causa del soporte
3- Si tu codigo hace algo que realmente valga la pena, representado en interfaces graficas mas amigables, integracion, o tal vez el mejor compresor del mundo, pues lo vendes.
4- Si te preocupa demasiado el que te roben una idea, hay que esforzarse con PLATA. PLATA pa' abogados, patentes, publicidad, etc...
O tal vez, no le estas dando mucho aporte al codigo.... piensa que mucha gente vende shareware a pesar de que existe feroz competencia y alternativas libres, con o sin codigo fuente. Es porque debe valer la pena comprarlo, porque muchos lo hacen a pesar de saber que podrian tenerlo gratis. Piensa en eso: Aparte del codigo, porque alguien te elegiria a TI?