相见

分享几个简短的思考和观点。

关于代码

「为了理解一个简单函数的运行过程,今天的软件工程师可能需要追踪25个文件。因为每个文件都包含一个 Java 方法,它会向另一个文件的另一个方法发消息。为了方便查看20层的堆栈,人们发明了 Eclipse 那样的复杂工具。实际做事的那一行代码,埋藏在数百行胶水代码、无数个接口和其他冗余代码之下。」

Philip Greenspun,麻省理工学院的计算机教授

插嘴一句,现在还是习惯使用JetBrains家的IDEA,风格简约,爽心悦目。看到很多关于集成开发环境工具好坏的争论,Eclipse什么什么不好,IDEA哪里哪里特别方便,无聊之者,还不如老老实实把BUG解决掉,赶快回家睡觉。

由Phillip Greenspun的一段话引出,只是非常印证最近的工作。为了理解这个方法函数的功能是什么,不停的追踪发现,不停的向下挖掘,在经历层层封锁之后终于找到了真相,心里带着窃喜,还是要骂咧咧一句:原来你就在这里,原来你是这样实现的,原来你干着这样的事。然后带着些许满足感返回去,继续下一行代码的探索与发现。

关于改变观点

亚马逊的老板贝佐斯说,「如果一个人经常改变自己的看法,更可能得到正确的观点。」以前没有从这方面角度思考过这个问题,经常改变自己的看法和观点不是立场不确定么?你都不确定自己的观点是否确定怎么值得别人相信你?

仔细思考贝佐斯的话,还是有一点道理。如今世界变化的太快了,聪明的人都会不断的修改自己对世界的理解,重新考虑自己以前考虑的问题,不断的用汲取的新的知识,新的思维方式来完善自己的观点和看法,然后得出不一样的结论。这样说来,不是意味之前的观点就是错误的,而应该说自己的观点是暂时的,因为我们都在成长,今天的你和昨天的你都会不一样。

这样理解贝佐斯的话可能更有建造性,「如果一个人经常改变自己过去事情的看法,更可能得到正确的观点。」另外,写完这句话,我对这个观点看法已经改变了。: )

关于读书

池老师的MacTalk·跨越边界,已经断断续续在通勤之余已经阅读完。感受还是有一些,另外开篇文章再来说一说。

我觉得读书是由点及面的成长,现在阅读的这本书为点,书中涉及到的知识,介绍的人物,作者阅读书籍为扩展的面,这是一个循环辐射学习的过程。比如我读完跨越边界,对软件项目的思考,持续学习的观点,时代的技术发展(毕竟池老师是70后程序员)都有一定的感悟和自己的理解;对高晓松的《如丧》,《鱼羊野史》,冯大辉的博客文集,一生只为欢笑的linus,传奇工程师沃兹大神都抱着浓厚的兴趣,这样就是面的展开。

读书和写博客都引用同一句话,「读书会带来很多好处,却没有任何明显的坏处。」