Come condividere il codice come open source?

7

Ho un piccolo programma che ho scritto per un gruppo locale per gestire un problema di programmazione un po 'complicato per la pianificazione di più riunioni in più sedi che cambiano settimanalmente secondo determinati criteri. È un bisogno di nicchia, ma non sarei sorpreso se ci fossero altri gruppi che potrebbero usare software come questo. In effetti, abbiamo ricevuto richieste da altri per indicazioni su come iniziare un gruppo come questo, e se i loro gruppi diventano così grandi, potrebbero anche volere un software speciale che aiuti nella programmazione. Ho intenzione di continuare a sviluppare il programma e alla fine renderlo un'app web online, ma una versione alpha molto semplice è completata come app per console.

Mi piacerebbe renderlo disponibile come open source, ma non ho idea del tipo di processo che dovrei affrontare prima. In questo momento, tutto quello che ho è codice Java, nemmeno testato a livello di unità. Non ho mostrato il codice a nessun altro. Non c'è documentazione. Non so dove inserire il codice in modo che altri possano accedervi. Non so nulla sulla licenza. Non so che tipo di supporto la gente si aspetta da me se la rilascio come open source. Non ho idea di cos'altro dovrei preoccuparmi.

Qualcuno può delineare per me (o pubblicare un articolo (i) che delinea) il processo di prendere il software open source da "codificato" a "completato / disponibile"? Non voglio davvero mettermi in imbarazzo facendo le cose stranamente.

    
posta Ethel Evans 02.03.2011 - 21:44
fonte

5 risposte

4

Con Java, probabilmente vuoi:

  • Uno script di compilazione (magari scritto in Ant) per compilare (javac), test (java e junit), documento (javadoc) e pacchetto (jar) l'applicazione / lib
  • Alcuni si sbloccano per assicurarsi che la cosa funzioni bene (questo può evolvere in seguito, ma il framework è buono da avere)
  • Alcuni commenti adatti per JavaDoc (se gli sviluppatori sono il tuo pubblico previsto),

E, per qualsiasi progetto:

  • un file README che dice di cosa tratta il progetto
  • un file LICENZA che spiega come copiare
  • Alcuni elenchi di modifiche, versioni, ecc. (evolvibili)
  • Guida alla compilazione / installazione rapida (quali dipendenze e os: es richiedono)
  • Alcuni esempi di documentazione, domande frequenti e esempi di utilizzo (per l'utente finale)
  • Inoltre, i file AUTORE / HACKING sono comuni, elencando tutti quelli che sono stati coinvolti (importante per il copyright) e HACKING descrive come contribuire.

I nomi dei file possono variare e alcuni mettono tutto questo in HTML da qualche parte, ma questa è l'impostazione tipica.

Consiglio di guardare alcuni buoni progetti open source per vedere come funzionano, quindi basta copiare e adattare il loro metodo al proprio. :)

La cosa più importante è tirarla fuori, quindi è probabile che tu riceva un feedback se ci sono altri che pensano che il tuo progetto sia interessante.

    
risposta data 07.03.2011 - 14:04
fonte
13

Il sito Web Free Software Foundation potrebbe essere probabilmente la migliore fonte di informazioni su ciò che devi fare per aprire il tuo codice sorgente . Per renderlo disponibile ad altre persone, prova una delle seguenti opzioni:

Ce ne sono molte altre, ma queste sembrano le più popolari. (Uso GitHub.)

Le persone si aspettano che il programma / la biblioteca funzionino. Si aspettano che abbia una sorta di documentazione. E, come per tutte le iniziative software, si aspettano che tu sia aperto a segnalazioni di bug e patch.

Quindi, dovrai impegnarti (o trovare qualcuno che lo farà) e farlo semplicemente ™.

    
risposta data 02.03.2011 - 21:48
fonte
2

Scegli una licenza da l'elenco Open Source Initiative . Se vuoi che qualcuno sia in grado di fare qualsiasi cosa con il tuo codice, usa qualcosa come BSD. Se vuoi che chiunque lo usi per mantenerlo open source e dover fornire il codice sorgente, usa Gnu GPL. Per qualcuno di nuovo a questo, suggerirei una di queste due licenze.

Aggiungi la licenza al codice e inseriscila in una sorta di repository open source.

    
risposta data 02.03.2011 - 22:39
fonte
0

Sono stati letti commenti - Volevo sottolineare che ciò che l'attesa ppl dipende dallo stato del progetto. Ad esempio: per una versione di produzione, ppl si aspetta una buona documentazione. Se è contrassegnato come "Alfa", le persone saranno più indulgenti con la documentazione che consiste in un file di testo scritto in 30 minuti.

Il mio consiglio è scegliere una licenza, contrassegnarla come Alpha per impostare le aspettative di ppl, quindi renderla pubblica da qualche parte e iniziare. Cerca di interessare gli altri gruppi e prendi feedback da loro su ciò che deve essere migliorato.

Non sto dicendo che ci vorrà e sarà un successo all'istante, è solo che puoi passare a preoccuparti a lungo dei piccoli dettagli e che ti blocca dalle cose importanti. Vai per questo, e buona fortuna: -)

    
risposta data 07.03.2011 - 14:02
fonte
0

Attaccalo su un sito di hosting pubblico come Codeplex , Github , Bitbucket , Codice Google e inserisci la tua licenza preferita nel codice sorgente (o in un file di testo separato) - lavoro fatto!

    
risposta data 08.11.2011 - 17:06
fonte

Leggi altre domande sui tag