最近中午吃完饭就跑到书店去逛,发现coders at work这本神作居然有了,于是每天中午都去看,已经看了一半了,把一些读后感写下来,留作迷茫的时候再温温。
先说说我看这本书的目的,最近有点专注在打酱油,收获不多,目标感越来越差,所以看看大牛们的成长然后反省一下。
第一点,coder的工作其实是需要一点艺术气质的,同时还得具备一些处理人际关系的能力,同时还得有一定的写作能力(这不是原话,大概是这意思),关于写作很多人都有提到,好处没说,我想来,大概也就是这么两点:提升技术影响力,这点不用多说了,如果你的blog干货多,大家都会看,特别是对一些技术难点或者疑难杂症的分析等等,另外我看过不少bloger文章思路清晰,思维缜密,同时也能体现出个人的谦虚,思路清晰,思维缜密这不正是coder必备的素质吗?或者说我们可以借由写作来锻炼我们的设计,架构能力,因为当你研究了一个技术点时,自己所谓的弄明白了和你把知道的东西总结并记录下来完全是两码事,说到这我还是很惭愧的,很多时候都缺乏韧性和坚持,虽然我很清楚写作的习惯很重要。。。。再来说艺术气质,我的理解是对代码,对设计,架构的美的追求,一旦你对代码的质量的追求到了极致,那就是一种美了,人际关系嘛,这个必须的,我们这些个宅男必须要把这点牢牢记住,除非你只想作科学家,否则想在IT路上继续混下去是很难的,大牛们都提到了这点,我们就不能再骗自己,每天心中默念着“我只要把代码写好了就牛掰了,其他事我一概不管!”这种想法极其危险,现实中我看到这样例子也不少,当然不排除少数能大成的情况,不过我们总不能把自己越圈越小吧,至少在30岁之前大部分人的职业道路应该是越走越宽才“保险”。
第二点,大牛对底层技术的理解和功力,多数被采访者都是从最原始的打孔机开始写代码,对硬件,汇编,编译原理,常用算法和数据结构,语言的本质等等,这些东西的理解是我们现在无法强求的,因为我们大学最多学学计算机组成原理,“了解”编译原理,写写c代码,做做xx管理系统,用asp写写xx网站等等,我们的起点很低,这导致了我们的可成长性很差,因为我们对过去的那段历史基本是出于空白状态,比如他们最初编程的时候很多编译器都是自己写,没有面向对象,只有算法和数据结构,还有在有限的硬件计算能力下对性能的极致追求,那我们呢,上手就是java了,OO,组件库,想到神马基本都可以在开源社区找到实现,我们就是把代码粘起来就可以了,有人说,那我们现在面对的是海量信息,现在是互联网时代,我们要解决的问题不一样了,我们要了解的是分布式架构,神马nosql,海量数据的拆分,水平or垂直,map-reduce,系统架构的一些常用模式,啥都跟海量扯到一起,其实都一样,只要不是停留在模仿和使用上述东东的情况下,都可以找到各种底层技术的身影,万变不离其宗,见招拆招才是最高境界。
第三点,对技术的激情,虽说我们错过了一段历史,但是从大牛的面试问题上我们可以找到一些成为大牛的必备条件,激情,对技术持续的激情,大牛会问:你最喜欢自己做过的项目,哪段代码是你印象最为深刻的,其实都是在了解你是否对技术执着且有激情,因为持续的激情才是你不断能成长的动力啊,这样即使你错过了计算机发展的最初也是最宝贵的那段历史,但是持续的激情一样会让你在职业道路上走的更远更深,注意,持续很重要!
这些就是看到一半的一些感悟了,奶奶的,还有好多东西要学,去也!