2010-06-19 73 views
8

我有一個我寫的程序,我一直鼓勵人們將它公開發布。關於將代碼發佈到野外

什麼是最好的方式去呢?只需將它轉儲到公共場所,並希望獲得最好的?

會有多少批評(標準,決策等)以及如何爲此做好準備。大約兩年來,我一直是這個應用程序的唯一開發人員。

許可證(GPL,MIT等)實際上有多少差異?

任何經驗?

+2

我投票結束這個問題,因爲**是關於授權或法律問題**,而不是編程或軟件開發。 [見這裏](http://meta.stackoverflow.com/a/274964/1402846)瞭解更多信息,以及[幫助/話題]。 – 2015-06-15 23:21:12

回答

2

使用衆所周知的經過良好測試的open-source license將使您的用戶更容易知道他們在代碼中的位置。你可以做的最糟糕的事情是無需許可證即可釋放你的代碼。沒有許可證意味着沒有用處,因爲在大多數司法管轄區,軟件自動受版權保護,沒有使用權或重用權。

如果您不希望項目因缺乏興趣而枯萎,您需要將其置於開發人員面前。在大型開源項目站點(例如SourceForge,GitHub或)上發佈它將幫助您獲得該可見性,並將爲管理項目提供大量基礎架構。你做得越多,其他人找到它的機會就越好,嘗試它並使用它。

+0

+1用於推薦許可證創新。而困難的部分是建立社區來維持軟件;我不認爲自己擅長這一點,但它似乎至少部分是營銷活動。 – 2010-06-19 12:17:37

4

許可證是一個好主意,即使你不關心人們如何處理代碼 - 大多數情況下人們會樂於採用「原樣」代碼,如果它沒有做到他們想要的,他們會把它扔掉 - 但你永遠不知道什麼時候一個白癡會試圖起訴你,因爲他們在閱讀你的代碼時燒了一口喝着熱咖啡。你也可能希望限制別人從你的辛苦工作中獲利的用法(派生工程等)。在圍欄的另一邊,可能會拿取和使用您的產品/代碼的人想知道他們在使用/複製/分發方面的立場。通過詢問你的姓名保留在代碼中,你也可以確保你獲得vcredit的工作,並且任何在野外發生的改進/建議都可以讓你回到你的身邊。

如果你只是想放棄代碼而沒有多少進行中的開發,那麼一個好地方是CodeProject - 你可以發佈應用程序並寫一篇描述它的小文章,然後由你來決定是否/何時將發佈更新。

如果你想要其他人進行協作,那麼有很多開源網站會支持這種方法。

至於批評,您可能會從需要技術支持的人員或希望提供額外功能的人那裏收到幾封郵件。儘管大多數人都很有禮貌。如果你爲自己編寫程序,很有可能當它進入荒野時,你會發現必須以特定方式使用的所有位才能正常工作,並且你不關心的所有其他選項但是產品需要使其適用於更廣泛的受衆 - 如果您不小心,可能會陷入大量支持工作。如果他們要求你不想支持的東西,最終不要害怕對別人說「不」,這畢竟是你的程序和你的時間。

最主要的是有樂趣:-)

0

CodeProject上是一個不錯的suggestion-但它確實取決於平臺。通常,每個主要開發平臺的用戶都會涌入其他站點以獲取其開放源代碼擴展或應用程序。例如,Microsoft堆棧中的許多開發人員會在Visual Studio庫或CodePlex中查找相關內容。 SourgeForge顯然也有自己的宗教追隨者。我會建議您在網站上推廣您的新應用,以便找到類似的內容。無論您使用哪個公共網站託管它,Google頁面的排名也會影響到有多少人能夠找到它,最終還會影響您對該項目獲得多少批評(建設性或其他)。許可證總是一個很好的計劃。根據我的經驗,每個主要的開源協作站點都傾向於學習特定的許可機制,所以如果您沒有任何特定的要求,我只會做一些看起來最受歡迎的協議。