活给别人看

每到过年,三亚人就拼了命一般的放烟花爆竹,从年三十到十五,从晚上八点到早上八点,直到把三亚的优质空气也搞出不低的PM2.5来。也不知道是当了地主的当地人放得多,还是东北人放得多。

烟花这种东西,早几年我还挺喜欢看的,可是后来也就看腻了,现在看到人放烟花,就感觉人民币在空中灼烧,可能放的人要的也就是这个效果,你看你看,我在烧钱呢!我就是有钱,我就是有本事,我就爱烧钱,你管得着吗?有本事你也烧啊!

今天还看到一条新闻,说浏阳烟花产业不如过去红火了,曾经的花炮专业学校停摆了,毕业生大多数也都改行了。据说现在北京允许放烟花,但是放的人已经大不如前了。可见,整个社会的观念已经在转变了。这种暴发户般烧钱的爱好,这种活给别人看的new money,在很多地方已经开始转型了,从这个角度来看,中国人的自信力可能在逐步上升中。

说到底,我还是想黑一下三亚人或者三亚的东北人,虽然我现在是一个很喜欢钱的人,但还是希望他们能早日变成old monday,这样,至少我耳根清净一些。又或者,我还是跑掉比较现实一些,和这么多土豪生活在一个城市,真的感觉压力好大的。

中国人传统的爱面子加上现代消费主义,活给别人看简直成为了中国人生活的主线,一定程度上这是有上进心的表现,一定程度上这也是失去本心,变成攀比机器的表现,希望土豪们都能早日找到生命中更多的乐趣,活出自己的精彩,活给自己看,这样的中国应该会有趣很多。至于我自己,所谓未曾拿起谈何放下,希望有朝一日也能变成土豪,当然,我不会烧钱给人看就是了。

感动中国2016

今天看了一下2016年度的《感动中国》,央视评选的人物,自然昭显的事所谓的主流价值观。很多年没关注过这个节目了,应该是做了十几年了,能看到很多进步,但那种过度的利他主义气氛也还是非常浓厚。

比如有一个山村女教师,扎根35年,培养了两代人,对自己女儿都疏于照顾,现在到了能退休的年纪,虽然说觉得亏钱自己女儿太多,想着以后就帮着带带外孙,可是还是割舍不下大山,想要做到做不动为止。当然我看的时候也不免热泪盈眶,可是想想这样的道德标准,世间有几人能做到呢,如果能建立一个更合理的机制,又是否有必要让人一直奉献牺牲,如果这种感动,不能给人立下一个我也能做到的标杆,不能引发机制的革新,我们无非是每年替某个优秀的搭进入一辈子的乡村教师抹抹眼泪,然后继续该干啥干啥。老是宣扬老实人能吃亏,谁又会愿意当老实人呢。

当然,救火英雄重伤后,社会和政府全力救助的事则做得很好,虽然很遗憾最后英雄还是去世了。

之前央视还做过一个大国工匠的系列报道,总忍不住要去渲染那些工匠生活有多艰苦,可是如果技艺这么高超的工匠都没有顶级的收入,谁还愿意去当工匠呢?

论语中有一则“子贡赎人”和“子路受牛”的故事: 

鲁国之法,鲁人为人臣妾于诸侯,有能赎之者,取其金于府。子贡赎鲁人于诸侯,来而让不取其金。孔子曰:“赐失之矣。自今以往,鲁人不赎人矣。取其金则无损于行,不取其金则不复赎人矣。”子路拯溺者,其人拜之以牛,子路受之。孔子曰:”鲁人必拯溺者矣。”孔子见之以细,观化远也。

几千年过去了,今人看问题还是不如孔老夫子通透啊。媒体和政府这种比惨的舆论和道德导向,就该发现一次敲打一次,否则永远都是电视上人人皆尧舜,现实中人人皆猥琐。

诗人和诗意

昨天读到一首顾城的诗:

生日

因为生日  我得到了一个彩色钱夹  我没有钱  也不喜欢那些乏味的分币 

我跑到那个古怪的大土堆后  去看那些爱美的小花  我说:我有一个仓库了  可以用来贮存花籽 

钱夹里真的装满了花籽  有的黑亮黑亮  像奇怪的小眼睛  我又说:别怕  我要带你们到春天的家里去  在那儿,你们会得到  绿色的短上衣  和彩色的花边布帽子 

我有一个小钱夹了  我不要钱  不要那些不会发芽的分币  我只要装满小小的花籽  我要知道她们的生日 

内人评价现代诗说,写得最好的可能是两个渣男:徐志摩、顾城。

顾城有多渣男我没研究过,但是这首诗我看的时候觉得很有诗意,又不禁哑然失笑了一番,“我没有钱”这一句说不定是他写诗的时候的真实写照,买了个钱包但是里面没装几个钱这种感觉我也是有过的。

诗人善于把普普通通的事情变得有诗意,对普通人而言,如果能偶尔感受到这种诗意,会发现生活很有趣,可是事情要是走到了极端,彻彻底底活得像个诗人,可能不是什么幸事,一旦无法将诗意和骨感的生活灵活切换,就变成了没钱的浪漫主义,可能诗人本人也不在意,但是往往给身边的人带来困扰甚至灾难。

书籍的未来

最近搬家的事情要开始认真考虑了,从去年开始,我们家逐渐接受了极简生活的理念,其实已经很少添置东西了,但是纸质书还是越卖越多,因为目前来看,首先纸质书的阅读体验还不能完全被电子书取代,其次电子书的书库还相当有限,很多书只有劣质的扫描盗版。

相信未来电子书的书库会不断扩大,撇开这个问题不谈,纸质书和电子书阅读体验上的差异可能才是更核心的问题。就我个人的体验来看,纸质书的优势在于:

  1. 实体感,这不单单是情怀的问题,从记忆理论来说,实体感能起到一个记忆索引或者锚点的作用,不同的阅读场景和不同的书会交织在一起,而电子书则抹去了书和书之间的差异;
  2. 模糊搜索,看书时要前后参考着看,再好的电子书软件似乎也还比不上用手指模糊翻页搜索的体验;
  3. 书写体验,虽然现在的电子书设备也开始有做笔记和批注的功能,但似乎也还远远赶不上纸和笔的体验。

电子书的优势在于:

  1. 无空间需求:如果你家里码了几百本书,就知道我在说什么了,尤其是你在考虑搬家的问题时;
  2. 精确搜索,你可以精确的搜索电子书中的字词,而纸质书几乎很难,除了少数书有索引外;
  3. 建立信息库,李敖读书号称买两本来撕,有一套强大的纸质书的信息库体系,不过他的方法在电子笔记面前就算不了什么了,只要有心,现在的人要建立一个读书笔记库简直太容易了。

仔细考虑一下纸质书的优势,其实都是建立在习惯上的,毕竟我已经看了二十几年的纸质书,接触电子书则不过十来年,精美一点的电子书更是没出现几年。我想对我的孩子来说,他出生就在一个读屏的时代,虽然也会看一些纸质书,加上以后电子书阅读体验的优化,他是不是会比我更喜欢电子书的阅读呢?而电子书相对纸质书的优势则是碾压式的。

我想,以后纸质书将成为像现在的实体唱片一样稀有的东西,成为一种怀旧的产物,或者成为艺术品。而且我已经想到了一种必然出现的用于怀旧的电子书阅读器,已经开始攒钱了,就等技术成熟之后苹果公司之类的初一款了。这种设备大概是这样的:

  1. 它看起来,用起来都像一本纸质书,但是它的每一页纸都是电子墨水屏;
  2. 但它同时又是一个智能设备,可以存储很多电子书,甚至联网下载电子书,需要看一本书时,就加载它显示,比如要看《红楼梦》,它就变成了《红楼梦》,要看《算法导论》,它就变成了《算法导论》;
  3. 它配一支电子笔,写起来体验和真笔差不多,写到这本书上,看起来也和真的写到纸上差不多,笔迹可以保存,也可以识别为文字。

如果过几年技术成熟了还没人做,我就去创业吧……

发展慢下来之后

今天有同事问了我一个问题:为什么中国经济增速降了一点点大家就大呼小叫,而西方国家发展一直很迟缓也没事?

我想可能有以下几点原因:

  1. 惯性,中国人习惯了快速增长,我们毕竟从一个落后的状态过了,伴随着经济的高速发展的是,人们生活水平的日新月异,如果慢下来自然有些不习惯,毕竟,大家都还在期待更好的生活;
  2. 快速发展掩盖的公平问题在速度降下来后会逐渐显山露水,过去因为蛋糕每年在增大而不那么尖锐,因为即使是底层分到的蛋糕也在增大,但是蛋糕增大的速度慢下来,可能有些人分到的蛋糕还在高速增大,而有些人则不再增大甚至开始变小;
  3. 钱更难赚了,粗放式经营将难以维系,人们对生活的追求会从量到质转变,对大部分以前轻松赚钱的人而言,自然是寒冬降临,即使是火热的互联网行业,人口红利也基本吃光了,互联网人口基本上达到了极限。

中国的经济按之前的速度一直高速发展下去是不现实的,关键是发展慢下来之后怎么办?作为一个蚁民能怎么办?如果能逐步缓解公平性问题,社会财富适当向低收入倾斜,还有很大的边际效应可以期待,如果走入困局,则可能要面对几十年来的最大变局。

速度慢下来之后,想要赚钱只能更加努力,更加认真,更加创新,所谓风停下来,才能看见谁是真正的会飞。去年我在雪球建立的股票组合叫“中产消费升级”,危和机一般都是伴生的,比如白酒企业可能会一天天难过下去,而高端白酒则会发展,各种山寨品牌会逐渐死亡,除非它及时转型。蛮荒之地会越来越少,刀耕火种赚大钱的时代可能越来越远了,厚积薄发、深耕细作则永远不会过时。

所以,经济发展慢下来,我只能更努力了。

重复的力量

走出校门参加工作后,发现在很多高中以前学的东西还是概念很清晰,而大学学的东西则有些不甚牢靠。

想了想最大的原因可能就是大学学的东西其实信息量远远大过高中的,但是总的学时不长,再加上自己当年不如上高中时目标明确,没有方向感也就没那么努力,所以对所学的材料其实总共没有看几遍,而高中的那点知识,可是经过了反反复复的练习的。

虽然我觉得高中那种强度的练习对学习知识本身是过度的,纯属为了把人划分三六九等分配大学而进行的军备竞赛。但是事情往往从一个极端走向另一个极端,被重复练习恶心坏了,进了大学则变得厌恶一切练习。及时反馈的练习,适当的重复是建立永久概念的有效方法,不但实践证明了有效,也符合脑神经科学的研究结论。

我们可以研究各种学习方法,去寻找省时省力的捷径,但是方法往往不是最重要的,最重要的还是那些说烂了的道理,比如要坚持下去,比如要重复练习,在这些基础之上,才有谈方法的意义。

其实随着年龄的增大,理解力是不断增加的,而且如果在一个领域深耕细作,知识体系已经建立起来,面对新增加的知识,需要重复的次数会少一些,但这一切,都建立在之前的知识是牢固的基础上。

所以学习这个东西,来不得半点自我欺骗,缺下来的东西都是会有现世报的。这个道理当然是越早知道越好,但是没有人生目标的时候,知道也没什么用吧。

.Net框架中的算法与数据结构

最近复习基础算法,顺带浏览了一下.Net框架的源码,通过本文简要总结一下.Net框架中常见数据结构和算法的实现。

1 集合类

1.1 List

List<T>使用动态数组实现,列表为空时,数组长度为0,加入第一个数据后,数组长度为16,以后当长度不够时会加倍,这时需要新建长数组,并完成复制操作,所以数据量预计很大时,建议指定初始化时的capacity,否则会进行很多复制操作。没有进行数组的自动缩减,而是提供了显式的TrimExcess方法,当数组使用率低于90%时,会去除数组中未使用部分,此外也可显式设定Capacity,这些方法都会产生复制操作。支持二分查找和排序,算法都使用数组的。

1.2 LinkedList

使用双向环形链表实现,内部直接保存的只有一个head节点。

1.3 Stack Queue

基本类似List,都使用动态数组实现,默认大小均为4,

1.4 Dictionary<TKey,TValue>

字典使用散列表实现,具体使用的是桶加链表的实现,键值对使用数组存储(初始大小和桶大小相同),链表指针使用的是数组的index,桶的大小由大于指定capacity的一个最小质数确定,最小为3,最大为7199369。Tkey的哈希值去除符号位后对桶大小取模得到Hash位置,当键值对数组不够用时需要扩大(使用质数数组中的下一个大小),桶的大小也随之扩大,如果冲突数超过100,则重新进行Hash。

1.5 SortedSet SortedDictionary<TKey, TValue>

SortedDictionary<TKey, TValue>本质上使用SortedSet<T> 实现的,而SortedSet<T> 则是经典的红黑树结构。

待续…

最好的搜索

最近想要复习一下基础算法,主要方法除了刷题就是看书,刚刚我默默数了一下,一共是八本书同时看,创了我同时看书的新纪录。

以前上大学的时候,除开努力的因素,单看学习方法,一是目光短浅二是穷,根本不会去找资料辅助学习,学习资料只会使用老师的课件和指定的教材。工作以后,大多数的人则是很少再看书,遇到问题上网搜索一下救急了事。

从头到尾看一本书存在一定的问题,你的思维就被这本书的作者禁锢了,尤其是想要主题式学习的时候,每本书提供的可能都只是主题的一个侧面。以计算机领域的基础算法来说,红黑树是一种经典的数据结构,几乎每本算法书都会详细讲解,但是讲得最清楚的是它的发明者写的那本《算法》,从背后思想的出发点娓娓道来,远胜最广泛使用的《算法导论》。每本书都有它的可取之处,也有通读一遍时可以先略去不读的部分。

上网搜索也有它的优势,会有不同人的不同看法,但是问题是大部分看法都不值一看,资料的质量太差。通过搜索可以获得一些引用,但是真正有知识沉淀的还是论文和书籍,而书籍比论文更成体系,好的作者会阅读无数领域内的论文,把它们写到一本书里。而网上的文章,有真知灼见的还是比例很低,而且筛选起来太费时间。

所以想要知道一个领域内的必备知识,最好的搜索可能是在这个领域内所有的经典教材之中搜索,这样筛选资料的成本很低,按平均50块钱一本书来看,买10本书,也就是500块钱。如果实在太穷,无耻一点看盗版书成本简直为零。通过这些最优秀的资料构建自己的知识体系,获得知识的各个侧面的解读,而不是仅仅学习了一遍作者的思路,才能做到融汇贯通。

说了这么多,这么变态的读书方法我也是刚刚开始,目前感觉良好,仍需继续努力。

管理向下

今天是春节后第一天上班,单位开了好几个会,主题都是“假已经放完了,大家要切换状态,好好工作啊!”。

对我来说,我已经过了快半年没有假期的生活,每天都安排得满满的,无论是学习还是陪家人,都很尽力,年过三十的人,越来越感觉光阴催人。

结果就是,这些试图让人认真工作的会议完全变成了对我的困扰,严重浪费了我的时间。站在管理者的角度来看,他很难分辨谁需要这种提醒,即使分辨出来了,出于情面考虑也得大家一起吃药,管理者为了“照顾”最需要管理的人的情况,把大家都要拖入一个不必要的浪费模式。

实际情况可能更糟糕的是,管理者本身的出发点可能总体上是为了整体利益,但是也夹杂了自己的权力欲,很多管理者的个人爱好就是对人训话,教别人怎么做人,再加上管理是为了保住底线,向表现最差的人看齐,最后这样的管理就变成了灾难,对优秀的人来说,只有彻底滚蛋才能好受一点,天天用有则改之无则加勉欺骗自己毕竟不是长久之计。

从这个角度反思,如果成为一个管理者,在面对参差不齐的成员时,首先最好能区别对待,一人生病,大家吃药的事情不见得都有预防作用,也可能有反作用;其次说话要言简意赅,点到即止,不要把教育别人当成严重成就感,好为人师是一种病,管理团队的主要目的是把事情做好,当然团队文化的培养也很重要,但那不是光靠嘴上说出来的,而应该渗透到做事的标准上。

当然一个更加完美的反思角度应该是,如果能选择团队成员,永远记得宁缺毋滥,好的人才只需要很少的管理,管理往往会把所有人往团队中最低水平的人去塑造,虽然口头上会让大家学习先进典型,但这些话永远是最适用于最糟糕的那些人的。

甚至最最讽刺的事情时,有的人溜号了,结果其他人莫名其妙挨一顿骂,该挨骂的人却不在现场。

学习中的自我欺骗

现代人生活在变化飞快的时代,所以随时有被时代抛弃的焦虑感,这未尝不是好事,会激励人活到老学到老,但是我发现带着焦虑干学习很容易陷入自我欺骗的窘境。

要想深刻的学习,需要把整个大脑全方位的调动起来,这是一件很累的事情,适应远古时期部分的大脑会觉得其他部分的大脑在浪费时间和能量,做一些根本不重要的事情,它不见兔子不撒鹰。这种潜意识弥漫开时的后果就是,你好像在认真学习,但是脑子有一大半在晃神,每当你觉得需要深入理解一下,需要动手验证一下,这部分大脑会劝你说,没必要钻牛角尖,差不多得了。

当然不是说学习时对知识的每个犄角旮旯都要一一弄清,但至少很多时候时需要钻研一下的,可惜更多的时候,大脑习惯于作出努力的样子就自我满足了,你看你看,我又看了10页书呢,至于理解了多少就不管了,本质上时因为这样比较轻松啊,大脑是一个时刻想偷懒的器官。

所以好的学习状态,跟舒服闲适的状态是很难兼容的,要打破这种自我欺骗,可能有以下一些方法。

  1. 场景转换,找一个干扰少的环境学习,不要将学习和娱乐的环境混在一起,比如找自习室、工作间;
  2. 寻找意义,及时奖励,甚至只需要假装奖励自己都行,比如弄懂一个算法奖励自己,告诉自己赚了1000块钱,想象得越逼真越有效果;
  3. 带着问题学习,为了通过测试而学习,为了完成一个项目而学习,总之要以输出带动输入。