¿Por qué debo abrir el código fuente de mi software?

Hay muchas respuestas posibles a esto, de las cuales ninguna, algunas o todas podrían aplicarse a su proyecto en particular. Aquí hay algunos pensamientos rápidos:

Trabajo libre (cotizaciones)
El abastecimiento abierto de su proyecto significa que ha abierto la oportunidad para que miles de personas altamente calificadas en Internet comiencen a escribir código de forma gratuita. No solo encontrarán errores que no encontrará por su cuenta, sino que a menudo los solucionarán. Si tiene suerte, incluso puede obtener importantes nuevas características contribuidas.

Publicidad gratuita para su software
El software de código abierto (gratuito) tiende a atraer a los usuarios mucho más fácilmente que el software cerrado. Con el software de pago, tendrá que pagar por la publicidad, rogar a los usuarios que prueben su software, dar pruebas gratuitas, etc., mientras que con el código abierto se sorprenderá de cómo el uso orgánico puede extenderse.

Marca personal
Especialmente si está relativamente temprano en su carrera, contribuir a un proyecto de código abierto se ve muy bien en su currículum. Comenzar uno que atraiga a otros contribuyentes se ve aún mejor: demuestra que tiene capacidades de liderazgo, iniciativa y tal vez incluso un buen sentido del producto. Esto es útil si planea unirse a una empresa como ingeniero, comenzar su propia empresa o simplemente reclutar a otras personas para que lo ayuden con su próximo proyecto de código abierto.

¿Realmente va a obtener ganancias al no abrir código abierto?
Aunque ha gastado mucha “sangre, sudor y lágrimas” en escribir su software, ¿está realmente preparado para beneficiarse de él? Sacar provecho del software requiere mucho trabajo en marketing, documentación, etc., y una vez que haya pagado a los clientes, tendrá que apoyarlos. A menos que realmente planee intentarlo, no se beneficiará de su software de todos modos, y también podría abrir el código fuente por las razones anteriores.

Puedes ver esto de dos maneras: práctico y filosófico. Todd Lipcon ya se ocupó del lado práctico en el que la cuestión clave es considerar si realmente puede ganar dinero o no. Desde el punto de vista práctico, un factor clave puede ser su motivación para escribir la solicitud: ¿lo hizo porque lo necesitaba para usted o porque creyó haber visto una apertura para una aplicación para ganar algo de dinero? Si fue el primero, entonces es casi seguro que sea mejor hacerlo de código abierto.

Desde el punto de vista filosófico, puede considerar todo lo bueno que el código abierto (o software libre) ha hecho. Internet se vería muy diferente sin él. La mayoría de los servidores web son de código abierto (como Apache) y se ejecutan en Linux. Si tienen algún tipo de base de datos (la mayoría tiene) es mysql o postgreSQL. Ambos son de código abierto. La aplicación de enrutamiento de correo electrónico más destacada (que permite enviar correos electrónicos entre usuarios) es sendmail. Que es de código abierto. Y así. Además, la mayoría de estos y muchos otros se crearon con el conjunto de herramientas GNU. Alternativamente, la mayoría de nosotros usaría Internet Explorer y miraría sitios web que se ejecutan en Microsoft IIS y Microsoft SQLServer (haciendo que el alojamiento de sitios web sea mucho más costoso de lo que es ahora).

Entonces, ¿desea contribuir al bien mayor de la humanidad o espera ganar unos cuantos dólares (que, como Todd ya explicó, no es fácil)?