首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

学英语的我自学编程,这几点帮助我跳脱从入门到放弃

0.

去年年底,我决定自学编程,选定 Python3 作为入门语言,走走停停到现在,我也由最开始完全不得其法,连最基本的 都不懂,到现在可以把 Python 融入日常工作流,用 git 管理代码和博客,基于 gollum 搭建个人 Wiki 整理技术笔记…一路踩坑撞墙,感慨和收获同多。

如果要说编程零基础,恐怕我就是了:高中文科,本科英专,研究生在高翻念口译,毕业后这些年,或者口译、或者教学,基本都同英文相系,反正和理科无关。除去之前工作同传、交传时,能常遇见些理科工科材料,基本算十多年没和理工科搭过边,这么个背景,自学编程,真是随时看着就要加入「从入门到放弃」的大军了。

好在,没有。

学 Python 之初,我的打算就是,既是学习编程,也是学习「学习」:自己想办法教会自己一项较难习得的技能——还有什么比这更好的学习「学习」的项目呢?

且学且思,不断试错,我也逐渐清晰,是哪些策略,帮零基础的我跳脱了「从入门到放弃」的大坑。

1.

原则一:把有限的精力花在最该花的地方

初学一项陌生的、困难的技能,每个人内心那点儿起始燃料,供应是极其有限的,一旦耗完,即刻熄火。所以,任何无端损耗燃料的事都不要做,比如:花精力寻找或囤积免费资料、盗版学习材料。

拿我最开始用的经典入门书 Learn Python the Hard Way (LPTHW) 来说,网上免费的 LPTHW 到处都是,但是,与其花精力东挑西选比对资料,不如直奔 LPTHW 作者 Zed A. Shaw 本尊的付费教程,标价 $29.99 而已,资料问题一站解决,开卷即学,免去诸多琐碎。

并且,原版书籍排版考究,视觉上佳,代码阅读体验尤其好,每次学习都很愉快——这不就是持续行动的秘诀么?相反,若是一决定学习编程,我便去奔波下载,囤积材料,对比版本,怕是如今还在壮大资料文件夹。

另外,初始燃料有限,那就要有清晰的「目标意识」:每时每刻都要清楚,你此刻最应该学的是什么。

比如,我按教程作者建议,使用的编辑器是 Atom,而 Python 和 Atom 其时对我都是未知的,二者都有很多值得探索的地方,但我当时的选择是:只关注 Python 本身,而不是如何更有效率的使用 Atom。

编辑器进阶使用,当然要学,但那是之后的事。现在花精力研究这个,或有帮助,但对初学者来说,连「我需要什么」这个问题都无法准确回答,自然难以确定哪些 Atom 进阶功能,是我能用上的,很容易费力而无功。

初学编程,未知太多,无端探索其他,反会影响 Python 进度,而清楚的目标意识,让我能把工作之余本就有限的精力,全部花在最该花的地方。

2.

原则二:世上无难事,只要肯重复

重复学习的力量堪称巨大。既对编程一无所知,着手教程,我的策略就是:一遍看不懂就看两遍,两遍不懂就三遍,想方设法弄懂,实在不懂就暂按下,继续往下看,复杂的知识往往会用到后面的内容来解释、支持前面的,概览之下可解难题。

如果某个难点概念,反复琢磨仍不懂,那大可推测:你遇到的难题,肯定别人也遇到的过,带着足够的疑惑感去找答案,Stack Overflow + Google 可解 90% 新手疑惑。

不过,更多的情况是,基础概念不牢固,才导致后续学习艰难。这时尽管从头开始重看,代码重敲,知识重学,重视最基础的概念,尝试自己梳理结构,边学边整理笔记,及时归纳好用的套路。

重学教程,就像重读一本好书,凡重读皆有新感,必得新知。你已掌握的知识就像一面放大镜,已知越多,放大镜倍数就越大,重读回看时,能关注到的就越多。拿我们都熟悉的古诗词文举例:

至若春和景明,波澜不惊,上下天光,一碧万顷;沙鸥翔集,锦鳞游泳,岸芷汀兰,郁郁青青。而或长烟一空,皓月千里,浮光跃金,静影沉璧。

现在的你来看这一篇,和当时初学此篇的你,感受想必大有不同。同样,代码例题、教程习题,尽管多写几遍,就像吉他曲子不会弹一遍就会,也不是举一下重,就健好身了。

耐住性子重复,笨办法总是容易出好效果。

3.

原则三:类比用得多,单车变摩托

一味机械重复当然不智,策略是必要的,而学习编程一类抽象知识,最强力的武器就是:类比。

在 Coursera 超火课程Learning How to Learn原书中,作者 Barbara Oakley 教授专门用了近两章,来说明类比对学习帮助巨大,并指明,学习抽象概念时,类比越形象就越管用。

作者给了一个很有意思的化学概念类比:

In chemistry, compare a cation (阳离子) with a cat that has paws and is therefore “pawsitive,” and an anion (负离子) with an onion that is negative because it makes you cry.

这里涉及英文构词法和谐音,简单说,cat 有爪子(paw),于是阳离子 cation 的属性是 pawsitive(有爪子的),谐音 positive;负离子 anion 同洋葱 onion 音近,而洋葱令人流泪,于是属性是 negative,形象有趣,一目了然。

学 Python 时,也有大量抽象概念要料理,这时就能用到类比大法,比如 Python 的 list,有一个操作叫 ,作用是把列表最后一项打印出来,并将该项从原列表删除,如下:

这么看似乎有点儿抽象,换种说法呢?一个列表就像一副牌,你如果 一张牌,那就是把这张牌弹了出来,自然,首先是这张牌会出现在你面前,让你看到,而在原幅牌里,自然也就没了这张弹出来的牌了。

4.

由此,既学编程,也学「学习」;笨办法可入门,笨办法可精进;仍在路上,大有可学。

对了,我们三期写作即将启程

欢迎你和来我们一起持续行动

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180413G16XDX00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券