首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何学习一门新的技术

如何学习一门新的技术

作者头像
tyrchen
发布2018-03-28 16:04:57
5890
发布2018-03-28 16:04:57
举报
文章被收录于专栏:程序人生程序人生

很久没有把我在 adRise 内部的演讲放出来了,一来最近我分享的频率低了(同事们也做了不少分享),二来有些分享是我们内部的系统,不方便放出来,但今天我跟团队分享的内容和内部系统无关,而是一个 framework,一个学习的 framework。

虽然演讲的标题是「如何学习一门新的语言」,slides 的所有内容也围绕着学习一门新的语言展开,但正如我最后放出的两个 head fake,我讲这个主题的目的并非教大家一门新的语言 elixir(尽管我以此为例),也并非教大家如何学习一门新的语言(尽管整个篇幅由此展开),其实深层次的内容是如何总结出一套方法论,去学习新的东西。

罗蒙诺索夫子曰:不学习,毋宁死。孔夫子也曰:不学习,不知DAO。大部分职业,学习其实不是个生死攸关的事情;然而计算机,或者软件开发,真的是个不持续学习就分分钟被淘汰的局面。那么,如何更有效地学习呢?整个 Lecture,我从 why -> what -> how 几个方面阐述,并且在 how 这里提出了一个我觉得行之有效的 framework。

概括地说,why 这一层是找到学习这个东西的好处。小平同志告诉我们:捉到老鼠的就是好猫。在软件开发领域,每日诞生的「猫」实在太多了,乱花渐欲迷人眼,留牌子还是赐花实在太难抉择,那么,评价它是否是好猫的因子是什么呢?我主要提了这几点:

  • paradigm shift。是否对你提高认知水平有所帮助。如果总是学习相似的东西,只能缓慢地提高认知水平,无法跳跃式发展。
  • alternative solutions。是否是已有解决方案的一个很好的替代品。我们学东西,总是要学以致用,来更好地解决现实世界中的问题。方法越多,你 trade off 的空间就越大。

通过 why,你过滤出一些符合的可以学习的内容,接下来是 what。对于语言的学习,我列了不少方向,归根结底是一个思维:跳出舒适区,找一个你最不擅长的方向。比如你所接触的都是解释型语言,那么一个编译型的语言能够让你收获良多;你 NoSQL 的数据库(比如 MongoDB)用得多了,回过头好好钻研 RDBMS(比如 PostgreSQL),收获会非常大。

弄清楚了 why(你的 motivation),确定了 what(to learn),接下来是 how。how 是这个 framework 的关键,不同的方法决定了不同的学习效率和效果。概括来说:

  • 首先感性认识,花几个小时快速了解其纲领性的内容(这和读书很相似)。
  • 接着了解其历史(尤其是为什么诞生,怎么诞生的),唐太宗说:以铜为镜,可以正衣冠;以史为鉴,可以知兴替。「知兴替」是个很重要的过程,了解一个技术起源和发展历程,能让你更深入地掌握和明晰技术的优劣,以及为什么会产生这种优劣。
  • 然后熟悉其 eco system,也就是周边的各种工具。eco system 对一门技术的发展有很大的影响。
  • 然后是 learning by practicing。子又曰了:学而时习之,还是挺爽的。别羡慕程序君摊煎饼赶得上五道口的流动小贩;蒸包子不输庆丰包子铺的老司机,那都是练出来的
  • 然后是与人切磋比武。在软件的世界里,比武招亲最佳的地点是 github。先读牛人的代码,了解人家的一招一式,在鄙视自己渺小的同时,像你那傻傻的靖哥哥一样,不理解没关系,亢龙有悔,亢龙有悔,亢龙有悔,从周一打到周五,打他几百下,熟能生巧,最后这招式就是你的了。招式练老之后,就是和人切磋。工作中,学习中,你在用各种项目的时候都会发现问题,你可以等待别人解决,也可以自己解决,然后给这些项目发 pull request,获取他人的点评,看看你是否走在正确的路上。pull request(and code review)几乎是这个世界上可能最好的师傅带徒弟的方法,你涉猎越广,就会有越多的师傅。
  • 接下来是对比印证。你已有的知识体系和你正在学的知识体系间是很好的参照物,通过相互对比,相互印证,对二者都会有更深刻的理解。这好比你师从武当,从小谙熟武当心法,机缘巧合修习了易筋经,武当心法的佐证可以让你更好参悟易筋经;而易筋经反过来又帮你提高对武当心法的理解。对比修习,几乎是深入学习的不二法门。
  • 最后是传道授业解惑 —— learning by teaching。孔子是其门徒的师傅,但他在和门徒的对话中也在不断学习。比如说何为君子 —— 子路问过,冉有问过,好多人都不停的问,孔子从三戒九思,一路讲到耻其言而过其行,先行其言而后从之,不忧不惑不惧等等等等。孔子的见解在不停地变,你可以认为他在因材施教,殊不知他老人家也在这些问题中不断进步。我们学东西,最怕的就是 You don't know that you don't know —— 不知其不知也。这个时候,传授自己的知识给别人,在传授的过程中,你会加深理解;在总结的过程中,你会弥补缺失的拼图;在别人的看似傻傻的问题中,你会产生顿悟。

OK,就讲这么多,本来是想凑三百字原创的,没想到话匣子打开收不住了。下面是看图不说话时间。不用谢。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-05-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序人生 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 MongoDB
腾讯云数据库 MongoDB(TencentDB for MongoDB)是腾讯云基于全球广受欢迎的 MongoDB 打造的高性能 NoSQL 数据库,100%完全兼容 MongoDB 协议,支持跨文档事务,提供稳定丰富的监控管理,弹性可扩展、自动容灾,适用于文档型数据库场景,您无需自建灾备体系及控制管理系统。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档