返回首页

程序员怎么学习英语?

173 2024-03-12 22:55 admin

一、程序员怎么学习英语?

推荐看于江水大大分享的《专为程序员编写的英语学习指南》学习英语,可能会对你有帮助。

这份指南深挖语言学习的本质(主要用中文举例)并用程序员易于理解的方式去思考,并提供自己根据本质推演出来的训练方法和经验做参考。

于江水大大说自己英语基础并不高,但是由于一些特殊需求,雅思需要考到 6.5 分及以上,所以自 2018 年 6 月份开始一直在学习英语。在学习过程中,对语言学习从陌生到熟悉,从毫无头绪到了解一些实用的训练方法,从乱看经验经常换方法到总结出自己的学习方法,并取得了不错的成绩。故此编写教程进行阶段性总结,一来方便自己制定下一步训练计划,二来希望可以对同等水平有需求的朋友有所帮助。

本教程目标人群是想要花一些时间真正掌握英语的人,尤其适合英语渣。对于英语渣来说,网上杂七杂八的英语学习技巧和经验不一定会有很多帮助,甚至会误导。在英语学习过程中,要注意查看符合自己水平的经验和教程,否则可能会走弯路。

如果你在寻找《21 天掌握英语》、《10 天背会 1000 词》、《10 天搞定英语写作》之类的资料,这份指南并不适合你。尤其是语言学习,学习周期都是以月或者年来计的,你越早明白语言学习没有技巧,就会越少浪费时间和金钱在各种资料和经验上面,走越少的弯路

因为网上各种英语学习技巧的效果跟学习者的水平相关,所以本指南会深挖语言学习的本质(主要用中文举例)并用程序员易于理解的方式去思考,并提供自己根据本质推演出来的训练方法和经验做参考。重中之重是你要根据本质自己设计适合自己的训练方法,同时可以甄别网上看到学习方法和资料,判断是否适合自己使用。

指南出处详见:

yujiangshui/A-Programmers-Guide-to-English

本指南会长期更新,推荐收藏。

指南正文内容请移步:

如何构建一个识别英语的程序

现在我们不讨论你如何学英语,而是让你构建一个可以识别、交流英语的程序,你会如何设计?

简单的需求分析

以中文为例,当你听到一个女人对一个男人说:“你是一个男人吗?”时,你会收集到哪些信息?你需要哪些信息来明确这个女人想表达的确切意思?

首先是听力输入,你需要确保麦克风录入了音频,然后拿到的声波内容是 U*#@&!&&*。之后我们需要将声波内容输入到一大堆分析器中进行分析,并得到比较精准的意图。

第一个可能是性别分析器,通过一定的规则识别出这是一个男性的声音还是女性的声音。因为这句话是男的说出来还是女的说出来表达的意思是不一样的。

第二个就是内容识别器,先是加载粤语匹配引擎和粤语语料库发现声波无法匹配解析,那么换成普通话引擎和语料库。此时如果你的语料库里有 “你”、“是”、“一个”、“男人”、“吗” 这些声音素材,那么就可以匹配解析出这句话:“你是一个男人吗?”。换言之,如果你没有粤语语料库和解析引擎,即便是给你一段粤语录音你也听不懂。如果这句话有一个生僻单词你语料库里没有,那么也是无法识别出来。

之后还有更多识别器,比如年龄、情绪识别器、重音和疑问语气识别句等,这些因素共同决定了这句话究竟想要传达什么意思。如果是一个女性的激动的感叹语气“你是一个男人吗!”,那么可以推测出这个女的跟男的有一定的关系,这个男的做出了一些伤天害理的事情导致这个女性在质问。如果是一个轻声细语的疑问句“你是一个男人吗?”,可能是一名女性想确认对方的性别。当然更准确表达这个意图的句子应该是“你是男性吗?”或者“男的女的?”。

比较基础的方案设计

上面需求分析只是简单的介绍了 声音 -> 听力识别器 -> 意图 的过程,实际上语言交流是听说读写,其中包含两个识别器(听力识别器和视力识别器),一个核心理解器,两个表达器(口语表达器和书写表达器)。通过对应的实际场景,我们可以简单的梳理出对应需要的功能。

听力识别器

  • 听力能力
  • 说明:要求可以输入声音并转换成一种可分析的信号。
  • 训练:买个好麦克风,对应人类是保护好耳朵和听力。
  • 口音识别器
  • 说明:各类方言比如粤语,各种口音比如东北口音、广东口音、英式发音和美式发音。
  • 语言特性识别器
  • 说明:语言之间会有不同特性,比如中文没有略读,都是一个一个字念出来,而英文会为了说话省劲而略读或者连读,比如 “drink it” 并不是单个蹦的 “准克一特”,而是类似 “准kei特”。中文的 “喝它” 就是 “喝它”,不会有类似 “赫特” 之类的变化。
  • 训练:扩充特殊语言引擎的匹配规则,扩充语料库,当听到 “准kei特” 可以识别出是 “drink it”。
  • 音量调节和杂音处理器
  • 说明:可以通过算法过滤无用杂音,并将小音量调大使其清晰。人类天然进化出这种能力,无需特殊训练。
  • 语气、性别、身份、语速识别器
  • 说明:人类天然进化出这种能力,无需特殊训练。
  • 上下文缓存器
  • 说明:交流过程要有上下文内容缓存,结合输入理解器。

视力识别器

  • 视力能力
  • 图形识别器
  • 说明:不同字体、变形(英文大小写、中文繁简体等)都可以识别出来具体字符,同时需要识别标点符号等输入理解器。
  • 训练:识别能力、精准度和速度。比如一眼看出 message 和 massage 是不一样的。
  • 上下文缓存器

理解器

理解器可以说是最重要的部分了,也是最难的部分

  • 语料库
  • 说明:字母、单词、发音、多重语境含义、历史文化背景、不同形态,同义词反义词相近词。
  • 训练:需要长期积累和扩充,需要大量训练。
  • 识别引擎
  • 说明:单词拼装起来的句型句式、语法、时态含义和规则、标点符号、单复数、惯用表达。
  • 训练:单点突破,专项训练,逐步体系化积累。
  • 思考和思维能力
  • 说明:针对意图结合之前的记忆以及经验得出自己想要表达的意图。
  • 训练:结构性表达,思维能力锻炼,思考和总结能力。这个与语言无关。
  • 上下文缓存器

口语表达器

当理解器思考运算并得到想要表达的意图之后,就需要开始表达传递出去。

  • 意图语料组装器
  • 说明:将意图结合语料中的单词、句型句式、惯用表达进行匹配组合,挑选出最符合你意图的语句。
  • 发音器
  • 说明:根据组装出来的内容,结合特殊的连读、略读等语言特性,转换成发声信号。对应人类的话是控制舌头、声带和呼吸系统的肌肉使其变成对应形状,让气流通过声带发出对应声音。

书写表达器

  • 意图语料组装器
  • 书写表达器
  • 说明:将语料组装结果以视觉的方式表达,对于人类是控制手部肌肉书写出对应形状。

从上面可以看出,口语听力相对于阅读写作更加困难,主要因为实时性的要求。你必须迅速反馈不经过思考,这要求你要无意识的去用英语表达,所以语言学习没有技巧,只有大量训练。

语言学习的本质浅析

语言的本质功能是人与人或物体之间的意识、知识的交换,它是几种方法中最高效和具备扩展性的方法,但并不是唯一方法。举几个例子:

  1. 在国外旅行,当地语言可能不会,但不会饿死。点餐的时候可以用 this 大法或者手指指菜,当然也可以打开大众点评之类的,给服务员展示图片下单。
  2. 看一本俄语、韩语、日本语的 JavaScript 书籍时,你可能不懂上下文是什么意思,但你看到中间的 JavaScript 示例代码,就明白上面可能讲的是什么东西。
  3. 一个外国人表情愤怒、语速飞快、声音大声,即便你听不懂他在说什么,但你可以明白他现在很愤怒,可能在骂人。

从上面的案例你可以看到,即便你不懂语言,也可以交换意见,只是掌握语言之后,你可以更精准、更快、更容易的交流、交换、表达。

通过语言的本质,我们可以知道:

  • 语言只是一种表达方式,作为媒介将人的意识意念传递给其他人或物体,因此可以推导出:
  • 脑子好使但语言表达不行,在别人看来等于脑子不行
  • 语言受限于表达能力,对意识、知识的传递是有损的,尤其是翻译,损失更大(所以翻译的最高要求 信达雅 其实对翻译者要求非常高,要先理解转换为自己意识,再用另一门语言精准表达意识)

基于上面我们可以进一步推导出:

  • 语言的学习,是学习双方都能理解的表达方式和表达思维。 比如:apple 对于你是苹果,对于对方也是苹果;英文的思维习惯是从细节到具体(地址先说门牌号最后是国家,日期先说天最后是年份)而中文思维习惯是从大到小。
  • 语言的表达不能通过转换为自己熟悉的语言再转换。 比如:在实际交流中,你不能将一段英语翻译成中文,理解了意思再想出中文,再翻译成英文表达出去。一是信息有损,二是思考的过程太慢影响交流的时效性。 实际上有些英文句子只可意会不可翻译,所以很多熟悉两门语言的人会常常混用表达。

资料、工具推荐和扩展阅读

单词量测试工具

善用 Google

前面大篇幅提到了 Google 的关键词推荐、图片以及语音识别,其实还有很多可以利用的。强烈建议大家用英文关键词去搜索,并注意搜索结果。

比如前段时间我的 Mac 的 PDF Preview 在拖动鼠标选中文本的时候,没有背景颜色,导致看不出选中的是什么文本。所以我就堆砌关键词 macbook preview pdf text selection background color 试图解决这个问题。Google 搜索给我推了 Missing text highlighting Color when selecting it in Preview 这个搜索结果,成功解决了我的问题。

后面这句对比前面自己写的学到了很多,首先是 missing 的用法,其次这种背景颜色不是 background color 而是 highlighting color,然后这个问题句式结构也非常工整,简洁又准确。

写作辅助工具

写作最头疼的就是害怕语法、语义有问题。

语法方面我推荐 Grammarly 这个工具,在英语国家也十分流行,安装它的 Chrome 插件之后,会自动检测网页文本框里的内容是否有语法问题。购买了付费会员,会对内容进行更深度优化,会通过海量内容库对你的内容进行对比,做出一些改进(比如同义词替换、表达方式等),当然基础语法监测功能免费使用。

语义方面我推荐 Google Translate,用它将你写的英文翻译成中文,来看看意思是否跟自己想表达的一样。

这俩可以配合一起使用:

群友也贡献了一个自己开发的工具,可以横向对比多个翻译平台的结果,有兴趣的也可以使用: http://translation.education/paratrans/index.php

当然,机器毕竟机器,肯定会存在误差,使用时也注意甄别是否正确。不过人也有误解的时候。

Youtube 优秀老师

影子跟读素材和软件

寻找训练素材需要注意难度,假设你现在水平是 1,要找的素材难度应该介于 1.2 - 1.5 之间最有效果。太简单和太难都不是很好的资料。

学术类我用过两个素材,一个是老托93,不算太难,托福考试训练素材,每篇有个主题,由专业播音读,内容比较老。另一个是科学 60s,基本在一两分钟内讲述一个科学相关的知识,有自述也有对话,难度偏高,一是快,二是有些科学相关单词不会,经常更新。

此外也有推荐 BBC 广播VOA 慢速英语,但是我用的比较少。还有推荐经济学人,我有影子跟读过,偏英式,有的主播语速飞快,感觉挺难。由于我选择美式发音,放弃。

影子跟读和听力软件首推《每日英语听力》,跟欧路词典同一家公司,上面资料全都有,单句重放以及跟读录音识别打分功能都有,最关键的是支持 Mac。其次 Aboboo 也非常好,可以自己导入音频帮你切割进行复读,方便影子跟读,但是只支持 Windows 平台。

实用 Chrome 插件

我曾安装过非常多英语相关插件,这是我唯一保留至今常用的插件:

其他优秀英语教程

这是一份 2004 的资料,台湾一大学英语老师做的网站 http://chifenchen.tripod.com/ 虽然很老土,但是知识不过时,比较系统、简洁明了的介绍了发音的几个点,而且发音非常准。

优秀的经验技巧扩展阅读

此外推荐 Wei-Xia 大大分享的程序员工作中常见的英语词汇:

这里汇总的单词都是英语类计算机书籍、文档、文章中高频常见的技术词汇,最终目的是希望程序员集合自身的英语基础,在掌握列表中的词汇后,可以无障碍阅读英语技术文章和文档。

官网:https://learn-english.dev/

入选标准

  • 可以是 IT 相关的词汇
  • 可以是工作中常用到的书面语词汇
  • 最好是高频词
  • 最好不是生活中的口语词汇

贡献

  • 满足条件的词汇,可以通过 Pull Request 来更新列表
  • 如发现有错误翻译,或者更合适的翻译,也可以通过 Pull Request 来更新列表
  • 请按照单词首字母顺序进行更新
  • 单词首字母请小写

部分单词如下

详细内容请见:

Wei-Xia/most-frequent-technology-english-words

如果我推荐的内容对你有用,点个赞再走呗 (づ ̄3 ̄)づ╭❤~

我的相关相关回答:

二、程序员需要学习什么?

需要学习相关的理论知识,练习相关的程序代码,懂得代码的逻辑思维和原理。

三、程序员学习速度有多快?

发现一个不会的问题,程序员一般一个小时以内可以学会,并运用,就是这么快。这也是没有办法。

许多的程序员都有时常充电的好习惯,因为这是一个时刻需要学习的职业,现代社会,互联网更新换代的速度太快,程序员要是不学习,就意味着落后,而落后就意味着被社会淘汰,这是程序员最不愿意看到的情形。

四、程序员早起学习方法?

定个闹钟,比如8点起就定7点半,提前一点缓冲时间。

五、学习程序员要什么基础?

学习程序员需要具备扎实的数学根本常识,熟悉常用的英语词汇,具备扎实的计算机文化知识。除了这些知识方面的基础,学程序员还需要有一颗源于创新的心,有足够的耐力和毅力,有充沛的精神力。

六、大学英语学习学习规划?

以下是大学英语学习的规划建议:

  1. 制定学习目标:首先,要明确自己的学习目标。例如,想要提高听力和口语能力、扩大词汇量或者通过考试等。

  2. 制定学习计划:根据自己的学习目标,制定一个详细的学习计划。包括每周的学习时间、学习内容和学习方法等。

  3. 提高听力能力:可以通过听英语新闻、英语电影或者英语广播来提高听力能力。同时,可以使用一些听力练习软件或者参加听力课程来加强练习。

  4. 提高口语能力:可以找一个语言交换伙伴或者参加英语口语班来提高口语能力。此外,多说多练也是非常重要的。

  5. 扩大词汇量:可以通过背单词、阅读英文文章或者使用词汇学习APP来扩大词汇量。同时,要注意积累常用的短语和惯用语。

  6. 注重语法和写作能力:语法是英语学习的基础,可以通过学习语法书籍或者参加语法课程来提高语法水平。同时,要注重写作能力的提高,多写英文作文或者参加写作课程。

  7. 利用网络资源:互联网上有很多免费的英语学习资源,例如MOOC课程、英文博客、英文论坛等。可以利用这些资源来丰富自己的英语学习经验。

总之,大学英语学习需要有计划、有方法、有毅力和坚持不懈的精神。只有不断地学习和练习,才能够取得好的学习成果。

七、程序员都会英语吗?

1 不是所有程序员都会英语。2 但是英语是编程领域的一种通用语言,很多编程语言都是英文单词组成的,所以会英语对于程序员来说非常重要。3 同时,掌握英语可以更好地阅读和理解技术文档、博客和论文,也可以更好地与国际团队进行沟通和合作。因此,对于想要在编程领域有所成就的人来说,学好英语是很有必要的。

八、英语学习方法:如何通过阅读学习英语提高英语?

大家在学习英语时都有同样的困扰……感觉学习英语真的好难!!!其实最难的不是花多少时间来提高,花多久去死记硬背,而是养成习惯,反复坚持。习惯完全可以练出来,一件事重复多了自然就会成为习惯,只有习惯了学习英语,习惯了使用英语,那么才有可能掌握好英语!

下面就为大家列举了如何利用app提高学习效率的10个必备好习惯。

让学习事半功倍!

一、每天坚持一篇英语阅读:每天抓住碎片化时间,阅读一些英语的读物,这些读物可以是英语杂志、英语小说、英语报纸,哪怕是一些有趣的英语段子,总之,就是要养成阅读英语的习惯,这种习惯可以帮助你提高对英语的熟悉程度,如果以后要学习商务英语,面对一些商务文件的阅览就会更加轻松。

二、扫一扫随时随地学习英语:英语不仅只是在课堂上,生活中很多地方都会出现英文,超市、餐厅、交通标语包括买的商品、玩的电脑游戏都会有很多英语,平时多注意观察学习,会更有情景感,对于这些英文的印象就会更加深刻,而且这样的学习方式也更轻松有趣了。

三、坚持每天做好单词记录:学习的过程中,说错的句子,不会的内容,都可以添加到生词里或者自己整理在纸质上,用零碎的时间去消化复习并且定期回顾。

四、放松双眼练练你的听力:没事我们都要尽量多听英文,这是最有效、最便宜的学习方法,听得越多,语感就越好,英语口语发音也会越好听。

五、养成每天大声读英文的习惯:让自己听清自己的发音,而且让别人听清你的发音,大声让自己精神集中。

六、小细节决定效率:一定多用精听练习法模仿发音,千万不要边听边读,听的时候不读,读的时候不听,这样效果会更好。

七、意想式练习英语:就是在生活中看到的、听到的,都尝试翻译成英文,随时随地训练自己的“口译能力”。养成自己思考习惯英语才会得心应手!

八、学“艺”用之,利于己:一定养成运用的习惯,可以找个“搭档”,每天对话,学会“卖弄”,只有把学到的英文运用自如了,英文水平才会提升。

九、养成热爱“丢脸”的习惯,忘掉谦虚,卖弄得越多,记忆得越牢。

十、坚持才是王道:很多时候,我们学不好英语就是因为重复得远远不够,为了训练自己的英语功力和耐心,可以把一篇文章每天朗读三次,每次三遍,连续坚持一个月。你的发音、语感,你的记忆力、理解力都会得到提升。

学英语是一种习惯,连续每天学半个小时,会比在一周的某一天学三个小时效果好得多。

加油吧!快把这些习惯坚持下来,相信你的英文能力会有一个质的飞跃^_^

记得一定要结合小A英语阅读app才会让你觉得学习英语如此轻松!

小A在创建的初衷就是为了帮助更多的人学英语,全部免费无内购和广告,欢迎大家支持免费教育!

九、程序员该会多少英语?

不需要会多少英语,能认识键盘那几个字母和初中的几个常规单词就够了。程序员和英语没有多大关系,程序员主要涉及到的学科是数学,在学习数据结构与算法和数据库等等知识时,最需要的就是数学的那种逻辑能力,以及自己的一个天赋,和英语没有太多联系。

十、学习英语,翻译?

“我要开始学习英语。”的英语:I want to start learning English.重点词汇:

1、want to英 [wɔnt tu:] 美 [wɑnt tu] 要;应该2、start英 [stɑ:t] 美 [stɑ:rt] n.开始;动身;开动;起点vt.& vi.出发,启程3、learning英 [ˈlɜ:nɪŋ] 美 [ˈlɜ:rnɪŋ] n.学问,学术,知识v.学习(learn的现在分词)4、English英 [ˈɪŋglɪʃ] 美 [ˈɪŋɡlɪʃ] n.英语adj.英语的;英国的扩展资料start的基本意思是“从静止状态转移到运动状态”,可指工作、活动等的开始;战争、火灾等的发生;也可指人开始工作,着手某项活动等;还可指人、事物使某事情发生或引起某事情。词义辨析:start, begin, commence、 originate1、commence强调缓慢地开始,而start强调从不动到动或停止后再动。

2、start往往强调“开始”这一行动本身,而commence则含有为了某一目的的意味。

3、commence比begin要庄严得多,含有正式开始或开幕的意味,如开始举行典礼、开始审讯案件等。

4、begin是最常用语;commence多用于书面语;start则多用于口语。

5、originate作不及物动词时,表示“源自”“起始”“发起”等意思;用作及物动词时,表示“创始”“发明”。