程序员为什么要学英语

6,657 阅读3分钟

前言

关于程序员是不是需要掌握英语,总会有形形色色的说法,有的人会说:“程序员不需要掌握英语,到了公司之后,把业务逻辑写好就可以了!”。也有的人说:“英语对程序员很重要,学好英语,技术成长会比较快”。每次听到不同的说法,我也会变得犹豫不定,到底应不应该花时间把自己的英语能力给提升上去呢?

我工作 5 年左右了,敲了 5 年的代码,逐渐意识到学好英语对程序员的重要性,如果想要自己的技术达到一个比较高的层度,掌握好英语是不可或缺的。可以这么说:“英语好的程序员不一定技术牛逼,但是技术牛逼的程序员一定英语好!”

下面我总结一下,自己在开发过程中用到英语的常用场景。

用到英语的场景

  1. 咱们所学的计算机语言的官方文档通常是英文的。
  2. 有的技术栈比较新,在国内还没有流行开来,中文资料甚少。如 2018 年公司要用 Flutter,国内用的公司不多,需要通读 Flutter 官方文档,查阅英文技术博客。
  3. 程序员肯定离开不了 StackOverFlowgithub。前者是我们碰到问题、bug时,可以快速在 StackOverFlow 找到此问题的答案;Github 是全球最大的“基友”社区(里面有各种各样的第三方开源成熟库,供我们学习、借鉴、使用)。

在 StackOverFlow 提问问题,以及解决方案都是英文的。

提问: image.png 解答:

image.png

而 github 的 wiki 文档也是英文的(国内的一些库例外): image.png

issued 同样是英文的:

image.png

  1. 毕业后,想继续修炼一下自己的“内功”。B 站上有斯坦福、麻省理工的公开课,我们想学习,可是讲师说的都是英语,听不懂可太难受了。

  2. 公司让我调研一下 Vert.x 与 Ktor 这样的后台技术框架,这两个都是比较新的框架,国内相关资料甚少。只能通读英文官方文档,查阅国外相关的英文博客。而其中 Verx这个开源库的4个主要开发者都在 Discord这个社交软件里,有不会的可以直接向作者提问。

image.png

后面也有幸参与 Vert.x 的翻译工作,正所谓”帮助他人,手有余香“:

image.png

总结

作为程序员,我们用到英语的场景,大体上可分为一下几个方面:

  1. 计算机技术,美国是最厉害的,我们想获取到最新的技术知识,是避免不了看英文文档的。学好一门新的程序语言,也是避免不了通读官方英文文档的。
  2. 开发过程中,碰到的一些bug或难题,用 google(问题尽量用英文描述) 代替 baidu,在 StackOverFlow 或者国外其它博客上(如 Medium)寻找问题的答案。(百度的技术问题搜索和google比相差甚远,且国内的 CSDN 这样的博客简直一大抄,找问题的答案浪费太多时间)
  3. 在用第三方库的时候碰到一些难题,最好的办法是与库的开发者直接沟通,这个时候需要把自己想问的问题用英文表述清楚,也要能看懂对方的回答。
  4. 业余时间,想给自己充充电,看一些原汁原味的英文书籍、国外名牌大学的公开课,或者 YouTobe 上一些好的课程。