Indie Life

開源 vs 閉源:個人專案的選擇邏輯

2026 年 5 月 6 日約 9 分鐘閱讀作者:Hao0321 Studio

本工作室手上同時有開源跟閉源專案。哪個專案該開源?哪些該保留?這個決定影響長期收益、社群關係、自由度。這篇分享實際的決策邏輯。

常見誤解

很多人以為「開源 = 不能賺錢」或「閉源 = 比較專業」。實際上:

我的決策框架

3 個問題決定一個專案開源還是閉源:

Q1:誰是使用者?

使用者傾向
開發者(用我的工具寫程式)開源
消費者(玩遊戲、看內容)閉源
企業(用我的服務)看情況

邏輯:開發者期待能讀程式碼、能 fork、能 contribute。對消費者來說程式碼是無關的。

Q2:差異化來自哪裡?

差異化來源傾向
技術實作(演算法、效能)閉源(技術是護城河)
內容、設計、品牌開源 OK(程式碼複製不出品味)
運營、社群、資料開源 OK(運營是護城河)

Q3:你想要怎樣的關係?

關係傾向
個人作品集、招牌開源(讓人讀程式)
純收入來源閉源
學習與分享開源
有 NDA 限制強制閉源

本工作室的實際分布

專案狀態原因
遊戲大廳官網閉源內容資產、品牌
14 款瀏覽器遊戲(合輯)閉源商業內容
worker.js 後端架構計畫開源適合做為「教學模板」
web-sfx npm package開源(MIT)開發者工具
iframe game SDK計畫開源有 community 價值
客戶接案專案強制閉源NDA

License 選擇

決定要開源後,選哪個 license?

License適合場景
MIT「隨便你拿去用」 — 工具、library、模板
Apache 2.0跟 MIT 類似,但有專利條款,企業友善
BSD-3-Clause跟 MIT 接近,學術界偏好
GPL v3修改版必須也開源(copyleft),希望防止別人閉源 fork
AGPL v3連 SaaS 都必須開源(最嚴格)
BSL(Business Source)4 年後轉 open,期間限制商業競爭
CC-BY-NC內容類(非程式碼),允許 attribution + 禁商用

本工作室預設 MIT。要防止商業競爭時用 BSL(如 Sentry 的選擇)。

開源的隱藏成本

很多人以為開源 = 把程式碼丟上 GitHub。實際上要做:

1 個熱門開源專案 ≈ 0.3 個全職工作。

什麼時候該停掉開源

不是所有開源都該維護到底。停止的訊號:

解法:明確 archive,標 README 為 unmaintained,鼓勵 fork。誠實比拖延好。

開源的真實收益

除了「貢獻社群」這種抽象價值,實際的:

結語

「開源還是閉源」不是道德選擇,是策略選擇。重點是跟你想要的關係跟收入模式對齊。本工作室的混搭策略 — 商業內容閉源、開發者工具開源 — 在過去一年運作得很好。