《程序员修炼之道》,作为预备程序员,读读还是很有必要的。
这里面针对程序员,反复提到一个形容词,就是“注重实效”。根据书中所讲,结合我的理解,我认为注重时效这个词主要体现在责任上,对自己负责,对自己的代码负责,对自己的代码中的错误负责。“最大的弱点就是害怕暴露弱点”,我非常认同这句话,要坦然面对自己的错误其实并不是一件容易的事情,不仅要面对,还应该应对,比如提前预估风险,提前制定应急计划,提供各种选择而不是借口。
第一章还提到一个我最近思考比较多的概念,就是“知识资产”。知识资产包括很多,不仅是专业技术,更有用的我觉得是经验。知识资产是需要经营的,途径也有很多,无论是保持学习、参加活动、跟上潮流……总之,不要就此止步,要抓住学习的机会,利用碎片化的空闲时间,说不定哪天所学就起到作用了呢。但也不能像我最近一样,虽然渴求知识,却因为要学的知识太多而感到有些许焦虑,感觉时间不够用。我想,只能慢慢来,认真规划,一个接一个的去执行,学到就是赚到。
在书后面一个章节提到了需求。在软件产品规划课程上,老师也讲到了需求相关的内容,更偏向用户体验方面,但其实思考思路是大同小异的。需求很少浮于表面,要去深挖,要在用户的角度去考虑需求,与用户一同工作,像用户一样思考。用户的需求要形成一个完整的故事,谁在做什么事情的时候遇到了什么问题,他是怎么解决这个问题的,而我们又能提供什么更好的解决方案。这是个典型的用户故事模板,思考清楚这个其实需求就有一个模糊的概念了。这个时候拥有形式化的模板也很重要,这样可以确保包括了用例中所需的所有信息,减少考虑或记录的遗漏点。
注重实效不仅存在于程序员层面,也存在于团队层面。质量是一个团队问题,团队整体都不应该容忍破窗户,大家都应该认识到质量对于软件开发的重要性。而且团队的每个成员都应该时刻主动去监视环境的变化,如果大家都安心的认为团队中总会有人在处理或关注着某个问题而不去亲自在意,这样就容易导致问题的遗忘,最后就如同温水煮青蛙,问题总有一天会突然爆发。
以上就是我看完这本书后感触最深的部分,其他内容其实也产生过同理心,但是由于篇幅原因就不再赘述,总之,这本书对我启发最大的一点就是,要做一个注重实效的程序员,就是这样。