程序员是如何浪费生命的

  程序员应该要爱惜生命,做有用有意义的事情。做有用的事情,有两种方式,一、做一个对用户真正有价值的项目,这个项目是真正有意义有用的;二、朝正确的方向以正确的方式做项目。但是程序员会遇到很多失败的项目,这些系统要么是没有人用没有真正价值,要么是以不正确的方式做项目,使用不当的技术,例如,用报表工具代替查询、用ESB企业总线当作海量数据传输用,或者做一些没有实际用途的功能,如做一个万能的用户自定义查询系统、做用户自定义工作流工具、做用户自定义报表工具,这些项目无疑在浪费程序员的生命。笔者试图总结程序员浪费生命的几种方式,如下。

  1、开发一个质量和性能很差的系统

  程序员经常会碰到这样的项目,做出来的系统质量很差,操作无反馈,失败无提示,而且速度很慢,操作时不时要等一会儿。然而,关键是程序员没有机会或者不想参与实施和维护,失去了学习和诊断问题的机会。

  2、花费大量人力财力开发一个一次性的项目

  这是从事应用开发程序员经常碰到的情况,为某个客户定制化开发一个一次性的项目,然而这个项目要花费巨大的人力成本,最终开发维护周期很长,以巨大亏本收尾或无法收尾。

  3、开发一个很漂亮花哨的无人用的系统

  这也是当前常见的情况,客户要做一个亮点政绩工程,要做一个界面漂亮花哨“很炫”的系统,各种图表,各种交互方式、各种监控分析全部堆上,但最终这样的系统是没有人用的。这只是给领导或客人参观用的。

  4、全新开发一个原有遗留的系统

  程序员的领导要基于原有的系统重新做一个产品,大幅提升可维护性可扩展性,增加系统的稳定性,减少系统故障。领导决定召集人马,重新进行需求调研,需求分析,架构设计、编码开发测试。但是,这样的事情一再重复,同样类似的需求给不同的客户做了一套又一套新的系统,而且每个系统过一段时间后故障不稳定的情况依旧。各种版本、各种代码库留给了程序员……程序员需要持续给不同客户维护不同版本的系统。

  5、开发一个项目范围不确定的系统

  程序员所在的项目,没有人管理项目范围,没有WBS,用户提一点做一点,项目完全没有合同或契约约束,用户要做的越来越多,系统做得越来越大,最终无法控制,客户不满意,程序员也累得半死,试图讨好客户争取更大项目的计划失败。

  6、开发一个没有系统角色或涉众的系统

  程序员做的这个项目,虽然都有需求、有功能、有界面,但是奇怪的是,需求没有提到,也没有人知道这些功能是什么人用的。需求没有定义出系统的角色,以及角色所要参与的业务活动。然而这样的项目也不少见,

  7、开发一个使用环境不确定的项目

  程序员做的企业应用项目,不知道是给电脑用的还是给移动设备用的,不知道是给IE用的还是其他浏览器用的,不知道是给IE6用的还是IE10用的,不能确定浏览器平台版本。移动设备不知道是iOS还是Android,Android不知道是2.3的还是4.0的,也不能确定手机或平板电脑型号。我们知道,中等规模的企业应用都会比互联网应用要复杂很多,几乎不可能覆盖所有用户的使用终端平台,要做一个优秀系统必须有约束条件,有使用的目标平台。

  针对以上各种情况,程序员经常是没办法干预的,因为,要么这是客户明知故犯的行为,要么是公司部门的战略行为,要么是由于项目经理基本的技能职责缺乏。当然程序员可以假设自己是项目经理,考虑该如何做好这些项目并适时适当的提出问题或解决办法,以免浪费自己的生命。

时间: 2024-10-26 20:06:54

程序员是如何浪费生命的的相关文章

当程序员老去

           程序员将代码注入生命去打造互联网的浪潮之巅,当有一天他们老了,会走向那里,会做些什么?      很多年以后,在我60岁的那天早晨,天刚蒙蒙亮我就起床了,先去公园晨练,然后回来做早餐(50岁的时候我学会了做饭),送完外孙上学,刚好8点.由于北京从2020年开始单双月限行了,这个月是单月,所以只能挤地铁.人一如既往的多,一小伙子要给我让座,看了看他的小身板,我说不用,你也是干 IT 的吧,今天咱们都是程序员.     来到公司,墙上那条新贴上去的刺眼规定总是让我很不舒服:所有

程序员为何只能是代码搬运工?

问题描述 经常在csdn贴看到一些抱怨程序员这个职业这不好那不好,为何.....国内的程序员大多都是搬运工,那国外程序员为啥那牛N呢,我觉得吧,首先是国内做的任何项目用的开发工具(vs2010sql2008等等..)都是老外开发的,所以老外才牛,才能有什么apple...安卓等等一些,如果幻想一下,假如某一天国内生产了了一批开发工具,那是不是也能创作出orange...banana或者一些高科技呢...纯属个人想法,望请指教一二. 解决方案 解决方案二:这个道理可以从两个方面来说,一个是教育和国

程序员的生命

程序|程序员     程序员的生命究竟是什么?这个问题我思索了很久.真的很久,看了很多程序员的牢骚,也看了很多多程序员的痛骂,写了一些程序,做了一些项目,也挨了客户不少的骂,思索一直伴随着我.     技术像是一个无底的洞,你就是7*24只是学习也赶不上它,这就注定了自己永远落后于技术(就好像是太阳从东边升起一样).于是就永远都有一种落伍的感觉.身为技术人员,明知是落伍了怎么能不着急?于是每天都是学习,即使是工作也是学习.     慢慢的发现,学习就是工作,工作就是学习,但是我除了学习新技术,学

想成为优秀的程序员这些码德不能缺

我把这些看成是作为一个程序员的基本素质,多数是编码之外的事情: ●代码每天备份:(预防意外导致的任何损失) ●上传代码时写清楚log信息:(为维护这个模块的人着想,有可能是你自己) ●提供接口时不要把问题抛给使用接口的人,升级或者变更接口时不要删掉原来的接口:(为使用你接口的同事着想) ●变量命名要见名知意:(起码不能误导别人) ●在工程中新建一个doc文件夹将项目相关的文档放在该目录下,方便后面维护的人员理解项目和代码:(为维护这个模块的人着想,有可能是你自己) ●签署bug或者转办bug时写

程序员都不读书,但你应该读

问答网站stackoverflow.com的一个主要功能体现就是:软件开发人员无需再从书本上学习编程,就像Joel所说的: 程序员看起来都不再读书.市场上编程方面书籍的数量和编程从业人数相比来少的可怜. 2004年在<The Shlemiel Way of Software>一书中Joel也表达了相同的观点: 大部分的人都不读点什么或写点什么.大部分的程序员都不读软件开发方面的书籍,他们不去软件开发方面的网站,他们不去Slashdot参与讨论. 既然现在的程序员都不读书,他们如何学习编程?他们

程序员成长规划

引言 我的程序员成长之路 程序员的成长经历往往很相似,大部分的人走过了最前面相同的一段路,而有的人则走得更远.总结自己这些年来的历程,这也许能让年轻的程序员少走一些弯路,成长得更快:或许更好一些,能让大家从中得到一些启发,早日进入优秀程序员的阶段,实现梦想,释放激情. 第一阶段,最初是在学校里学习计算机基础知识,学习经典的程序设计语言,编写测试用的小程序.这个过程可以说是对计算机和程序设计的入门阶段.这个阶段主要是培养了自己对计算机软件的兴趣,打下了良好的计算机基础知识. 第二阶段,而后参加工作

读书笔记--《高效能程序员的修炼》

        初次邂逅......        最近小编抽空看了一本书,书的名字叫做<高效能程序员的修炼>,从这本书的名字就能看出来,软件开发远不只是写代码那么简单,你要学会的是高效能的工作,这让小编想到了去年读过的一本书<高效能人士的七个习惯>,有兴趣的小伙伴可以看看哦,受益匪浅,<高效能程序员的修炼>这本书从人文角度而非技术角度去阐释了作为一个程序员,应该具备的基本素质,所以小编在看这本书的过程中,感到非常的有共鸣,通俗易懂,又很贴近小逼啊工作和生活中的实际,

如何成为一个卓越的程序员

作者是Rails/Angular开发者,企业家&YCalum.早先创建了Clickpass.com网站并出售.目前担任Brojure.com的OTO(唯一OTO),兼职entrepreneur first. 免责声明:这是一篇非常长的文章,比我通常会写的主题要长得多.我编辑文章并发给朋友评审,直到他们都觉得文章没有一字需要删改的.我希望你也这么认为. 如果有一件事是开发者都关心的,那就是成为更优秀的开发者.那你应该从哪里开始呢?你是否应该积累一些附加的卖点:比如专研Node知识和no-seque

技术变化那么快,程序员如何做到不被淘汰?

阿里妹导读:写了这么多年的代码,你是否曾经有过这样的迷茫和困惑--技术发展日新月异,奋力追赶的我们,究竟是技术的主人还是技术的奴隶?今天,我们邀请到了蚂蚁金服的技术专家空融,一起来聊聊技术人的软件世界观. 在浩大的软件世界里,作为一名普通程序员,显得十分渺小,甚至会感到迷茫.我们内心崇拜技术,却也对日新月异的技术抱有深深的恐惧.有时候我会思考难道在技术领域内不断紧跟新潮,不断提升技能就是我的价值所在?那么我是技术的主人还是技术的奴隶? 人之所以迷茫往往是找不到工作生活的重心,感受不到工作或生活的