2009-05-06 180 views
0

最近,我們發佈了針對開發者的API訪問的第一個穩定版本(主要產品的主要功能)。我們應該開源嗎?

我們的API現在有大約4個功能,具有自己的簽名,響應類型等。

爲了提高其受歡迎程度,我們想發佈包裝類這個功能在最流行的編程語言。

所以現在我們必須決定,如何以及在何處這一類將被託管:

1)我們應該使用一些公共庫(github上谷歌代碼等) - 這樣的人誰想加強它會有這種可能性(我懷疑我們能找到很多)。

2)或者我們應該只是通過我們的網站提供一個可供下載的檔案,也許將它們發佈到最流行的類庫(代碼片段)?

您看到每種方法都有哪些優點/缺點? 我們應該選擇什麼?

重要的問題#1:

我們必須實現在幾種語言這個類體面的代碼質量的能力和資源。

重要的問題#2:

我們將在我們的API簽名的詳細修改 - 所以這個類必須得返工。

重要的問題#3:

良好的代碼質量和文檔是必須的。

+0

你打算將整個程序作爲OpenSource發佈,還是隻是API包裝器? – 2009-05-06 14:19:24

+0

我們只想發佈包裝,使API產品更受歡迎,更易於使用。 – ep3static 2009-05-06 16:57:33

回答

1

我有一點很難理解你的問題非常有價值。首先,如果您打算製作API包裝OpenSource而不是包裝它們的代碼,那麼您必須非常小心您OpenSource許可的措辭。另外,您應該考慮是否允許客戶在非OpenSource程序中使用您的API。你也許可以同時使用GPL和linking exemption。鏈接預期是重要的,但。

我已經發布了quite a few API的自由軟件,所以也許我可以解決其餘的問題。

很少有人會做任何事情,而不僅僅是使用你的API。一些人會寫回建議。很少有人會真正查看代碼。如果你找到一個真正想要提交補丁的人,你會發現一顆罕見的鑽石。珍愛它。

這並不意味着您不能堅持代碼質量和風格一致性的certian標準。但令人鼓舞。

2

我徹底推薦向社區發佈代碼;此外,我認爲使用公共回購協議釋放它是個好主意。即使你沒有很多用戶的貢獻(儘管我懷疑你可能低估了這一點),但你已經發布代碼的事實對許多開發人員來說是一個平局。

使用公共回購顯示透明度,開放性和願意與開發人員交流,所有的東西都將被讚賞。

除此之外,人們常常被第三方二進制blob拖延,因爲錯誤無法修復;發佈代碼將爲您的最終用戶帶來非常實際的用途。

請記住,您的目標是開發人員我認爲發佈代碼總體上是一個勝利。

但請確保您選擇適當的許可證,因爲開發人員可能在某些許可證方面存在問題。像MIT license幾乎涵蓋了所有的基礎 - 即開發人員可以使用它商業,做任何他們想要的,只要他們意識到你不承擔任何問題的責任。

去吧!

2

這真的取決於。正如kronoz已經設置許可證是最重要的一開始。這將啓用其他用戶或不。那麼這取決於你期望從開源中獲得什麼。如果不知道「開放」是什麼意思,而不是超級做。

  • 還有也許將會是人們在尋找和開發你的代碼。
  • 不要期望提高代碼質量
  • 請務必注意,社區會發展自己的感覺,從而發展到應有的地方。如果這與你的目標不同,你的收益不會太大,因爲你必須再次分贓
  • 你需要社區中介人。有人閱讀郵件列表,回答問題,描述事情。只有這樣,你得到最大的這項合作
  • 其他開發商的其他意見帶來的,這是大部分時間
相關問題