¿Cómo compartir código como código abierto?

7

Tengo un pequeño programa que escribí para un grupo local para manejar un problema de programación algo complicado para programar múltiples reuniones en múltiples ubicaciones que cambian semanalmente según ciertos criterios. Es una necesidad de nicho, pero no me sorprendería si hubiera otros grupos que pudieran usar software como este. De hecho, hemos recibido solicitudes de otros para obtener instrucciones sobre cómo iniciar un grupo como este, y si sus grupos son tan grandes, es posible que también deseen un software especial para ayudar con la programación. Planeo continuar desarrollando el programa y eventualmente convertirlo en una aplicación web en línea, pero una versión alfa muy simple se completa como una aplicación de consola.

Me gustaría ponerlo a disposición como código abierto, pero no tengo idea de qué tipo de proceso debería pasar primero. En este momento, todo lo que tengo es un código Java, ni siquiera probado a fondo. No le he mostrado el código a nadie más. No hay documentación. No sé dónde pondría el código para que otros puedan acceder a él. No sé nada de licenciarlo. No sé qué tipo de apoyo esperará la gente si lo publico como código abierto. No tengo idea de qué otra cosa debería preocuparme.

¿Alguien me puede describir (o publicar un artículo (s) que describa) el proceso de llevar el software de código abierto de "codificado" a "completado / disponible"? Realmente no quiero avergonzarme haciendo cosas extrañas.

    
pregunta Ethel Evans 02.03.2011 - 21:44

5 respuestas

4

Con Java, probablemente quieras:

  • Un script de compilación (tal vez escrito en Ant) para compilar (javac), probar (java y junit), documentar (javadoc) y empaquetar (jar) su aplicación / lib
  • Algunas pruebas de unidad para asegurarse de que la cosa funcione bien (esto puede evolucionar más adelante, pero es bueno tener el marco)
  • Algunos comentarios que son adecuados para JavaDoc (si los desarrolladores son su audiencia prevista),

Y, para cualquier proyecto:

  • un archivo README que indica de qué trata el proyecto
  • un archivo de LICENCIA que explica cómo copiar
  • alguna lista de cambios, versiones, etc. (evolutivo)
  • Guía de compilación / instalación de inicio rápido (qué dependencias y sistemas necesita)
  • Algunos documentos reales, preguntas frecuentes y ejemplos de uso (para el usuario final)
  • Además, los archivos de AUTHORS / HACKING son comunes, enumerando a todos los que han estado involucrados (importante para los derechos de autor) y HACKING describe cómo contribuir.

Los nombres de los archivos pueden variar, y algunos ponen todo esto en HTML en algún lugar, pero esta es la configuración típica.

Recomiendo mirar algunos buenos proyectos de código abierto para ver cómo lo hacen, luego simplemente copie y adapte su método al suyo. :)

Lo más importante es hacerlo público, entonces es probable que obtengas algunos comentarios si hay otros que piensan que tu proyecto es interesante.

    
respondido por el Macke 07.03.2011 - 14:04
13

El sitio web Free Software Foundation probablemente sea la mejor fuente de información sobre lo que debe hacer para abrir el código fuente. . Para ponerlo a disposición de otras personas, pruebe uno de los siguientes:

Hay muchos más, pero estos parecen ser los más populares. (Yo uso GitHub.)

La gente espera que el programa / biblioteca funcione. Ellos esperan que tenga algún tipo de documentación. Y, al igual que con todas las empresas de software, esperan que estés abierto a los informes de errores y parches.

Luego, deberá esforzarse (o encontrar a alguien que lo haga) y simplemente hacerlo ™.

    
respondido por el Jeremy Heiler 02.03.2011 - 21:48
2

Elija una licencia de la lista de Iniciativa de código abierto . Si desea que alguien pueda hacer lo que sea con su código, use algo como BSD. Si desea que alguien que lo use lo mantenga abierto y tenga que proporcionar el código fuente, use Gnu GPL. Para alguien nuevo en esto, sugeriría una de esas dos licencias.

Agregue la licencia al código y colóquela en algún tipo de repositorio de código abierto.

    
respondido por el David Thornley 02.03.2011 - 22:39
0

Colóquelo en un sitio de alojamiento público como Codeplex , Github , Bitbucket , Código de Google y ponga su licencia preferida en el código fuente (o archivo de texto separado) - ¡listo!

    
respondido por el MattDavey 08.11.2011 - 17:06
0

He estado leyendo comentarios: quería señalar que lo que la gente espera depende del estado del proyecto. EG: Para un lanzamiento de producción, la ppl esperará buena documentación. Si está marcado como "Alfa", la gente perdonará más la documentación que consiste en un archivo de texto que escribió en 30 minutos.

Mi consejo es elegir una licencia, marcarla como Alfa para establecer las expectativas de las personas, luego hacerla pública en algún lugar y comenzar. Pruebe e interese a los otros grupos y obtenga retroalimentación de ellos sobre lo que necesita mejorar.

No estoy diciendo que se demore y sea un éxito al instante, es solo que puedes pasar mucho tiempo preocupándote por los pequeños detalles y eso te bloquea de las cosas importantes. Adelante, y buena suerte :-)

    
respondido por el James 07.03.2011 - 14:02

Lea otras preguntas en las etiquetas