Exercism(exercism.org)是一個免費的程式練習與導師輔導(mentoring)平台:內容依程式語言組織成 track,學習者透過解答一道道附測試套件的小型練習來提升熟練度,提交後先由平台的自動化分析給出快速回饋,遇到瓶頸還可以免費申請真人導師逐題點評。官網自述其涵蓋 83 門程式語言、8,618 道練習(截至 2026-09-03),平台 100% 免費、無廣告,由英國註冊的非營利組織營運,程式碼全部開源。與 freeCodeCamp 等課程體系平台不同,Exercism 不提供課程和證書,核心價值在於「做題—自動回饋—人工導師回饋」的練習閉環,收錄於此供需要專項語言練習的讀者參考。
站點速覽
- 網址:https://exercism.org/
- 類型:程式練習與導師輔導平台
- 費用:100% 免費,無廣告,靠捐贈營運;無任何付費檔位
- 註冊要求:練習必須註冊帳號,支援 GitHub 授權或電子郵件註冊;瀏覽首頁與文件無需註冊
- 介面語言:僅英文
- 內容規模:83 個語言 track、8,618 道練習(截至 2026-09-03);官方 Impact 頁顯示累計約 299 萬名學生、近 7,000 萬次練習提交、41 萬餘次導師輔導討論
站點背景
Exercism 由軟體開發者 Katrina Owen 建立。她在 Jumpstart Labs 教程式設計時,為解決自己的學生做練習得不到回饋的問題寫了這個工具,2013 年將其公開上線;上線 12 個月內自然成長到 6,000 多名使用者提交程式碼或回饋,並有數百名志願者參與建置語言與工具(Wikipedia 條目及其引用的 Wired 報導;Exercism CLI 儲存庫建立於 2013 年 8 月,可佐證此一時間線)。2016 年 Jeremy Walker 加入擔任共同創辦人,現任 CEO(官方 FAQ)。2018 年 7 月網站改版,正式以導師輔導模式為中心;2021 年的 v3 改版加入瀏覽器內編輯器,改變了早期只能用命令列解題的形態。
在組織形態上,Exercism 自述為「在英國註冊的非營利組織」。英國公司註冊處(Companies House)紀錄顯示,EXERCISM 於 2018 年 12 月註冊為無股本擔保有限公司(公司編號 11733062),這是英國非營利機構常見的法律形態;它並非註冊慈善機構。營運資金來自社群捐贈(信用卡、PayPal、GitHub Sponsors)、企業配捐與基金會,官方稱只有約 1% 的使用者會捐款,而整個平台的累計建設成本不足 50 萬美元。團隊規模很小:官方團隊頁列出兩位共同創辦人和兩名全職員工,外圍是約一百名 maintainer 與核心貢獻者,以及遍佈 231 個國家和地區的 6,000 多名貢獻者。
語言 Track 與練習機制
練習依語言 track 組織,從 8th 到 Zig 共 83 門語言,熱門 track 的學生數相當可觀——Python 約 79 萬、JavaScript 約 49 萬、Java 約 27 萬(首頁資料,截至 2026-09-03)。加入 track 後有兩種進度模式(官方 FAQ):預設的 Learning Mode 依概念順序用教學練習逐步解鎖後續題目;切換到 Practice Mode 則可解鎖全部練習自由選題。
每道題給出樁程式碼和一套完整測試,學習者要寫出能通過全部測試的實作,形式上接近測試驅動開發。題目被官方定位為「小、看似瑣碎、實則細節見真章」(FAQ),例如根據過敏評分計算過敏原清單、判斷棋盤上兩個皇后是否互相攻擊等。
解題有兩種方式(官方文件):
- 瀏覽器內編輯器:無需安裝任何環境,83 門語言全部支援在網頁裡寫程式、跑測試,適合新 track 起步或快速試用一門語言;
- 命令列 CLI:Exercism 自述「本質上是 CLI 優先的工具」。用
exercism download把題目(含 README、測試與樁檔案)拉到本機,在自己的編輯器裡解題、本機跑測試,再exercism submit提交,適合想要完整除錯與個人化環境的練習者。
提交未完成的解答也是允許的,這樣可以先查看他人的社群解法,或直接向導師求助(CLI 文件)。
自動化分析與導師輔導
提交之後平台會做兩層回饋。第一層是自動化分析:系統對解答執行靜態分析,快速指出可改進之處。第二層是真人導師:練習卡住時可以發起 mentoring 請求,導師會在網頁對話中與你逐輪討論程式碼(入門文件)。導師全部是志願者,輔導不收費;成為導師同樣向所有使用者開放,平台以 reputation 作為激勵(mentoring 頁面)。
導師輔導是 Exercism 區別於多數刷題站的核心機制,規模也不小:Impact 頁顯示累計已有 41 萬餘次輔導討論、8.5 萬多名學生給導師寫下感謝評價(截至 2026-09-03)。但要對其回應速度有現實預期:官方 FAQ 坦言,等待時間受導師數量和時節影響可能偏長,佇列看起來一段時間不動並不罕見。不同 track 的導師多寡不一,熱門語言通常較快。
開源與社群
Exercism 的全部程式碼託管在 GitHub exercism 組織(287 個儲存庫,團隊頁資料):
- 網站本體 exercism/website 採用 AGPL-3.0,但 README 明確聲明這是「內部儲存庫」——原始碼公開,卻不接受 Pull Request,也不支援本機運行,重用需自行評估;
- 命令列 exercism/cli(Go)採用 MIT,2013 年建立至今仍在活躍維護;
- 各語言 track 與跨 track 的練習題目規範(problem-specifications)同樣以 MIT 開放,練習內容可以被自由重用。
社群參與的主要入口是擔任語言 track 的 maintainer、貢獻練習,以及註冊成為導師;新語言 track 由社群成員牽頭建立(FAQ)。
適用場景
- 已有一定基礎,想透過成體系的小練習把某門語言寫「地道」,尤其是藉助導師回饋修正思維慣性的學習者。
- 想零安裝快速試一門新語言(瀏覽器編輯器),或在本機真實工具鏈中做練習(CLI)的開發者。
- 希望以輔導他人來反哺自身學習、累積開源社群聲譽的進階開發者。
局限
- 必須註冊:不做題可以瀏覽,但練習、提交與導師功能都需要帳號。
- 導師回應時間不穩定:導師是志願者,等待時長隨 track 熱門程度和時節波動,官方 FAQ 對此有明確說明;急需即時回饋時不應依賴 mentoring。
- 題目偏小型練習:平台刻意聚焦小題訓練而非專案實戰,不提供課程體系、專案作業或證書;需要完整課程路徑的初學者更適合 freeCodeCamp 一類平台。
- 介面僅英文:練習題目與導師交流也以英文為主。
- 核心程式碼儲存庫不接受外部 PR:網站儲存庫原始碼公開但定位為內部儲存庫,想貢獻程式碼只能走 track、練習與工具鏈。
同類參考
- freeCodeCamp(本站已收錄):同為免費、捐贈驅動的非營利學習平台,但路線截然不同——freeCodeCamp 提供按專案推進的完整課程體系並可獲得免費認證證書(每證約 300 小時,官方 About),適合從零系統入門;Exercism 則聚焦單語言的小題練習與人工導師回饋,適合有基礎者打磨具體語言。
- Codewars:同為練習型平台,以 kata(段位升級)模式組織演算法與語言小題,可作對照參考。
參考資料
- Exercism 首頁(核查日期:2026-09-03)
- Exercism's Impact Report(核查日期:2026-09-03)
- Exercism's Team(核查日期:2026-09-03)
- Donate to Exercism(核查日期:2026-09-03)
- EXERCISM - Companies House(核查日期:2026-09-03)
- Getting started - Exercism Docs(核查日期:2026-09-03)
- Solving exercises - Exercism Docs(核查日期:2026-09-03)
- Working locally / CLI - Exercism Docs(核查日期:2026-09-03)
- Frequently asked questions - Exercism Docs(核查日期:2026-09-03)
- Exercism - Wikipedia(核查日期:2026-09-03)
- exercism/website - GitHub(核查日期:2026-09-03)
- exercism/cli - GitHub(核查日期:2026-09-03)
- exercism/problem-specifications - GitHub(核查日期:2026-09-03)
- freeCodeCamp About(核查日期:2026-09-03)



