在正式开始上编程课之前,我们需要有大量的时间去学习一些程序外的东西,比如说计算机英语。虽然简单,但是,它是基础。那么,一个程序员应该怎样去学习和掌握计算机英语呢?是立即开始背英汉计算机字典还是先考完6级再考"托"、考"G"?其实,在下定决心之后最关键的是要搞清6个W,即:为什么学(why)、学什么(what)、怎样学(how)、何时学(when)、何处学(where)、跟谁学(who)。下面我们就谈一谈这6个W。
     首先是为什么要学计算机英语。WHY?
     几乎所有的程序员都知道学习计算机英语的重要性,但并不是所有人都具有学习的主动性。这个问题的提出就是要让我们从自身的需求出发,掌握学习的主动性。一旦你有强烈的学习动机,任何学习上的困难都不会认你屈服,而你的每一点进步都将给你带来无比自豪的感觉。
     学什么,WHAT?
    是死背单词?还是猛抠语法?其实都不是。计算机英语的学习是一项系统工程,需要找到一个适合自己的学习目标,其实更多的是从词汇的方面去融会贯通阅读、写作等方面。用程序员的术语讲,"学什么"的问题本质上是一个"确定系统边界"的问题。应为学习计算机英语是一个很宽泛的概念,若不根据个人的具体情况进行定义,恐怕难以有一个可以管理学习目标。无目标的或边界不清的项目往往是失败的项目,在学计算机英语的问题上也是一样。因此,我们先要根据自己的实际英语水平和工作需要界定计算机英语学习的系统边界。关于实际英语水平,我们可以简单地以大学非英语专业的英语教育作为参考,以通过大学英语四级考试(CET4)作为基线,即如果你通过了CET4,则表明你的英语水平为中高级,词汇量接近5千,不存在基本的语法问题,有一定的读写能力;如果你没有通过CET4,则表明你的英语水平为初中级,词汇量不足4千,可能存在一些语法问题,读写能力较弱。关于工作需要,我们可以将计算机英语学习对象划分成计算机研发人员、泛IT人员。其中计算机研发人员是指从事计算机研究和开发的专业人员,他们又划分为软件研发和硬件研发,显然程序员是属于前者,而软件硬件又各有侧重。泛IT人员是指在IT行业从业的或与IT行业有密切联系的那些非研发人员,包括操作使用人员、技术管理人员、支持服务人员等等。我在下表中大致给出了计算机英语的学习目标:

泛IT行业人员
掌握计算机英语的基本术语
了解计算机英语中常用的语法和惯用法 
能借助字典阅读英文界面和在线帮助以及简单的操作手册,阅读熟读在70-90词/分钟
计算机研发人员
掌握计算机英语的常用术语和缩略语
熟悉计算机英语中的语法和惯用法
能阅读英文界面和借助字典阅读在线帮助以及简单的操作手册,阅读熟读在80-100词/分钟
能借助字典阅读英文文档和技术资料,阅读熟读在70词/分钟以上 能借助字典阅读英文文档和技术资料,阅读熟读在100词/分钟以上
能借助字典翻译专业技术图书
    知己知彼,百战不殆。在了解了学习计算机英语的一般要求之后,接下来就需要对自己的具体情况进行具体分析,制定一个学习计划或简单地定一个学习方向。作为程序员学习计算机英语的根本目的是为了提高自己在英语环境中掌握计算机技术的能力,所以学习的内容应该是围绕本专业的领域展开。对于没有上过计算机专业英语课程的程序员来说,学习的重点应该是掌握专业词汇和术语,了解计算机英语的一些规范译法和习惯用法。对于有一定计算机英语基础的程序员则应该把重点放在提高阅读速度和阅读质量上,并逐渐习惯使用英语注释程序撰写文档。
    在明确学习目的和学习方向之后,还必须有一个好的学习方法,"怎样学"就是一个学习方法问题。这其中还包含了何时学、何处学、跟谁学等一系列问题。
    在这里我建议把短期的系统学习和长期的日常学习结合起来,这样做的效果最好,也最科学。所谓短期的系统学习是指集中一段时间系统地学习计算机英语,这对于没有参加过大学计算机英语课程学习程序员尤为重要。而日常的学习则是指在日常工作用有意识地多接触和多使用计算机英语,边用边学,持续不断地积累提高。下面我就从这两个方面来具体谈一谈。
    要系统地学习计算机英语,最好是参加专门的计算机英语课程培训班。培训班的选择非常重要,好的老师、成功的办学经验和系统的课程设置都是选择的重要依据。除了选择一位好老师,还要选择一本好的课外参考。一本好的计算机英语参考对系统地学习计算机英语帮助极大。目前市面上的计算机英语书籍多达30种,在选择时不少程序员往往无从下手,大家不妨从以下几方面进行考虑。
     对于不同学历层次有不同的书籍,一定要看清培训对象是中专、大专、本科还是研究生。选择难易程度适合自己的,太简单则不利于提高、太难则容易使学习受挫。
     专业侧重——有的偏重于硬件,有的偏重于软件,还有的是信息电子类的计算机英语,侧重于通信电子方面,比如:汇编语言、单片机等。另外有的侧重于理论,如:数据结构、离散数学;而有的则侧重于应用,如:软件工程、数据库开发。所以程序员在选择时,应仔细察看书中的内容,以免偏离软件开发的实际工作需要。
     体系结构——目前计算机英语书籍主要分为按语法体系组织和按计算机体系组织的两种结构。如果你是初中级的英语水平建议使用前者,如果你是中高级的英语水平建议使用后者。
     易用性——易用性是指书籍的编排是否符合人们的学习习惯。虽然计算机英语是专业课程,但如果编排活泼、图文并茂、注解查阅方便肯定能调动学习的兴趣,降低阅读的难度。这方面国内的书籍应该多向国外的书籍学习。推荐一本国外的计算机英语入门读物:《Computing Essentials》(McGraw-Hill出版公司)被许多大学选用为计算机英语教材,效果极佳。这本书现在已经由高等教育出版社影印发行,书名是《计算机专业英语》。该书的特点是:时效性强(版本更新快),新颖实用,编排活泼。
     系统学习计算机英语,这里的系统性包括了计算机体系的系统性和英语语言的系统性,我们在学习时必须时刻牢记。除了借助计算机英语书籍系统地了解计算机硬件软件、操作系统、软件工程、编程语言、网络通信、信息安全、应用系统等诸方面的英语表达和专业词汇外,还要对英语语言本身从听、说、读、写四个方面下功夫,以免出现偏废。有些程序员就是因为在听和说方面偏废,以至于影响到出国发展。如何加强听和说的训练,这是关于英语学习的话题,我自己的一个经验是多看原版电影(VCD/DVD)以提高听力(当然不能看字幕),多玩情景类原文游戏(RPG)以提高熟悉度(当然可以带本字典在身边),遇到老外不要怯场,一声“hello”其实很简单的。
     计算机英语的学习不同于考"托"考"G",无法靠短期的突击来完成。长期的日常学习尤为重要。所谓的日常学习并不需要你抛开工作,安排专门的时间,而是边用边学。比如,你为了解决编程上的一个问题,查阅英文的帮助或技术资料。然而,不少程序员不太喜欢看英文,他们喜欢使用中文版的软件,喜欢汉化的帮助,喜欢读翻译好的书。这实际上就错过了许多日常学习计算机英语的机会。不可否认,读中文肯定比读英文方便,节省时间,但从长期的发展来看,弊大于利。这种对翻译的依赖使许多程序员失去了获取一手资料的宝贵机会。
     其实,既然你已经通过对计算机英语的系统学习掌握了一定数量的专业词汇,就完全可以借助字典去使用那些原文资料和在线帮助,加上有金山词霸这样的工具,阅读原文并不很困难,关键是一个习惯问题。我有一个朋友,在自己的电脑里从不装任何中文版或汉化软件,连上网聊天也坚持用英文。几年下来英语突飞猛进,效果甚佳,有志者不妨一试。
     在日常工作中大量阅读英文书籍和资料是提高计算机英语水平的最佳途径。目前市场上大量的计算机原版影印图书为我们提供了绝好的机会。阅读英文计算机图书一开始是"啃"的感觉,比较费时费力,对于不太好读的地方,不妨拿起笔来逐行逐字翻译出来,这样对提高英语水平很有帮助。对于有经验的程序员可以利用自己的专业背景知识和上下文(Context)进行大胆推测,这样有利于提高阅读速度。即使是不求甚解,也不要紧,你可以通过多读同类书来弥补。原版计算机书读多了,你会发现一些很有规律的东西和一些常用的词汇,这些来自实践的经验非常宝贵,并让你终生受益。一般在完整阅读2-3本原版书以后,你就能发现读原版书的乐趣。值得一提的是读原版书的真正乐趣并非只是在于提高英语水平,而更是在于获得一种和西方人一致的思维方式,这种思维方式对学习计算机技术极为有益,因为计算机技术甚至现代科学体系都是建立在这种思维方式的基础之上的。坚持阅读英文计算机图书可以达到"品"的感觉,这种感觉是指在阅读时无需将英文转换为中文,而是直接用英文和作者在同一个水平线上进行思考和交流。至此,我们获得的不仅是英语水平的突破,更是计算机水平的突破。这也是许多计算机高手成功的秘密。
如果你希望突破计算机英语的障碍并成为高手,从现在起就养成一个学用计算机英语的良好习惯吧。下面是你可以立即选择的努力方式,只要坚持其中一种,你就有了一个很好的开始:
1、给自己起一个英文名字。并用作网名和登录名。
2、立即将自己电脑中的所有中文版或汉化软件换成英文版。连Windows也用英文的。
3、选一本适合自己的计算机英语教材。
4、保证一年至少读1-2本原版影印的计算机书,并坚持读完。
5、上网尽量多访问英文的技术论坛和网站。不使用汉化的帮助。
6、在程序中使用英文注释。坚决不用中文或汉语拼音作变量名、字段名、文件和文件夹名。
7、每月至少看1-2部原版电影(VCD/DVD),尽量不看字幕,提高语感和听力。
8、不看中英文对照读物,但可以看注释读物。多使用英英字典,少使用英汉字典。
9、每天坚持记录和复习遇到的生词。对于缩略语,一定搞清每个字母的英文含义。