专栏名称: 机器之心
目录
相关文章推荐
爱可可-爱生活  ·  【[87星]BreezyVoice:为台湾闽 ... ·  昨天  
机器之心  ·  从零开始自主「起身站立」,上海AI ... ·  2 天前  
爱可可-爱生活  ·  【research-template:一个为 ... ·  2 天前  
机器之心  ·  超越DeepSeek-ProverV1.5! ... ·  2 天前  
爱可可-爱生活  ·  【Claude 3.7 ... ·  2 天前  
51好读  ›  专栏  ›  机器之心

官方「补习班」:MIT新年开课,帮你补习学校没教的计算机工具技巧

机器之心  · 掘金  · AI  · 2020-02-06 03:01

正文

阅读 31

官方「补习班」:MIT新年开课,帮你补习学校没教的计算机工具技巧

有些计算机从业人员非常熟悉一套理论,但是可能还要花时间自学一些常用的工具。近日 MIT 推出了一系列相关课程,节省了大家自行摸索的时间。


学校的计算机科学专业会教什么?从数学基础到操作系统,再到机器学习。一般来讲,计算机科学课程会关注该领域最为核心的知识。

与此同时,还有一些工具相关的主题需要我们自己在实际应用中摸索和总结,比如如何用好命令行、如何玩转 Git 等。最近,MIT CSAIL 实验室推出了一系列视频教程,补充了缺失的这部分内容。

课程地址: missing.csail.mit.edu/

课程概况

据介绍,设立该项课程的目的是为了帮助学生了解成为数据科学家和开发者的所有重要主题,但是具体内容是学生平时在课堂中学不到的。本课程非常实用,重点在于其中的实践。课程包括了各种工具的上手介绍——这些工具在开发过程中出现的频率很高,如命令行、git 等。

开课时间是今年的一月份,面向的主要是 MIT 的学生,但是课程资料会通过视频的方式开源给大众。大家可以通过上面的课程地址找到相应的视频和文字资料。

为什么要开设这样的课程?课程页面中提到,学生们在校期间使用这些工具的时间可能长达数百个小时(工作之后可能要用数千个小时),所以教会学生们流畅、无障碍地使用这些工具非常有必要。通过学习,学生们不仅可以节省掌握工具使用方法所需的时间,还可以在后续的职业生涯中受益。

目录和内容

第一节课从 1 月 13 日便开始了,一直到 30 日结束,共有 11 节课。从内容来看,主要涉及命令行相关工具和环境、编辑器(Vim)、版本控制(Git)、元编程、计算机安全等方面,每个程序员或多或少都会接触到。

课程的主要目录如下:

除了目录外,课程还提供了相关内容的介绍:

命令行工具

命令行是计算机从业者最常使用的工具了。在这项课程中,学生们可以了解到如何使用别名、脚本及构建的系统去自动化运行常见或重复性的任务,同时避免在文档中不停地复制粘贴某个命令,或者「忘记运行某个程序」、「忘记传递某个参数」等。

例如,快速搜索历史记录可以节省大量时间。以下示例会展示一些使用 convert 命令为 shell 历史记录做索引的相关技巧。

版本控制

版本控制是编程中非常重要的问题。在复杂的编程项目中协调各个参与者、使代码能够得到及时更新,这些都依赖于 Git。在课程中,学生们将会学到相关的技巧,不再使用 rm -rf; git clone,也不会有更多的合并冲突问题。

课程同时也会教你如何使用这些工具,向一些开源项目贡献代码(使用 pull request 等),以及帮助学习者避免删除工作代码等。

下面这个例子展示了如何使用 git bisect 来查找破坏单元测试的提交,进而用 git revert 去修复。

文本编辑器

文本编辑器可以帮助你使用命令行编辑文件(包括本次修改和远程修改),同时还可以利用一些高级特性完成更多操作。这可以减少很多来回复制文档的操作。同时,课程也会介绍 Vim 的宏特性。

下面这个例子展示了如何使用嵌套的 vim 将 html 表转换为 csv 格式。

操作远程主机







请到「今天看啥」查看全文