How to choose open source solution: Difference between revisions

From LemonWiki共筆
Jump to navigation Jump to search
Line 6: Line 6:
#* 最近 (數個月內) 有更新軟體版本,而不是數年前才做最後一次更新或者已經公告停止繼續開發。沒有人維護的專案,代表功能不會更新丶錯誤不會修正,也同時代表未來有資安的隱憂。
#* 最近 (數個月內) 有更新軟體版本,而不是數年前才做最後一次更新或者已經公告停止繼續開發。沒有人維護的專案,代表功能不會更新丶錯誤不會修正,也同時代表未來有資安的隱憂。
#* 程式庫網站 ([[OpenSource for Educators]]) 提供數值資料,以 GitHub 專案為例,點選專頁首頁 (1) 查看 「Changelog」 作者寫的版本更新、或者是 (2) 查看 「commits」檔案更新、(3) 觀察開發活躍度 e.g.: [https://github.com/NuCivic/dkan/graphs/contributors Contributors to NuCivic/dkan]。
#* 程式庫網站 ([[OpenSource for Educators]]) 提供數值資料,以 GitHub 專案為例,點選專頁首頁 (1) 查看 「Changelog」 作者寫的版本更新、或者是 (2) 查看 「commits」檔案更新、(3) 觀察開發活躍度 e.g.: [https://github.com/NuCivic/dkan/graphs/contributors Contributors to NuCivic/dkan]。
#* 程式語言版本的支援程度: 例如該專案程式語言使用 PHP 撰寫,則可比對目前 PHP 版本的支援程度( [https://secure.php.net/supported-versions.php PHP: Supported Versions])。當 PHP 核心開發團隊不支援 A 版,而該專案仍然使用該版本,則代表有 A 版本的漏洞問題。
#* 程式語言版本的支援程度: 例如 (1) 該專案程式語言使用 PHP 撰寫,則可比對目前 PHP 版本的支援程度( [https://secure.php.net/supported-versions.php PHP: Supported Versions])。當 PHP 核心開發團隊不支援 A 版,而該專案仍然使用該版本,則代表有 A 版本的漏洞問題。 (2) 安裝相依性套件時顯示「xxx is discontinued upstream」,例如「Warning: xxx has been deprecated because it is discontinued upstream!」
#* 軟體測試: 專案有無[https://zh.wikipedia.org/zh-tw/%E5%8D%95%E5%85%83%E6%B5%8B%E8%AF%95 單元測試](unit test)、[https://zh.wikipedia.org/zh-tw/%E4%BB%A3%E7%A2%BC%E8%A6%86%E8%93%8B%E7%8E%87 測試覆蓋率]報告(test coverage report)
#* 軟體測試: 專案有無[https://zh.wikipedia.org/zh-tw/%E5%8D%95%E5%85%83%E6%B5%8B%E8%AF%95 單元測試](unit test)、[https://zh.wikipedia.org/zh-tw/%E4%BB%A3%E7%A2%BC%E8%A6%86%E8%93%8B%E7%8E%87 測試覆蓋率]報告(test coverage report)
# 問題回覆與支援文件:使用者遇到問題時,有人協助回覆。
# 問題回覆與支援文件:使用者遇到問題時,有人協助回覆。

Revision as of 18:45, 6 June 2024

技術選擇:如何選擇開放原始碼、自由軟體的軟體方案

方案選擇的指標

  1. 釐清需求:清楚與定義自身需求,作為方案選擇的比較基準
  2. 版本更新和專案開發的活躍度:
    • 最近 (數個月內) 有更新軟體版本,而不是數年前才做最後一次更新或者已經公告停止繼續開發。沒有人維護的專案,代表功能不會更新丶錯誤不會修正,也同時代表未來有資安的隱憂。
    • 程式庫網站 (OpenSource for Educators) 提供數值資料,以 GitHub 專案為例,點選專頁首頁 (1) 查看 「Changelog」 作者寫的版本更新、或者是 (2) 查看 「commits」檔案更新、(3) 觀察開發活躍度 e.g.: Contributors to NuCivic/dkan
    • 程式語言版本的支援程度: 例如 (1) 該專案程式語言使用 PHP 撰寫,則可比對目前 PHP 版本的支援程度( PHP: Supported Versions)。當 PHP 核心開發團隊不支援 A 版,而該專案仍然使用該版本,則代表有 A 版本的漏洞問題。 (2) 安裝相依性套件時顯示「xxx is discontinued upstream」,例如「Warning: xxx has been deprecated because it is discontinued upstream!」
    • 軟體測試: 專案有無單元測試(unit test)、測試覆蓋率報告(test coverage report)
  3. 問題回覆與支援文件:使用者遇到問題時,有人協助回覆。
    • 查看郵件列表 (mailing list) 的討論頻率: 以 GitHub 專案為例,點選「issues」查看使用者提出的問題,同時觀察是否有人協助回覆和解決問題。
    • 支援文件: 是否提供清楚易懂的支援說明文件,或教學影片?
  4. 多人在用(Popularity):
    • 有比較多使用者,代表遇到問題時,可以從網路上 (例如問答服務) 找到比較多的支援文件。
    • 社群實體聚會次數,例如輸入 <架構名稱> (meetup OR conference) 再加上時間條件「過去一年」
    • (輔助用) 以 GitHub 專案為例,則可根據被收藏/星星數 (star) 的數量,作為熱門度的衡量指標 e.g. Stargazers · jackmoore/colorbox · GitHub。但是星星數不準的狀況是,該專案由 C 國人開發,加上 C 國人口眾多,無法作為與其他同型專案的比較基準。
  5. 授權議題:如果想將開放原始碼的軟體方案,整合在公司的商業服務內,需考慮著作權授權與商業應用是否相容。
  6. 維護或轉換方案的成本:選擇免費的開放原始碼的軟體方案,不代表不需要任何維護費用。
    • 該方案所需要的安裝與執行環境
    • 從現有方案轉換到開放原始碼軟體方案的成本
    • 支援跨平台或多種作業系統的方案
    • 日後要轉換到別的方案的成本:(1) 使用者資料是否允許匯出? 例如 Google takeout 資料工具、 (2) 是否允許匯出成自由檔案格式 (open file format)、開放文檔格式 (open document format),而非強迫使用者必須使用舊軟體方案才能開啟的專屬檔案格式 (proprietary file format)。 (3) SEO 議題:建議方案能提供自訂網域 (custom domain name),即使轉換方案仍可維持相同網域。
  7. 中文議題:可以使用繁體中文、多國語言 (unicode)
  8. (選擇性考慮的問題) 使用新或穩定的技術:例如試用 demo 版本功能、或查看截圖,確認軟體方案使用的技術或是否支援行動裝置。

延伸閱讀

Wizard of license

選擇技術

Copyright compliance

相關表單

相關詞彙

  • Technology selection (技術選擇)
  • Copyright compliance

開放原始碼新聞

開放原始碼 OR 開放源碼 OR "open source" 相關新聞聯播
紐時賞析/人工智慧模型是否該「開放原始碼」? 科技界看法兩極 - 聯合新聞網
輝達百般不願意,英國 SCALE 工具鏈使 CUDA 能在 AMD GPU 執行 - TechNews 科技新報
對OpenAI下戰帖 馬斯克:Grok本週開放原始碼 - MoneyDJ理財網
傳奇播放器Winamp開放原始碼,邀請全球開發者共同創新! - T客邦 Techbang
馬斯克再向OpenAI發起挑戰 旗下xAI聊天機器人Grok本周將開放原始碼 - Anue鉅亨
為《網路韌性法》和開源晶片安全做準備- 電子新聞廣播 - 電子工程專輯
Adobe修補內容管理平臺Experience Manager、電商網站平臺Magento漏洞 - iThome Online
Winamp 宣布即將 Open Source 期待更多開發者讓它繼續成長 | HKEPC | LINE TODAY - LINE TODAY Hong Kong
蘋果釋出開源自然語言模型OpenELM,將能用於iPhone等終端裝置 透過Hugging Face託管平台對外提供下載使用 - mashdigi.com
Red Hat 開放原始碼技術高峰會議公布三大產品全新進展將可協助企業推動 AI 創新 - XFastest News
槓上OpenAI 馬斯克:xAI聊天機器人Grok將開放原始碼 - 自由財經
從電動車到AI 看馬斯克開放原始碼背後的商業盤算 - 聯合新聞網
發展開放原始碼 Meta、IBM組AI聯盟 - 工商時報
IBM 開放自家 Granite AI 模型原始碼,有效降低開發人員使用 LLM 門檻 - TechNews 科技新報
OpenAI風暴落幕後 這幾家開放原始碼AI新創公司或成贏家 - Anue鉅亨
OpenAI宮鬥落幕 開放原始碼AI新創公司或成贏家 - 自由財經
馬斯克:旗下xAI聊天機器人Grok將開放原始碼| 全球財經| 全球 | 聯合新聞網 - 聯合新聞網
開源運動聯合創辦人:需廢除 GPL 避免社群努力遭企業濫用 - TechNews 科技新報
歐盟AI法案的監管範圍 可能排除開放原始碼模型 - 聯合新聞網
開放原始碼 RISC-V 登陸筆記型電腦!Framework 再創新 - TechOrange 科技報橘
小心 Github 上的開源 Bot!慢霧余弦:某免費開源機器人藏後門、竊取 Solana 私鑰 - 動區動趨 BlockTempo - 最有影響力的區塊鏈媒體 (比特幣、加密貨幣)
VicOne與VinCSS共同合作,保護聯網汽車的開放原始碼電子控制單元 - 資安人科技網
Google開源公布名為Jpegli的JPEG格式檔案編碼函式庫,讓JPEG檔案壓縮率更高、保留更高畫質 - mashdigi.com
開源電動跑車,特斯拉公開第一輛電動車設計與工程資源 - TechNews 科技新報
【Open Source視野】當虛擬化不再依賴VMware時 - wepro180
【Open Source視野】淺論開源軟件 – 創新科技上的企業架構所隱藏之風險 - wepro180
【Open Source視野】開源碼Kubernetes技術篇:企業架構下如何選擇? - wepro180
強化程式開發流程與環境安全,紅帽打造可信賴的軟體供應鏈 - iThome Online
自由及開放原始碼軟體是什麼?關於它的 7 個誤解 - 電腦王阿達
[專訪]預防Open Source安全風險與侵權爭議 - 資安人科技網
2022年《企業開放原始碼大調查》結果出爐 - 電子工程專輯
開源改變IT,也改造生活 - iThome Online

Powered by Google News