仅使用自由/开源软件教授我的麻省理工学院课程
作者:Gerald Jay Sussman [1]今年春天(2020 年),由于 COVID-19 大流行,麻省理工学院将其所有课程都转移到了线上。 它提供了各种非自由程序的许可证,但我基于原则反对它们。 对于我的课程(一门高级计算机编程课程),我做了安排,避免向我的学生推荐任何非自由软件。
相反,我使用了在自由软件基金会拥有的服务器上运行的 BigBlueButton 安装。 FSF 的 Rubén Rodriguez 帮助使这个软件和其他软件正常运行。(感谢 FSF 和 Rubén!)
该课程使用 Chris Hanson 和我编写的教科书草稿。 这本书名为“灵活的软件设计(如何避免将自己编程到死胡同)”; 它将由麻省理工学院出版社出版,并采用 Creative Commons Share Alike 许可(并且支持本书的所有代码都采用 GNU GPL)。
我也没要求我的学生使用非自由软件进行关于课堂作业、论文工作或项目的一对一对话。 我使用了一个 Jitsi Meet 服务器,该服务器安装在我实验室一台废弃的、毫无用处的计算机上,这台计算机正准备被送往电子垃圾堆。
我很高兴地报告,我的课程成功地进行了,我的学生得到了很好的服务,我们都对结果感到满意。
服务器软件仍然存在的一个缺陷是,Jitsi Meet 和 BigBlueButton 没有为 LibreJS 指示它们的 JavaScript 代码是自由的。 它的确是自由的——它的源代码有明确的许可——但 LibreJS 无法自动确定这一点。
脚注
[1] Gerald Jay Sussman 是麻省理工学院的松下电气工程教授。 他是美国国家工程院院士,也是美国艺术与科学院院士。 他于 1985 年帮助创建了自由软件基金会。