CatCoding

培养习惯,程序员学英语没那么难

2022-01-24

接着上一篇,我们谈谈程序员如何能从各个维度来提高自己的英语能力。

首先声明,我自己的英语水平也没那么好,技术类的阅读没有问题,自己还在提高英语写作和口语,我的目标是在专业方向上完全无障碍的英语表达。

这是我自己日常工作生活中总结出来的一些小经验吧,每个人的学习习惯不同,这些仅作参考。

阅读

作为 IT 从业人员,我们日常生活中其实会接触很多英文内容,书籍、文档、参考资料等等。如果一个英文不够好的人会优先选择中文内容。

如果你想提高自己的英文能力,就得改变这个默认倾向。否则这就是一个怪圈,你一直看中文的就不可能打破这个循环。

首先,编程的时候参考文档换成优先看英文版本,比如假设你是前端开发,平时需要看 vue 文档,那就换成英文的,而且英文的内容更及时更新。

我建议默认也把操作系统的语言设置为英文的,这样很多软件默认语言也自动成为英文。

关闭浏览器的自动翻译功能,因为这会干扰阅读,也会让你放弃掉自己先阅读英文的机会。

在浏览英文网页的时候,可以使用一些辅助查询插件,比如我用的这个 Chrome 插件 Saladict 沙拉查词 就提供各种辅助查询,也可以把自己不认识的生词保存在线上以便以后回顾。

在用互联网上搜索的时候,也尽量换成使用英文关键词。如果能用 Google 最好,不能的话换成 Bing、DuckDuckGo 搜英文也比百度好很多。

除了文档,另一个不错的英语阅读来源是 Medium.com,这上面除了技术类的文章也有很多其他方向上的内容,这些文章并不是很长,而且排版都非常好,容易让人沉下心来阅读。欢迎关注我的账号:Medium 👻

如果是在校学生,你也许需要看很多计算机相关的书籍,如果能看英文原版的最好。不要恐惧去拿起整本的英文书,因为只要坚持读完第一本,后面自然就会读起来越来越快

我在学校的时候借过《Introduction to Algorithms》和《Structure and Interpretation of Computer Programs》。

学校图书馆的英文书相对更容易借到,因为看的人少很多,从书本的新旧程度看这些书基本没人借过。所以,选择少有人走的路,有时候反而更轻松。

还有不少其他计算机的经典书籍,我认为计算机相关专业的最好在学校阶段看一遍,比如:

  • The Pragmatic Programmer: From Journeyman to Master
  • The C Programming Language
  • The UNIX Programming Environment
  • The Art of Unix Programming
  • Clean Code
  • Refactoring: Improving the Design of Existing Code
  • Computer Systems: A Programmer’s Perspective
  • Code Complete
  • Programming Pearls

这些书中的任何两本认真看完,技术类的阅读不成问题了。

写作

英语写作更难一些,因为相对来说如果不是在外企工作,使用英文写作的场景会少很多。

很多时候越是难的事才越有价值,我在之前公司工作的时候需要写英文的技术文档,懂技术的英文不好,懂英文的技术不好,所以把这两种稀缺能力叠加一起就很好地提高自己的价值。

我们也可以刻意地改变一些习惯培养技术写作,比如使用英文来写 Readme 和代码中的注释,使用英文来写平时的记录和博客之类的。

建立一个自己的英文 Blog 是非常好的方式,我在自己的英文站点 http://coderscat.com 上总共写了 150 多篇技术相关的英语文章,有的是平时工作中的一些记录,有的是解题报告,有的是刻意练习写作的。

在写的过程中需要反馈才能提高,因为有很多中式表达如果没有人指出来自己是意识不到的。

为了得到一些反馈,反馈也会激励我们继续写下去,所以我们需要把自己的内容让更多人看到。

在 StackOverflow, Quora 上回答问题是锻炼写作能力的好平台。我有段时间就经常在 Quora 上回答问题,因为这里有很多英语母语者在浏览。如果他们发现问题可能会乐于帮我指出来。

我有时候会把文章同步到 dev.to,比如我这篇文章曾经是 dev.to 上的爆款:
How To Learn Data Structures And Algorithms

后来我把自己写的文章同步到 Medium.com 上,然后投稿到一些大的技术类专栏,比如 Better ProgrammingLevel Up Coding

为什么要投稿呢,因为可以来判断自己是否写得足够好,而且像 Better Programming 这样对质量要求比较高的专栏,他们能看出我不是英语母语者,但是如果我的内容还不错,也会让自己的编辑去帮我润色,这就是最好的得到反馈的机会。

专业的编辑会从标题的选取、排版、英语写作的用法等等角度去改进文章。我在这个过程中就学会了很多东西。

在 Medium 写作的另一好处是可以赚钱,可以参考一下我写的这篇:
How I Wrote a $500 Article in My First 3 Months on Medium,文中提到的那篇文章一直都还有阅读,后来累计了 1300 $。

在 Medium 上写作赚钱的红利期也过了,除了我上面的那篇爆款,我其他写的文章如果专栏接收大概也只是在 500 元左右的收益。

关于如何建一个盈利的英文站以及如何通过英文写作赚钱,这是另一个比较大的话题,这些也以后再分享 🙌

沟通

听力和口语这是两项英语沟通的必备技能,最好在学校阶段就注重这方面的培养,因为工作之后时间和精力都会少很多。

如果是锻炼听力,轻松的办法是看美剧,比如 Friends 系列。我现在用得更多的是听 Podcast、看 Youtube 之类的。这里推荐两个 IT 类的 Podcast:

在口语这块,我自己在学校阶段没刻意提高,所以虽然阅读、写作相对好些,口语一直都一般。

如果有练习口语的环境,逼得你日常就用英语交流,这就会提高很快。2013 年我在硅谷待过一段时间,每天至少会和印度同事交流一下,感受是听力好了很多。

然而后面脱离了那个环境就又退化了。我两年前曾经付费使用过 Cambly 来练习口语,每天花 30 分钟和英语母语者聊天,自我感觉提高了一些,其实主要是克服了那种不敢说的恐惧。我的发音不太准,以后再花时间改进。


工作后的人大多没有很多时间来学习英语,我见过同事花了 2 万多去报名培训班,上了几次后之后就坚持不了的。提高英语能力不是一朝一夕的事情,没什么捷径,每天花 20 分钟专门阅读,20 分钟锻炼口语或者写作就是很好的习惯。

如果你想不知不觉地提高自己的英语,好好培养一些习惯,然后一直坚持就够了。如果要刻意提高,在校的学生可以尝试先把四六级过了,然后如果有时间和精力去考雅思托福之类的。

以上就是我自己的一些经验之谈。道理很简单:不管是读写听说,多用英语,用得多了日积月累就会提高,摸索出一些适合自己的习惯才能持久。

PS: 要接触英文资料,首先一定得学会科学翻墙,自建梯子我觉得 trojan-gfw/trojan 不错,要么买个商业的梯子,比如 Astrill。

公号同步更新,欢迎关注👻