完全採用自由軟體/開放原始碼軟體在麻省理工學院授課
作者:Gerald Jay Sussman [1]今年春天(2020 年),由於 COVID-19 疫情,麻省理工學院將所有課程改為線上教學。校方提供了各種非自由軟體的授權,但我基於原則反對使用這些軟體。為了我的課程,一門電腦程式設計進階課程,我安排避免向我的學生推薦任何非自由軟體。
相反地,我使用了安裝在自由軟體基金會擁有的伺服器上的 BigBlueButton。FSF 的 Rubén Rodriguez 協助讓這個軟體和其他軟體運作。(感謝 FSF 和 Rubén!)
這門課使用了一本 Chris Hanson 和我合著的教科書草稿。書名為《Software Design for Flexibility (how to avoid programming yourself into a corner)》(軟體設計的彈性:如何避免將自己逼入程式設計的死角);它將很快由麻省理工學院出版社出版,並採用創用 CC 姓名標示-相同方式分享授權(且所有支援本書的程式碼均採用 GNU GPL)。
我也沒有要求我的學生在關於課業、論文或專案的一對一談話中使用非自由軟體。我使用了一個 Jitsi Meet 伺服器,該伺服器安裝在我實驗室中一台閒置的、即將被丟棄到電子垃圾堆的廢棄電腦上。
我很高興地報告,我的課程順利進行,我的學生得到了良好的服務,而且我們都對結果感到相當滿意。
伺服器軟體仍然存在的一個缺陷是,Jitsi Meet 和 BigBlueButton 沒有為 LibreJS 指出它們的 JavaScript 程式碼是自由軟體。它確實是自由軟體——它的原始碼已明確授權——但 LibreJS 無法自動判斷這一點。
註腳
[1] Gerald Jay Sussman 是麻省理工學院 Panasonic 電機工程學教授。他是美國國家工程院院士和美國文理科學院院士。他於 1985 年協助創立了自由軟體基金會。