实际上我早已养成这样的习惯,每隔一段时间,就会去写一篇这样的博客,思考下如何做技术,而且每隔一段时间,去阅读之前写的东西,都会觉得自己好幼稚。知道过去的自己是傻逼,这样挺好的。
不学lisp, 不学haskell
在《第三种猩猩》这本书中,有一章叫“为什么麻醉自己—烟酒和毒品”,有一个被成为”动物发送讯号”的一般理论。大概意思就是说,抽烟喝酒这种事情,能够给别人带来一种信号:“我的身体很好,这些东西伤不了我”。类似的事情,还有在羚羊中,有一些羚羊在被豹子追的时候,有意会放慢自己的速度,跳着前进,这种看似作死的做法,实际上是给豹子传递一种信号,我的速度很快,玩着跑,你也追不上我,还是别追我了。这个有趣的地方是,那些不自量力的羚羊,也会模仿这种“风骚的”做法,结果就把自己玩死了。这无形中构成了一种筛选模式。类似于钻石这种东西,实际上,钻石本身确实没什么用,但是能够买得起,确实是表示自己的经济实力。这就是一种传播讯号的方式,让妹子知道,我很有钱,很吊。
那么这个为什么会说道这个问题呢,实际上在大学的时候,我学过一段时间的lisp和haskell,实际上不仅仅是大学,工作之后的一段时间,我也会琢磨这些乱七八糟的东西,包括协程,函数式编程,元编程之类的,直到有一天我才发现,就我目前所处的地带,并不适合学这些,我发现那些真正玩这些大神,从小就在类似书香门第的家庭,而且初中就开始写代码,他们的编程和数学的底子非常好,也就是说我的思维其实本末倒置了,是他们编程本来就很牛逼,然后他们刚好去学习了lisp,haskell这些东西,而不是他们去学了这些东西,然后他们变得牛逼了。我觉得这些东西能散发出来的讯号也是,“我这些都玩的这么吊,我的编程很牛逼”。可惜以我所在的环境,可没有那么多的资源去折腾这些,对于我而言,多去学会写好代码,少写bug,多聆听pm的需求,多去优化,重构自己的代码,可能比那些东西更实用于我现在所处的模型,所以“不学lisp,不学haskll。”因为有些东西从来就不是为你准备的,不是给你玩的。
枯燥的编程
我一直好奇,那些说编程有趣的人,到底会不会编程,或者说生活是有多么的无趣。实际上我觉得打游戏或者撩妹比编程有趣多了,编程也就在拿到工资,或者美女pm夸你这个问题解决的好的时候,才能产生巴多胺。还有一部分人天天扯什么,我们从小到大一直学着我们不喜欢的东西,干着我们一直不喜欢的工作,我了个擦,你有没有想过,如果一件事情,越学越有意思,那何来的门槛,那是不是是个人就能学啊?
再说你爱学的,富人家的孩子也爱学,那么你觉得你有可能玩的过他们么?多亏了我国教育部把教育和高考弄得如此枯燥,才有我们上升的一部分空间,否则,你这辈子都别想了。编程也一样,我觉得现在挺好的,天天枯燥的写写代码,每天下个班都要块十点了,要是编程这东西,又好玩,挣的钱又多,那我估计这辈子都没饭吃了。
所以我想说,你在做一件事儿的时候,一定要明白。你做别人也在做,你给你的竞争对手能留下什么门槛?才能让你活的这么滋润。
等待神秘人
之前看过一个人的说法,我一直很赞同。他说在二三线城市,很多人都像找个稳定的对象,很多人以为是甘愿平庸,但是实际上不是甘愿平庸,而是期望那个找到的稳定的对象,能够把你所有的难题都解决了。类似于期望一个神秘人出现,把你所有的难题一一化解,这就是他们嘴里的稳定的对象。
实际上在工作中也会这样,这就是我所说的主动工作和被动工作。什么是被动工作呢,类似于,有一天pm觉得这个系统可以优化,然后让你出数据,然后你就出了,然后pm按照你出的数据,加了修改方案,然后你按照他的设计改了。然后没效果,这事儿就这么过去了。
为什么没效果呢?怎么可能会有效果,实际上pm可能根本不懂这个系统设计成什么样了,rd也不去关心pm到底想要什么,这种就类似于期待神秘人的出现,这个问题会不知不觉的就解决好了。pm和rd都把对方当成了神秘人。实际上要解决一个问题,必须有人主动的担当,牵头所有的事儿,对这个系统有足够的了解,而不是你被动等我的数据,我被动等你的解决方案。
说句实话,解决一个问题,从头到尾的发现问题,分析问题,找到解决方案,再到实施,麻烦复杂着呢,不是什么神秘人随便就能解决的。
不仅仅是技术这一块,很多男女之间的感情,最后也是因为没有好好的维护,把对方当成神秘人,结果到最后分手了,比如妹子期待男友是个神秘人,能解决所有生活难题。男的也期待这个妹子是个神秘人,无时无刻的不支持自己的事业。
当然很多人也期待政府是神秘人,突然所有的生活问题都解决了。
这一年的方向
我这一年并没有打算多看技术的书,或者开阔自己的思维。我想让自己的很多“漂浮”的技术和想法变得踏实下来,所以我可能会尝试多去总结思考工作中遇到的问题和困难,比较贴近现实,少去关注一些“操作系统,编译原理”的底层知识,或者是函数式,之类的奇技淫巧。从工程的角度,多去优化和重构自己的代码,和设计思路。我最近特别喜欢“设计”这个词,它代变一种思路,一种更好的解决方案,一种在原有基础上的抽象。一种对模型的熟练掌握。一种对不需要事物的精简。
先去尝试做一件事儿,然后是熟悉它,把它做好。最后才是精简它,开始设计它。