常見問題

常見問題集


Exercism 背後有哪些人?

Exercism 的兩位共同創辦人是 Katrina Owen 和 Jeremy Walker。

Exercism 最初是由 Katrina 創立。她是精通多種語言的開發者,也是「Ruby Hero」獎得主,當年攻讀分子生物學學位時,意外走上了開發者這條路。 2006 年她在 JavaRanch 擔任志工時,開始挑程式碼的毛病,從此一頭栽進去。 寫程式時,她專注在自動化、工作流最佳化與重構。 她非常重視開源,也在 Exercism 之外的幾個專案貢獻。

2016 年,Jeremy 以共同創辦人的身分加入,目前是 Exercism 的執行長。 Jeremy 是社會企業家兼軟體開發者,熱衷於平等,以及為每個人創造機會。 除了 Exercism,他也是身心健康與團隊建立平台 Kaido 的共同創辦人。

除了這個領導團隊,Exercism 還有一個小型全職與兼職團隊,並有數千位優秀的志工支持著,他們打造了各式各樣的語言軌道與練習,讓 Exercism 如此受歡迎。

進一步了解我們的導師、軌道維護者,以及數千位貢獻者。

「Exercism」這個名字是怎麼來的?

雖然這個名字和「exorcism」只差一個母音,但它和惡魔,或是修正「邪惡的程式碼」,都完全無關。

其實,它是 exercise 這個字的諧音雙關。 Katrina 對每道練習的看法是:它們很小、很基本,而且看似簡單。 但真正動手解題時,魔鬼往往就藏在細節裡。 換句話說,一旦你開始思考那些細微之處,原本簡單的練習就突然變得更有挑戰性了。

想更了解「魔鬼藏在細節裡」是什麼意思,可以看看 Katrina 的 Here Be Dragons 和 One Small Step 這兩場演講。

基礎

我迷失了,該從哪裡開始?

你很幸運。 這裡有一份逐步指南,帶你踏出第一步。

如果還有哪裡不清楚,或是有東西無法運作,其他人可能也遇到同樣的情況,歡迎你在論壇上告訴我們。

登入時出現「Sorry, we could not authenticate you from GitHub」錯誤,該怎麼辦?

這表示 GitHub 無法驗證你的身分。 可能是你選擇不授權,也可能是你的 GitHub 帳號設定不完整。 常見的原因是你還沒在 GitHub 驗證電子郵件地址。 你可以到 GitHub 電子郵件設定 檢查。

我要怎麼刪除帳號?

你可以透過設定頁面底部的連結刪除帳號。 如果你的問題和電子郵件與通知有關,可以在個人偏好設定中調整。

解一道練習時,我該做什麼?

開始做一道練習時,你會拿到一份需要完成的「解答雛形」,以及一套完整的測試套件,代表你的解答必須滿足的需求。 這種開發方法屬於測試驅動開發。

我要怎麼解鎖練習?

預設情況下,含有學習練習的軌道會要求你先解完學習練習,才能解鎖其他練習(如果你對某個語言很熟,每道練習大約 5 分鐘就能解完)。 這叫做學習模式。

我們建議用學習模式來推進軌道進度,不過你也可以切換到練習模式來解鎖所有練習。 更多資訊請見解鎖練習。

為什麼我在舊網站已經解鎖的練習又變成鎖定的?

預設情況下,含有學習練習的軌道會要求你先解完學習練習,才能解鎖其他練習(如果你對某個語言很熟,每道練習大約 5 分鐘就能解完)。 這叫做學習模式。

對所有用過舊版 Exercism 的使用者來說,學習模式是預設值。 因此,回鍋的使用者可能會發現先前已開放的練習現在變成鎖定的了。

我們建議用學習模式來推進軌道進度,不過你也可以切換到練習模式來解鎖所有練習。 更多資訊請見解鎖練習。

Exercism 命令列用戶端

我沒辦法提交!該怎麼辦?

新網站有全新的命令列用戶端,也需要你的練習提供一些額外的中介資料。 請閱讀如何升級命令列用戶端,並把解答搬移到新網站。

如果這樣還是沒用,或者你沒用過舊版的命令列用戶端,請讀一讀命令列用戶端逐步教學。 如果還是沒用,請到論壇發文,我們會幫你解決。

我要怎麼查命令列用戶端的版本?

版本指令 exercism version 會輸出目前執行的 Exercism 命令列用戶端版本。 加上 --latest 旗標執行版本指令 exercism version --latest,就能確認是否有更新的版本可用。

我要怎麼升級到最新版的命令列用戶端?

指令 exercism upgrade 會在有新版本時,把命令列用戶端升級到最新的可用版本。

升級時出現權限不足的錯誤!該怎麼辦?

如果你在升級命令列用戶端時遇到權限不足的錯誤,很可能是這個執行檔是透過系統的套件管理工具(例如 Homebrew)安裝的,或是被安裝到一個你已經沒有寫入權限的目錄中。

如果你的命令列用戶端是透過套件管理工具安裝的,請用套件管理工具來升級,而不是執行 exercism upgrade 指令。

如果命令列用戶端是手動安裝的,請確認 Exercism 命令列用戶端的位置:在 Linux 和 MacOs 上用 which exercism,在 Windows 上用 where exercism,並確認回傳的路徑是你自己建立的目錄。 如果是這樣,請用系統提供的工具變更該目錄的權限,讓你的使用者取得寫入權限,然後再試著升級一次。 如果你不確定那個目錄是不是你建立的,或者回傳的路徑是系統路徑,請用系統工具移除命令列用戶端,再依照互動式逐步教學重新安裝。

在 Windows 上升級後跳出「16 位元 MS-DOS 子系統」錯誤對話框,該怎麼辦?

在 Exercism 命令列用戶端 3.0.5 版之前,升級指令有 bug,會把命令列用戶端的執行檔換成一個純文字檔,因而產生「16 位元 MS-DOS 子系統」錯誤。 要解決這個問題,請刪除損毀的執行檔,並依照互動式逐步教學重新安裝命令列用戶端。

導師模式

我的佇列好一陣子沒更新了,是不是出了什麼問題?

等待時間有時會比平常久,原因很多(導師人數、季節等),也可能只是佇列看起來沒在更新。 這很常見,應該很快就會看到進展。 如果你的等待時間遠超過平均值,請參考下方的提出 Issue。

我的軌道有多少位導師?我在網站上只看到幾位。

網站只會顯示有提供個人簡介的導師,並不是實際在審閱解答的導師人數。 放心,有導師正在消化他們的佇列,撐著點喔!

我提交了錯誤的解答/檔案,該怎麼辦?

在該練習頁面上,前往「你的疊代」。 如果那個不要的疊代是收合的,請點一下有圓圈的箭頭。 在「⋯」選單中選擇「刪除疊代」。

我要怎麼檢舉不當行為或不良引導的例子?

關於我們對行為的期待,請參閱行為準則。 如果你想檢舉某件事,請來信 abuse@exercism.org,我們會在尊重你和你的隱私的前提下,盡力修正或解決問題。

為什麼我不能對呈現提供意見回饋?

要對某個軌道的呈現提供意見回饋,你必須符合以下三項條件:

  1. 正在引導該軌道
  2. 在該軌道引導過至少 100 個已結束的討論
  3. 整體滿意度評分至少達 95%

讓 Exercism 更好

這太棒了!我要怎麼參與?

有幾種不同的方式:成為導師、管理一個語言軌道,或是在 GitHub 上回報(甚至動手解決!)issue。 更多內容請見如何貢獻頁面。

新的語言軌道是怎麼加到網站上的?

當社群成員願意帶頭,並成為該軌道的維護者時,新的語言軌道就會建立。 如果你想參與協助建立,這裡有相關說明。

告訴我們哪裡有問題

如果你發現哪裡有問題,請在論壇開一個討論串告訴我們。

開討論串之前,請先確認是否已有相關討論。 可以多試幾個不同的關鍵字。

如果我的問題不在這裡,也不在論壇上呢?

如果你的問題還沒被解決或回報過,請開一篇新的論壇文章。

請務必附上以下資訊:

  1. exercism troubleshoot 指令的輸出(如果是 CLI 問題)
  2. 你遇到問題的詳細情況
  3. 重現該問題的步驟
  4. 如果適用,附上相關 issue 的編號(格式如 #1203)

如果網站上的語言內容有問題呢?

如果你的問題和語言軌道中的某道練習有關,請從這份清單找到正確的語言軌道,並在該處提交 issue。 請用下方的範本說明問題是出在說明文字,還是某個語言特有的地方。

如果你發現錯字,或是對網站整體的用字或說明有更清楚的建議,請在論壇開一篇新討論串,並附上以下資訊:

  1. 問題所在頁面的連結
  2. 說明錯誤是什麼,或哪裡不清楚
  3. 你建議的修改