作者:Lucida
原文链接:http://zh.lucida.me/blog/english-for-programmers/
本文谢绝转载,如需转载需征得作者本人同意,谢谢。
这篇文章面向程序员,简要的介绍了一些学习计算机专业英语的步骤和经验。
之前不少人曾站内我如何学习英语,我也曾试图写一篇如何学习英语的博文,但我现在的实力着实无法写出令人信服的文章:
所以这篇文章并不是一篇通用的(General)英语学习教程——而是一篇面向国内开发者的计算机专业(为了简便,接下来的“专业”均指“计算机专业”)英语学习指引,本文集中于如下问题:
此外,我把简短的问答放在杂项之中,以便阅读。
这个问题很多人问过,也有很多人回答过,此外如果你在阅读这篇文章那么你应该已经意识到了学习英语的重要性。所以我不打算花太多篇幅在它上面,这里简略的总结下学习英语的好处:
无需忍受翻译带来的问题:
FQ:相对于其它专业,计算机专业出国工作要容易很多,但前提是你的英语要说的过去。
注意这里的零基础指的是专业英文书籍阅读零基础——而不是英语零基础,英语零基础就没啥好说的了 -_-#
刚开始阅读专业英文书籍时要记住一点:你的目标是提升计算机专业词汇量,而不是学习计算机专业知识。所以你要阅读的是计算机“通俗”读物或“科普”读物,我的计算机英文入门书籍是计算机文化(New Perspectives on Computer Concepts),这本书每年一版,现在已经出到第16版:
这本书的好处在于它极其浅显易懂,并且包含大量计算机专业领域名词,所以读者可以专注于提升计算机专业词汇量,而不是一边查单词一边学新技术——同时搞两件事是很困难的。
顺便提一下那篇老码农教你学英语和那个老码农推荐的书目,姑且不论他把Mythical Man-month拼写成Man Month Myth,我非常惊讶他居然称人月神话原版为白话书并且推荐初学者阅读,直到看到这里:
这句“另外两本也很不错,我很久以前看的翻译版,一直也想找原版的来看看,可惜总是没空,这次你们就算替我看了吧”着实让我很无语,没看过的书也可以随便推荐么 -_-# 难怪那么多人推荐计算机程序设计艺术呢。
我在读研时从头至尾阅读了Frederick Brooks的Mythical Man Month以及他的几篇论文(No Silver Bullets和the Computer Scientist as Toolsmith),所以对Brooks的文风有一定了解——Brooks绝对是一位多才多艺的计算机科学大师——他的文字不仅涉及到计算机,还涉及到管理、人文、艺术、建筑和神学等学科。读他的书和文章,我查单词直接查到手抽,推荐初学者读这种书,你是要玩死初学者么 -_-#
阅读New Perspectives on Computer Concepts之后,你应该掌握了大量的计算机专业英文词汇,这时你可以尝试阅读一些语言浅显但主题相对深入的计算机科学基础书籍,个人力荐Brian W Kernighan和Andrew S Tanenbaum的作品,他们的著作不但本本经典,而且语言朴实:
这些书读完之后,你应该可以做到脱离字典阅读绝大多数的计算机书籍——是的,可能还会有一些生词,但不会影响阅读。
除了读书,阅读专业博客也是非常好的提升专业英语水平的途径。个人推荐下面几个网站:
Reddit:非常的聚合站点,我一般去下面几个频道(subreddit)
Quora:大量的高质量问答,有不少中国人在上面练习英语;
程序员学习英语不是为了写小说——而主要是如下场景:
1和2需要Nonfiction Writing——言简意赅,层次分明。这方面的写作书籍我推荐:
the Elements Of Style(这本书我应该推荐了无数次 -_-#
此外少不了中式英语之鉴,中式英语说说还成,写到纸面上就丢大发了。
关于3的书籍很多,我个人推荐Code Complete中关于命名(Naming)的一章,章名好像是the Power of Variable Names;以及Effective Java 2nd的Item44——如何编写代码注释及文档。
阅读量达到一定程度听力也不会差,个人推荐Channel 9、Google Tech Talk和Coursera,多看多听,此外务必不要中文字幕。
这里包含一些简短的问题,如果你有疑问也可以留言,我会把答案添加到这里。
除非你阅读原版书籍和中文书籍一样顺畅,或者翻译书籍信息损失量太大,否则不需要刻意阅读原版。
没有标准答案。作为开发者,大词汇量不是必需,但一定要把词用对——尤其是动词。
以方法/函数名中经常出现的get
为例:我们需要知道何时应该使用get
,以及何时使用fetch
、build
、retrieve
、compute
、calculate
和receive
这些get
的同类词汇。
目前我还没有发现一个好用的词典应用,所以依然在使用6年前的CASIO V2800H电子辞典。(略土 -_-#
以上。
作者:Lucida
原文链接:http://zh.lucida.me/blog/english-for-programmers/
本文谢绝转载,如需转载需征得作者本人同意,谢谢。