2016 Part 01

Jan 20th, 2016

2016总结

<li…li>

Jan 20th, 2016

学习如何学习

在「如何学习」这点上,一直觉得自己做的不够好,曾经想学吉他,坚持了两个礼拜就以「手指太短,不适合」终结了,后来想学数学,却终究连翻开书的勇气都没有,工作一忙更是顾不上这些了。所以在 Youtube 上看到 Barbara Oakley 的 Learning How to Learn 时,才发现自己在学习上的各种问题,收获颇多。如果有兴趣的话,建议直接看视频,讲解地很有条理且生动。

Barbara Oakley 是系统工程学博士,但对于「学习」方面也颇有研究,在 Coursera 上也有相应的课程。还出了几本书,比如 A Mind For Numbers: How to Excel at Math and Science,这里对于她在 Google 的分享做一个简单的翻译和摘要。

摘要

(主持人)我记得查理芒格说过,他认识的人中没有一个不每天阅读的,还把巴菲特形容为一台学习机器。那么如何才能成为一个高效学习者呢?

正文

我小的时候,想要学习其他语言,但大学的助学金不太容易拿到,而我又迫切想要学习一门语言,然后我想到了一个既可以学习语言,又能得到些收入的方法,那就是参军。然后我确实学了一门语言:俄语。虽然俄国的环境不怎么样,但我喜欢冒险和新的视角。我回想在西点的工程师们,他们解决问题的能力非常出众,往往能想到我想不到的。然后我就想,我能不能也达到跟他们一样的程度?有学生提了这么个问题:如何改变你的大脑。然后我就去了解世界顶级的教授他们是如何做到让学生更好地学习工程学、数学、化学的?他们自己又是如何学习的?跟他们接触后发现,他们常用的有隐喻和类比。接下来我想跟大家分享下学习的关键因素。

我们都知道大脑是很复杂的,那么来简化一下,可以想象成大脑以两种不同的模式工作。第一个是「专注」,另一个则是「发散」。我们用一个弹球机来描述这两种状态。

假设大脑里有一个弹球机

底部有一个触发开关,有很多的槽点密集排布。比如,你已经知道了乘法,然后要处理一道乘法运算题。当你处于「专注」模式时,会运用已有的模型,在「乘法」的槽点附近打转,也就是结合以前的学习经验去寻找答案。如果你要解决的问题是基于新的模型,比如你已经知道了乘法运算,但从没有接触过除法运算,如何掌握这个新的模型呢,这时就要用到「发散」了。当处于「发散」状态时,「槽点」之间的距离会变大,你无法通过局限在某一点来解决问题,但至少能找到一种新的思考事物的角度。当你在解决一个非常困难的问题时,不要逼自己长时间处于「专注」状态,这样就会局限在一个狭小的范围。所以需要进入到另一种模式,也就是「发散」模式。简单来说,就是脱离当前的工作环境,出去走走,冲个澡等,总之是让大脑脱离「专注」状态。我们来举一个例子吧。

Salvador Dali 是20世纪…

Salvador Dali 是20世纪著名的超现实主义画家,他最爱干的事情就是,当遇到一个棘手的问题时,会躺在椅子上,放松再放松,同时手里握着一把钥匙。当足够放松到快要睡着时,钥匙就会掉在地上,与地板碰撞的声音会把他叫醒,然后就可以带着从「发散」状态收获的想法继续进入到「专注」模式。

你可能会觉得这个对艺术家有用,那么对工程师是否也同样有效呢?据传,爱迪生也有类似的行为爱好,只不过不是钥匙,而是滚珠轴承。

当你在解决一个问题时,即使已经有成千上万的人已经解决过了,但对你来说确实第一次,你也可以试试类似的方法。

当你处于「专注」状态时,并没有利用到其他更多的关联,这也是为什么在两种状态间切换是如此重要。就像你不能一下吃成大胖子一样,神经系统也是需要一段时间来适应新的学习和思维方式。

你或许会说…

你或许会说,我有拖延症,那我们就来说说拖延症。拖延症的成因是当你面对不喜欢做的事情时,大脑的「痛感中心」就会被激活。所以当你看一本不喜欢的书时,会感觉到隐痛,这种痛就像手指被锤子砸了一样,通常会有两种做法:第一种是花大概 20 分钟去搞定它,然后痛感就会慢慢降低进而消失。但如果你像大多数人一样,将注意力集中到其他做起来更舒服的事情上,就会马上就会感到好些了。

从某种程度上来说,拖延症也是会上瘾的,这对你的生活是非常有害的。最有效的方式是使用「番茄工作法」,通常来说设置 25 分钟为一个「番茄时间」,然后关闭其他所有会打扰你的一切。在这 25 分钟内,集中精力进入到「专注」模式。由于你专注于当前的任务,而不是「我必须完成它」的痛苦,做起来就会容易很多。当到时间后,给自己点奖励,出去走走或上上网、聊聊天都行。有一点要注意的是,不要以完成任务为目标,时间到了,就休息。它能帮助你跨过痛苦期,进入 flow 状态。还有就是不要一下子做太多的「番茄」,一步一步来,慢慢适应这套系统。

还有跟学习很相关的…

还有跟学习很相关的一点是睡眠。常常有人说考试前要睡好觉,事实上,睡眠在各种层面上都很重要。当处于非睡眠状态时,代谢物会在细胞间产生,它们就像垃圾一样在那,而且越积越多,这会影响你的判断。这也是为什么当你长时间工作时,逻辑会越来越乱。当你睡觉时,这些细胞会缩小,然后垃圾就被冲走了,就像重新打扫了房间一样。

根据神经学上的发现,将学习分为多个短期学习、睡觉,多个短期学习、睡觉,这样的循环系统,对于构建神经网络非常有帮助,这也是高效学习的秘诀之一。

人每天都会长出新的神经元,有两种方式可以让这些神经元存活并成长。一个就是将自己暴露在新的环境中,这也是为什么旅行会很有帮助,这些新元素能让新出生的神经元活下来。还有一个让新长出来的神经元活下来的方法,很简单,就是锻炼。不需要励志成为奥林匹克运动员或者成为马拉松选手,即使只是简单的散步也是非常有效的。但即使只有几天的锻炼也会带来更大的效果,它会增强新神经元的存活和生长。

接下来聊聊工作记忆…

接下来聊聊工作记忆(Working Memory),工作记忆就是临时记住一些信息,以前常说有7个槽可以用,这也是为什么你能记住7位数的电话号码,但事实上大概只有4个槽可以用,所以当你用工作记忆来记一些东西时,可以想象有一只章鱼在掌控着这几个槽,并建立连接,这也是为什么不能一次记住太多的想法。当你多任务同时开工时,相当于把章鱼的触角从仅有的几个槽中拿走一个或多个,这会让你变得笨一点。而发散模式则是有更多的连接。

那如何把短期记忆变成长期记忆呢,最好的方法就是练习,练得越多,神经元就会长得越长,扎得越深。

如果你不练习,那么这些「蝙蝠」就会在模式形成长期记忆前把它叼走,这也是为什么有时觉得已经理解了某个概念,然后走开了,过了两天,这些内容都被「蝙蝠」叼走了,然后就记不起什么了。所以最好的方式就是带一定间隙的重复练习(Spaced Repetition),比如周一、周二、周三、周五、周日练习。

再来说说 Chunk…

再来说说 Chunk。假设你要拼一副图,如果不明白每一块代表的含义,就会有无从下手的感觉,就像中间的那个圆一样,你能看到它,它也是个 Chunk,但却无法与其他的 Chunk 产生联系,这也是为什么死记硬背的效果会很差的原因。

当你在研究某个课题时,你其实在创建一个 Chunk 群,这些 Chunks 会跟其他的 Chunks 生关联,这也是伟大创意的产生之源。这时往往会得到一些支离破碎的 Chunks,如果都学会了,就会形成一副完整的图片,即使少了其中几片。

但如果你不重复练习,并且深刻掌握 Chunks,也能把 Chunks 拼起来,只不过是模糊的,而且很难拼成全图。

不同领域的 Chunks,有可能长得差不多,这样就可以借鉴原有的 Chunk 来学习新的 Chunk。比如你是一个物理学家,再去学经济学会更简单些,因为其中的一些 Chunks 非常相像。

最后给大家一些关于学习的建议:

测试是必要且重要的。Test yourself on everything, all the time。同样的时间用来做测试和学习,前者会让你收获更多。使用卡片(Flashcards),卡片不是专门用来学习语言的,卡片是一个通用的学习手段,诗人们会用它记忆诗句,以此来更强烈地感受诗词带来的震撼。

记得做「家庭作业」,不要只做一次,挑其中的重点多做几次,即使只是在大脑里过一遍,确保自己真的掌握了,这样你就得到了一组 Chunks。

最有效的方法还是「回想」,尤其是当你在解决困难的问题时。当你在阅读文章时,试着离开书本,回想一下能否记起其中的要点,这对于理解内容有很大的帮助,比反复读和思维导图效果都要好。

还有一个简单的技巧是向其他人阐述你所理解的东西,并且假设对方只是一个 10 岁的小孩(费曼学习法)。如果你能找到一个简单清楚的描述,就能更加深入地理解。你甚至可以把自己放到问题发生的场景中。

当你处于专注模式时,会有一种「我已经掌握了」的感觉,这时可以跟其他处于 diffuse 模式的人交流下想法,有时会帮助你纠正错误。

最后

我们都说要追随你的热情,但热情只是让你擅长的东西变得更擅长,而有些东西要花很长的时间才能擅长,所以不仅仅要追随你的热情,还要扩大你的热情,然后生活质量就会有大幅度的提升。

–EOF– 转载自 http://limboy.me/essay/2015/08/14/learning-how-to-learn.html

推荐阅读

暗时间-刘未鹏 http://mindhacks.cn/2009/12/20/dark-time/

Jan 12th, 2016

我的第一个博客

记录自己的博客之路

2016年1月12日 5:58:20

前言

自己尝试搭建博客有两三天了,因为公司的事情,慢了一些,也走了很多弯路,记录下来,也算一个好的开篇。

一些弯路

之前在《今日头条》上看了一篇几分钟就搭建好一个博客的,折腾了好久,也联系了作者,发现很多问题。他的是基于 Jekyll的Github Pages搭建的,声称只要几步,就可以搭建好,可是搭建好后:

一:fork后,改了名字,我clone下来,本地修改,push之后,博客内容很多时候没有变化

二:在github上内容都改变了,可是网页显示就是不变,有人说需要等一会,可是等了,也不行

转机

忽然想到看过唐巧大神的博客迁移之类的文章,google之后,用了半天时间搭建起来,是基于Octopress的Github Pages,Octopress的编程语言是Ruby,基于 Jekyll, 设计初衷是对于普通人更加易用。

以下是唐巧的博客链接:

http://blog.devtang.com/blog/2012/02/10/setup-blog-based-on-github/

如果你的访问量很大可以参考:

http://blog.devtang.com/blog/2014/06/02/use-gitcafe-to-host-blog/

他的还有一些问题,因为时间稍微有些久远,软件版本问题之类的问题,相信大家能够解决,还有一些语法问题,可以参考官网:

http://octopress.org/

http://octopress.org/docs/deploying/github/

如果英文不好,可以谷歌,如果不会翻墙,这里提供一个免费的软件

https://github.com/getlantern/lantern

https://getlantern.org/

还有其他一些网址,会用到:

http://bbs.feng.com/read-htm-tid-6663858.html

请follow me https://github.com/Sky0372Lsk

常用命令

rake new_post[“article name”] 生成博文框架,然后修改生成的文件即可

rake generate 生成静态文件

rake deploy 发布文件

rake watch 检测文件变化,实时生成新内容

rake preview 在本机 4000 端口生成访问内容

感受一下强大的英文解释:

rake generate # Generates posts and pages into the public directory

rake watch # Watches source/ and sass/ for changes and regenerates

rake preview # Watches, and mounts a webserver at http://localhost:4000

图片设置

1.其他网站引用(http://octopress.org/docs/plugins/image-tag/%EF%BC%89%EF%BC%9A

Examples

左半拉省略了引号,防止生成图片

% img http://placekitten.com/890/280 %}

% img left http://placekitten.com/320/250 Place Kitten #2 %}

% img right http://placekitten.com/300/500 150 250 Place Kitten #3 %}

% img right http://placekitten.com/300/500 150 250 ‘Place Kitten #4’ ‘An image of a very cute kitten’ %}

2.自己上传github设置:

copy your image in Octopress/source/images.

PS: Octopress(whatever you named it) directory is a repository directory for your blog.

then you can use img tag as:

左半拉省略了引号,防止生成图片

% img left /images/terminal.png 350 350 ‘image’ ‘images’ %}

代码设置

http://octopress.org/docs/plugins/include-code/

like this:

(test.js) download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/**
sample javascript from xui
*/

var undefined,
    xui,
    window     = this,
    string     = new String('string'),
    document   = window.document,
    simpleExpr = /^#?([\w-]+)$/,
    idExpr     = /^#/,
    tagExpr    = /<([\w:]+)/,
    slice      = function (e) { return [].slice.call(e, 0); };
    try { var a = slice(document.documentElement.childNodes)[0].nodeType; }
    catch(e){ slice = function (e) { var ret=[]; for (var i=0; e[i]; i++)
        ret.push(e[i]); return ret; }; }

window.x$ = window.xui = xui = function(q, context) {
    return new xui.fn.find(q, context);
};

OK!成功!然后,此时,再创建一个新的github的source分支,用于保存写作的md源文件等。

git add .

git commit -m “some changes”

git push origin source

可能会有很多问题,这几个参考一下。

啰嗦一句:一定要有折腾精神,我能说我折腾了好几周才基本会了码。不要忘记Google和stackoverflow

1.如果开始新建修改文章出现问题,这样解决:

$ ram gems use global

$ gem install bundler(sudo gem install bundler)

2.这个问题困扰好久

参考goole:

大概意思是我的最新版本ruby不支持,运行如下命令:

rvm install ruby-2.2.0

gem install bundler

bundle install

rake generate

$ rake generate

Generating Site with Jekyll

Configuration file: /Users/lishangkai/octopress/_config.yml

/Users/lishangkai/.rvm/gems/ruby-2.2.1/gems/posix-spawn-0.3.11/lib/posix_spawn_ext.bundle: [BUG] Segmentation fault at 0x00000000000418

ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-darwin15]

– Crash Report log information ——————————————–

See Crash Report log file under the one of following:

  • ~/Library/Logs/CrashReporter
  • /Library/Logs/CrashReporter
  • ~/Library/Logs/DiagnosticReports
  • /Library/Logs/DiagnosticReports for more details.

– Control frame information

………

………

You may have encountered a bug in the Ruby interpreter or extension libraries.

Bug reports are welcome.

Don’t forget to include the above Crash Report log file.

For details: http://www.ruby-lang.org/bugreport.html

小总结

这里想说两点:

1.最近才感受到Google的强大,程序员早日远离百度。

2.多看英文文档,那里有最纯粹的技术。

我是李尚锴,感谢这段经历,让我成为了现在的我。

有问题请联系

联系方式

  • Email:17081440372@163.com
  • QQ/微信号:2539829389/李尚锴
  • Facebook:Shangkai Li
  • Twitter: ShangkaiLi
  • 新浪微博: 青春最战役

个人信息


Jan 12th, 2016