2008-09-26 22 views
5

Me incubé como desarrollador de software en un mundo de propiedad dominado por grandes corporaciones con software de fuente cerrada, no fue cuestionado. A medida que crecía mi carrera, Internet se volvió cada vez más una presencia y fui expuesto a más y más software de código abierto.¿Debería ser el caso base de código abierto?

Mirando hacia atrás en la mayoría de las bibliotecas, no estoy hablando de código de nivel de aplicación y utilidades que escribimos para mis empleadores, hay muy poco de eso que era directamente una ventaja competitiva, e incluso representaba menos intrínsecamente lo que haría Considera la propiedad intelectual. Cada vez más de esas bibliotecas, marcos y utilidades tienen equivalentes de código abierto. Ahora es común para mí y para los desarrolladores con los que trabajo buscar primero las bibliotecas existentes antes de embarcarme en la implementación de dicho código.

Eso ya ha cambiado. Muchas de esas bibliotecas podrían haberse marchitado como fuente abierta por falta de mantenimiento, y mis empleadores no habrían sufrido si lo hubieran hecho. Si prosperaron o al menos atrajeron sumisiones, entonces esos empleadores se habrían beneficiado, lo que está sucediendo en mi empleador actual.

Ahora, mirando lo que nos espera, estoy empezando a pensar que para una gran parte de las bibliotecas y marcos que vamos a escribir, deberíamos crearlos partiendo de la suposición de que se convertirán en código abierto. . Eso para las bibliotecas, los servicios públicos y los marcos debería ser el caso base, en lugar de la suposición de que se cerrarán y que luego tendrá que trabajar para abrirlos, lo que resulta a menudo es mucho más trabajo después del hecho (obtener aprobación, realizar las revisiones y la limpieza).

con el caso base es de código abierto, creo que no habría beneficios:

  • Desarrolladores, sabiendo que el código será visible por sus compañeros y futuros empleadores potenciales que probablemente será más disciplinado sobre la documentación, pruebas y diseño, mejorando el código en sí mismo. El simple hecho de saber que el mundo podrá ver su código probablemente cambie las esquinas que está dispuesto a cortar. Esto debería beneficiar a la organización que patrocina el desarrollo.
  • Los desarrolladores individuales tendrán cuerpos más grandes de bibliotecas y códigos reutilizables para aprovechar en todos sus proyectos, aunque esto beneficia al desarrollador individual más que a las organizaciones patrocinadoras
  • Las organizaciones distribuirían los costos de manera más eficaz desarrollo, esta es una premisa central de código abierto para empezar, aunque si fuera abierto era el caso base, sería significativamente más generalizado
  • Actualmente atrae a un cierto tipo de desarrollador a la organización
  • No garantiza, pero ofrece la posibilidad de que los posibles desarrolladores entren en el proceso de entrevistas ya que están familiarizados con las herramientas y el código fuente de la empresa. tualmente usando

Parece que esta es una tendencia, al menos a nivel de la biblioteca y el marco, no en el nivel de la aplicación en mi opinión. Esta es una comunidad variada, ¿cuál es tu opinión?

Respuesta

1

Creo que el código de fuente abierta siempre es una buena cosa (siempre que no obstaculice las ganancias, si se trata de un código para el cual se puede o se puede obtener beneficios). Uno de los mayores beneficios de código abierto que he visto es que si un usuario desea que se implemente una función, puede hacerlo por sí mismo. También le da a los clientes un elemento de orgullo: si ayudaste a hacer algo, ¿por qué usar algo más?

Desde un punto de vista comercial, aquí están algunas técnicas para conseguir dinero sin dejar de obtener el beneficio de código abierto:

  • Si te preocupas por los competidores utilizando su código, escribir una licencia personalizada que permite pero nadie más para reutilizar el código en una aplicación propietaria. Por ejemplo, puede licenciar bajo GPLv3, pero con cláusulas adicionales que le permiten usarlo como si estuviera bajo los términos de la LGPL, y que permita que el código se integre con otros productos de GPL (para que puedan mezclarse, una importante parte de OSS). Esto le permite obtener ganancias pero no a sus competidores, mientras que la comunidad se beneficia.
  • La licencia dual es similar al punto n. ° 1, pero le dificulta el uso del código enviado por los usuarios (porque estará sujeto a la licencia de OSS y solo). También podría hibridar el enfoque, que sería útil si tiene la intención de vender la biblioteca comercialmente.
  • En lugar de vender solo el código, venda otra propiedad. Conozco un juego que ha sido exitoso (en lo que respecta a un juego indie de nicho) de código abierto, pero vendiendo gráficos y niveles.
Cuestiones relacionadas