上一篇博客《[程序员应知——放宽视野](http://blog.csdn.net/lingyun2005/archive/2011/04/19/6332605.aspx)》发布之后,收到很多朋友们的评论,大家也认同我的观点,觉得对于程序员来说,放宽视野是非常必要的,然而,也有很多人提到,那篇博客写的比较泛泛,并没有指出如何来放宽视野,我也意识到了这个问题,所以想再继续谈一下“放宽视野”这个话题,:)
我想,想要真正放宽视野,首先要做到的一点就是**把自己的姿态放低**,不要认为程序员这个职业比其他职业高级,甚至在很多传统的职业跟前,我们还是要谦虚地去学习,也就是一种空杯子的心态,那样才能够把其他领域的知识装到我们的杯子里面。另外,要始终有把其他行业的知识与IT知识联系起来的意识,也就是说不能打无准备之战,要**时刻做好准备**,从其他领域吸取自己所需要的内容。
具备了以上两个前提之后,我们就要开始把自己的视野放宽,充实自己的知识了。对于任何知识都是一样,我觉得所要遵循的过程,或者说三种必要的方式就是“[**学习、思考和分享**](http://blog.csdn.net/lingyun2005/archive/2010/11/09/5996741.aspx)”,学习的过程可能是阅读大量的书籍,也可能是参加各种培训,或者向他人请教;学习获得的知识还没有经过提炼,我们需要经过思考这个过程,把其中所要吸取的知识提炼出来,使其真正成为属于自己的智慧,那样才能够发挥出更大的能量;而分享的过程也非常重要,不仅我们可以把自己的想法表达出来,获得他人的反馈,而且能够根据这些反馈以及思想的碰撞进一步地学习和思考,从而形成一个良性的循环。(对于此,更详细的内容可以阅读一下我之前的一篇博客《[程序员应知——学习、思考与分享](http://blog.csdn.net/lingyun2005/archive/2010/11/09/5996741.aspx)》)
接下来的问题可能就是,要把视线落在哪个领域,才能够对我们做好编程的工作起到很好的作用呢?这个问题我想是因人而异的,在此我仅把自己的一些感受说给大家,做个参考。
首先一个必要的领域就是**工作中所要接触到的业务领域**。多年以来,我更多地是在从事业务系统相关的系统开发,所以相关的业务领域知识就比较重要了,有了这些知识,我们可以更好地和业务人员交流,也可以更好地理解业务所提出的需求,并且能够在需要的时候为业务部门提出比较合理的意见和建议。这些年来,我涉及到的业务知识包括:生产、贸易、建筑机械租赁以及现在所从事的保险行业,这些知识对系统开发起到的作用是显而易见的。并且经济学和财务的知识也非常重要,毕竟每一家公司都会涉及到这些内容,是属于必不可少的领域知识。
接下来需要了解的领域我想应该是**管理学**,毕竟每个系统的开发都是项目,都需要进行管理,比方说资源的掌控、进度的把握等等,这都会需要管理学方面的知识。曾经看过的《目标》那个系列的书,还有《一分钟经理》系列、《人月神话》(请允许我把这本书也归到管理学范畴,呵呵),还有大学的管理学课程相关的教材,都对我更好地管理自己、管理团队起到了很好的作用,更多的心得是,要确定问题,找到自己的目标,然后用最直接的方式达到目的,消除各种浪费,相信很多朋友都会有相关的体会吧。
此外,我们也不能放松对**自己的修炼**,不仅仅是自身的**情商修炼、影响力修炼**,还有一些我们所必需的**软技能**,比方说沟通的能力、演讲的艺术、制作PPT的技巧等等,都会对我们更好地进行学习、思考和分享起到很重要的作用。
很多朋友会说,还有一个很重要的方面——**哲学**,没错,这是指导一切学科的知识,当然我们不能忽略,在工作和学习中我们经常会利用哲学的一些思想来解决问题,比方说:主要矛盾和次要矛盾,矛盾的主要方面和次要方面,世界万物都处于运动变化之中等等。
以上就是我的一些想法,希望能够和大家一起继续放宽视野,更好地做好程序员这份工作,:)