做一个快乐的程序员(1)

我们应该快乐地工作着,快乐地生活着。 程序员总是能从调试成功一个程序而找到快乐,那种快乐来自于成就感。但是作为一个职场人,我们总是有着各种苦恼。

一. 对于“按劳分配”的不公,是大多数职场人的感受。

     “我比他的工作量还大,为什么我的收入还少。”,

    “我觉得我的工作才是最重要的,为什么领导都不重视我。”

     “如果不是因为我,这个项目早挂了,现在成功了,功劳都是别人的。”

      几乎所有的职场人都或多或少有些这种感觉,自己的付出与收入是不成正比的。在这样的思维下,必然就会产生不良情绪,对于比自己收入高的同事,总是在心底里不太配合;对于项目的进展并不太关心,关心的是自己从中学到了多少知识;对于领导分配的任务如果能推掉就推,从不主动要求领导分配更多任务。

      于是我们就可能感觉每天工作很累,没了工作的积极性。这是一个恶性循环的开始,同事开始觉得你是一个对工作不太负责的人,领导觉得你对工作的态度有问题。于是同事尽量少与你配合,领导尽量少给你分配工作。 而你会觉得越来越得不到重视。于是想到了离开这个公司,只要这样的思想一出现,你就会觉得自己离开是唯一的选择,于是你把更多的时间放在学习新的东西,为寻找下一家工作而做准备。

       我们往往发现,比我们技术差的同事总是能得到提升,而自己却觉得越混越没出息。我们在一个公司工作1年、2年。却感觉自己过得不开心,职位也没进展,唯有技术有些提高。 在忙碌的工作之余,你是否想过为什么情况会不如自己所愿呢。

     “世界从来都是不公平的,但也总是公平的。”,“生气不如争气好。”,我们承认世界总是按照客观规律在运作,社会运行规律也一样是客观的,不管你怎么想,不管你怎样生气,世界还是那个世界,不会有任何的改变,它依然按照它的规律在运行。 选择怎样地活着,完全在于自己的一念之间,你可以选择今天高兴地过一天,也可以一直闷闷不了,谁也不会关心你的心态,也不可能改变你的心态。

       如果你从今天开始选择积极地看待一切问题,你就会发现世界真的变了,其实世界还是原来那个世界,但是你却快乐地为自己的生命而活着。

       一个人的工作量大,自然接触的东西就多,学到的东西也多,也许你会说,很多工作就是在重复劳动,学不到东西。但是想想人类的活动,一代又一代,人类也不是在重复着一个重复么。对于大量的工作,你是否有能力可以安排的井井有条,你工作的效率是否比别人高呢。

       收入比别人少,在一个公司中,一般是一个比较难改变的事情,除非你能得到提升。那么你是为目前的那么一点点差别闹情绪,还是选择努力工作向上升一级来提高自己的收入呢?

      其实在一个工作岗位中,收入、学习这些真的那么重要么?

     如果你有2万一个月,那么你一年也就24万,估计能剩下15万,要买一个房子,在深圳这些地方,要10年,如果你要买一个别墅,那么要100年。如果你真的很在意未来经济条件,你希望你就过着这样的生活一辈子么。 因此工资增加的速度才是你要考虑的最主要因素。

      要增加工资,就必须有个人能力上的增长,要增长能力,很多刚刚进入进入职场的人,往往就是拼命地学习,如程序员就花大量的时间学习不同的软件开发技术。而往往学得越多就越觉得自己不适合这个岗位,应该到一个更有为自己的技术能力增长让程序员感觉到自己挑战性的岗位。

对于一个程序员大部分的工作不是在编写新的程序,而是完成以下工作:

1)理解客户需求,每个程序员都要理解整个系统的用户需求,而且也要理解整个系统的架构。

2)不断地测试和完善自己编写的软件,对于一些不写文档,而且代码书写风格不规范的程序员,往往要花更多的时间去维护自己的代码。

3)根据需求不断地修改自己的程序,甚至推倒重来。

4)不断地学习新的技术,并在项目中进行验证,有时候为了自己的爱好和成就感,把一些不成熟的技术带到项目中来。

对于一个项目来说:

1)先编写部分文档,是保证项目质量及项目进度的前提。而恰恰相反,很多程序员为了赶进度,就连代码注释也懒得写。

2)采用最简单的技术实现需求,能最大地发挥团队的效用。而恰恰相反,很多程序员总是采用只有自己才明白的技术,使其他团队成员无法维护他的代码。

3)良好的书写习惯,是系统可维护性和可改版升级的有效保证。一个系统不是一进入使用就不再修改,随着用户的需求的升级,往往需要对系统进行大量的修正。

对于一个程序员来说:

1)程序技巧不是最重要的,采用一个复杂技术带来的收益往往是非常小,而采用涣散性思维从另一个角度解决问题往往起到事倍功半的效果。

2)不要仅仅深度学习某个开发技术,而是要广度学习,从不同的技术中找到一些共性以及不同的解决问题的思路。

3)千万不要为了赶进度而放弃编写文档的习惯,程序是一种语言逻辑,而自然语言是一种更容易理解的逻辑,写文档比写程序更能锻炼一个人的思维。

4)养成两个的程序书写习惯,比写程序本身更重要,不要为了完成功能而写程序,而是用程序描述一个业务逻辑。

推荐程序员多学习:

      首先学习一种程序语言可以实现编写软件,然后不断地学习其他语言,只要有台电脑,建立起学习环境,学习起来很容易。程序语言之间是相通的,花大量时间去学一门语言,还不如花多些时间从语言对比中了解一个语言的特性。

      很多计算机专业毕业的学生,可以说并不是爱好编写程序,而是觉得这个专业能带来收入或能带来求职的机会。在学校学习的那些理论的知识,一般很少通过做项目来理解和消化。如果不是爱好,你就不会寻根究底,学到的总是一些表面的东西。如果你想在这行做好,就要静下心来从最基本的开始学习。对电子电路、数字电路、处理器原理、计算机原理、单片机、操作系统原理、编译原理、面向对象编程都大概有个了解。如果你想提高你的逻辑推理能力,最好能学学《离散数学》。

       程序员最大的问题是“只知道写程序,对于其他领域则基本不关注”,因此在做项目时,总是感觉需求在变,而实际上是程序员的对于一个公司或行业的业务根本一点概念也没有,于是用户要求做什么,程序员就做什么。而不是程序员一开始就去了解用户真实需求,并把需求完整地书写出来与用户讨论。 因此对于程序员至少应该多学学关于企业运作的一些基本知识,如企业的基本结构、财务、工商、人事、物流、供应链等基本业务流程。 很多人在做财务软件,却根本不清楚一个财务报表对于一个企业意味着什么,也不会从用户的角度去考虑,而仅仅把财务报表看成一个数据表。

        对于一个人的人生来说,技能往往并不起决定性作用,而心智模式才是重要的。在生活和工作中,情商比智商更重要,对于什么是情商,似乎也没有定论。但是自信、坚持、友善这些特性可以说是与具体技能没有关系的。一个人要开心地生活,就要把思维放开些,而不要局限在一个狭小的思维空间。 要放开自己,就要多参加社会活动,任何人都不是天生就开朗和活跃的。 多了解些与生活有关的知识,对于你的工作会有很大的帮助,而且往往是,在一个领域内很难解决的问题,从另一个领域可能会给你更多的启示,带给你的收益往往比你直接投入到该领域的回报还多。

在这里推荐几个资料:

      1)网易公开课《电路与电子学》、《电和磁》、《编程方法学》,这些基本不需要任何基础就可以学习。对于我们英语能力不好的人来说只能看些翻译过来的课程。国外的课程与我们大学教授的讲课还是有很大区别的。

      2)网易公开课《幸福》《公正》,这两个课程可以改变我们看世界的眼光。

      3)机械工业出版社出版的一套翻译书,《深入理解计算机系统》、《编译原理》《操作系统设计》《离散数学》,还有很多其他的书籍,非常不错,不过我不太喜欢深入研究一些技术性的东西,如《算法导论》、《编码学》。那需要大量的时间去学习,会把自己弄得疲惫不堪。

      4)极度推荐看公开课中的《TED》,能开发自己的思维,又增长知识。

       学习就要养成做笔记的习惯,我以前也很少做笔记,做笔记也只是摘抄一些资料,而很少把自己的想法写下来,但是工作10年后才发现,读一本书,如果你每阅读一段,就把自己的理解写下来,然后再经过推理和延伸,写出一些书上没有介绍的东西,那才是真正的阅读和思考。

每天都对自己说一遍“今天我可以选择积极地活着,也可以一直这样消沉下去,全在于我的选择。”

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值