ITPub博客

首页 > IT职业 > IT生活 > 帕慕克给我上的一堂编程学习课

帕慕克给我上的一堂编程学习课

原创 IT生活 作者:dblenis 时间:2018-09-10 20:25:21 0 删除 编辑

“学习“这件事,从来大家都以为是读书。其实并不是,任何有益于自己的知识的习得,都叫学习。读书只不过是视觉学习,而与之平行的另一种方式,便是听觉学习。正常人视觉学习,看书读报,那么有视觉障碍的人呢,他们也得有自己的学习方式,对吧,比如听广播,听有声书。

所以不要将学习手段固定在条条框框内,限制自己认知的广度。

学习最忌讳的两件事情:一是走马观花,二是朝三暮四。

结交酒肉朋友,走肾不走心:咣当半斤白酒下去,兄弟相称,你好我也好。合同,凭据那都是啥,咱俩的关系,招呼一声保证办好。 《中国式合伙人》有句忠言,“不要跟好朋友合伙做生意”。

走马观花的读书,走眼不走心,斥资买了1200多页的《c# 高级编程》,信誓旦旦要看完学好,结果看到 Delegation, 还没等明白 Delegation 到底特么怎么翻译才通俗完美,就垫到显示器底下去了。到月底还信用卡,6000多,发现本月买书花了 1000 多,那本最贵的《c# 高级编程》去哪了,赶紧从显示器底下抽出来,又翻了 30 多页,好像有点映像,“哦,原来就是项目中用到的那段代码,原来这么简单。” 赶紧又连翻了 100 多页,“哦,这个点好像也在项目里出现了”,翻着翻着,每过一百页好像都在项目中找到原型了,于是一个上午就翻过了 1200 多页的书。“老子都会了,这本书太简单了”,又垫桌去了。

谈恋爱最忌讳什么,恐怕莫过于朝三暮四,脚踏两只船吧。没谈的赶紧去谈,这绝对需要经验,最有用的经验。你可以试着两只船都踩着,绝对给你特别的经验,不过出了事可别找我,我本人反对一切的感情儿戏,有绝对的专一癖。

跟人相处跟看小说一样,不到最后你可能完全不知道结局是什么,作者的心态和思路是什么,读一遍可能只是朦朦胧胧,完全不知道作者在想什么。跟人相处,也一样,都是路遥知马力的持续战。当然特指文学巨作,比如村上的《刺杀骑士团长》,看完 300 多页还是觉得作者在记流水账。我知道很多朋友在读完1,200页之后,如果还没读出个所以然,脑子后面就会出来一个声音:“赶紧换下一本,别浪费时间了”。因此可能买了 1000 多块钱的 10 本书,结果每本都是看了前 1/3.

假使你买的 1000 多块钱的 10本书,都是 c# 或者 java, Python 专题的,或许还好。最怕的是这 10 本书里面,有 4 本 c# 的, 3 本 Java 的, 2 本 Python 的, 1 本大数据的。为什么会选 c# 呢,语法多甜啊, Java 呢,工资多高啊, Python, 当月最佳编程语言啊,大数据又怎么解释, 马云说了嘛,进入 DT 时代。我看你还差两本,人工智能和区块链。《天龙八部》看过吧,乔峰靠着长拳横扫整个聚贤庄,你以为其他人不会长拳嘛!

学习最需要的两件事情:一是学会提问,二是持之以恒

有本书干脆名字就是《学会提问》,英文版本《Ask The Right Questions》. 无论是酒肉朋友的走肾不走心,还是走马观花读书的走眼不走心,从出发点来说都是好的,爱交朋友,朋友多了路好走,爱看书,看书多了阅历就多。但手法不对,因为没走心。走心了你才会提更多要求,而提出要求的前提就是你会首先问自己很多问题。很多朋友包括我自己,提问题的水准确实需要提高提高再提高。不信的话,我就这么问你:哪一天在路上碰到村上春树,你会提一些啥问题来了解村上?写下来发给我,一起讨论讨论。

除了提问题之外,还会衍生出另一个深层次的问题,你碰到一门新学科,会怎么搭建这么学科的知识框架,自己慢慢的往里面填东西。答案参考《如何高效学习》。

小时候被问到最多的一个问题是:你长大了想当什么?朋友们的答案五花八门:科学家,老师,音乐家。。。 而一个朋友的回答很费劲,当然我不知道是不是他家大人早早交给了他:我要当博学家。那个时候大家都是在老师的讲解下,才有点名目的,当然了大家都笑着说他吹牛。用马云的话来讲,“淘宝的目标就是培养千千万万个京东”。同样我们也都在笑马云。

现在回过头看看小学的那个同学,500强Java Leader, 会英语,日语,德语,意大利语, 领导公司开发了 AI 项目。这样的人,是不是算得上博学?这位同学是田春冰河。

你以为这一切都是靠聪明来的,naive. 唯有坚持才能通透,才能广博。我曾经以为看完《c# 高级编程》,甚至只要看完前 500页,足够我笑傲江湖了,直到我看到有人翻译了《Thinking In Java》, 有人把这本书撕成了 5 半,我才知道一入 IT 深似海,波涛暗涌,凶险不止。

那么,IT 行业如何高效学习?

三件事情,一是基础学习,二是源代码学习,三是启发式学习

基础学习,用 coolshell 的博文来说,大概就是经历这么个过程:

这里写图片描述

有同学会提出异议,学习编程我看书就行了,为什么非得看源代码呢?

在 IT 的世界里,书就是老师,老师领你进门,而不能帮你成长;成长必须是自己的事,而阅读源代码是作业,只有完成了一个个高难度的作业,我们才能学会解题方法,继而成长。其实我们没发现的是,你在 CSDN, Stack Overflow 中搜寻的答案就是源代码的学习,不过那更加具有目标性,而缺少系统性。看源代码就是去帮你剥开一些神秘的算法,让你汲取更多营养。

当然了求知欲一旦打开,收也收不住。看了 spark SQL , 难道你就不像自己实现一套基于 MySQL , MS SQL Server 的分布式计算引擎?我想很多人已经尝试在这么做了吧,要不然 阿里巴巴 Blink 是怎么出世的呢?

当然了这些往深的方向的研究,只有自己去挖掘才有意思,别人硬塞给你的,反正适得其反,因为信息不对称,两方的知识结构差太远,就只能是一方弱的去顺从另一方。而这就和帕慕克所说的土耳其不能彻底西化的原因,因为奥斯曼帝国有强大的文化底蕴,如出一辙。自己独立了,才能不被奴化,在乌合之众中抱团取暖是最容易的一件事情,但也就丧失了自己的独特性。

源代码的学习,比较有艺术性和专业性,各自的方向不同,手法就不同。比如 Java Spring 和 ASP.NET MVC 就不是同一套东西,你得彻底了解每个目录结构的用法;而 Java Spring 和 Spark SQL 又不一样,我们还要知道一些分布式理论。

有了这些理论知识,就可以开始进入阅读源代码阶段了 。这个时候一分为二看代码,了解总体软件处理的业务流程是什么,大部分都是在处理数据,因此具体数据格式先放放,掌握流程;第二阶段是代码逻辑的分析,这里又可以分开 2 部分,软件框架的分析和算法的分析,看各自所需,有的朋友对架构感兴趣,想看看怎么处理多线程,远程控制以及高并发的,而有的朋友想看看推荐算法是如何实现的,用了什么模型,什么参数,可信度怎么样。各取所需。

总的来说,针对单点,逐个击破是最好的方法。增加了自信,去做事才能越办越开心。我采取的手法是 why + comments 的方法。针对不同的点停下来,写点笔记,换个参数值,重新跑一遍看看效果。也就跟平日里调试 bug 差不多。GitHub 里代码那么多,如果不收获点啥,是不是有点深入宝山而两手空空的遗憾呢?

**

Scott Yang 在他的《如何高效学习》中提到了启发式学习,Heuristic Leanring.

**

SQL 写多了,是不是觉得很枯燥? 那么你是不是想到有些逻辑是可以用 OOP 思想来完成的,是否可以添加类似消息机制的框架,来完成一些特殊的表达?都说 Python 用来写挖掘算法最快捷,那么有没有想过有些场景其实 SQL 才是处理数据的最佳方式,比如用 Hive 完成统计,你还会觉得在 Spark 上装一次 pyspark 来增加复杂度,是一种好方法?

亦或者,就像上头提到的,你可曾想封装一层 SQL 解释器,来完成 MySQL 集群提供的算力? 任一方向的深入研究,最后都可以发现其实还有空间可挖。比如我在2018年8月到9月期间,探索了 sql server on linux, on docker 的应用,其实就是为了之后上云计算,而做的技术铺垫,可是如果不曾想借鉴别的技术栈,怎么才能丰富自己的”武器库”?

无独有偶,《巴黎评论》在采访帕慕克的时候(就是名作《黑书》的土耳其作家),帕慕克也有类似的回答:

《巴黎评论》:评论界经常把你的作品归入后现代小说,可是在我看来,你的叙事手法主要来自传统,比如你在作品中引用《一千零一夜》之类的东方经典。

帕默克:这是从《黑书》开始的。不过早先我读过博尔赫斯和卡尔维诺的作品。我和妻子1985年访问过美国,在那里我接触到了极为出色,极为丰富的美国文化。作为一个来自于中东的土耳其人,一个协作地位还没有奠定的作家,这些让我有一种高山仰止的感觉。因此我退回到我自己的“根”,我意识到我们这一代人必须发明一种现代的土耳其文学。

博尔赫斯和卡尔维诺解放了我。传统伊斯兰文学是很反动,很政治的,且被一些保守派用一种老式的,愚蠢的方式在用,我从来不觉得我会去使用这些素材。可是我到了美国之后,我意识到我可以带着博尔赫斯和卡尔维诺的心态,回到这些素材上。我得在伊斯兰文学的宗教和文学内涵之间做一明确区分,这样我才可以容易,合理的使用其中丰富的游戏,噱头和寓言。土耳其的装饰文学高度发达,这方面的传统源远流长。可是那些带着社会公用的作家,将这个传统中比较创新的部分给倒空了。

最后,学习是件终身的事情。尽管放稳节奏去学,去用,去交流切磋,而不是固步自封。多扩展自己的一些思维,去看别人在做的事情,去分享自己的见解。当然最佳分享渠道是互联网,找到一群志趣相投的人,一起做点事。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31553767/viewspace-2213922/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
SQL 的世界,也可以很精彩

注册时间:2018-09-08

  • 博文量
    12
  • 访问量
    5308