01. 软件是个庞大的工程,不像盖小民房,看得见摸得着,是一个看不见的庞大的工程,所以一个像样的项目,一般没那么容易就搞定了。

02. 我们不是业务专家,很可能我们碰到的客户也不是业务专家,客户的需求会变来变去,我们也跟着被折腾来折腾去,没有一个很确定的功能需求。

03. 好不容易客户的需求也理解了,项目折腾了1年也搞定了,公司定位不清晰,又接了其他项目去了,又一切都从头开始了。

04. 我们不是思路严谨的人,客户也可能不是思路严谨的人,导致需求没有一个系统性,前后矛盾,互相冲突都有可能。

05. 我们的技术水平不过关,写的代码质量不过关,稀里糊涂,对付来对付去,我们的代码经不起客户的折腾,没折腾几下,就可能被客户的需求弄死了。

06. 客户的需求,无边无际,没有一个明确的范围概念,其实客户的需求是需要限定某个明确的范围,工作是在这个明确的范围内开展的。

07. 我们不是神仙,每个页面都需要精心制作出来,不是1个项目经理,带1个小兵,一个项目就可以搞定了,一个项目几百个页面,每个页面都需要设计、测试、调整、进入稳定期,一个人一天不可能做出10-20个页面吧,目前的生产力感觉还没到这个程度。

08. 可能我们也没有一个成熟的开发框架,这个就是每个人都在自我摸索,每个项目都在自我摸索,那是很浪费人力物力的,每个人都在折腾,每个人都是架构师了。

09. 我们没有严谨的分工分界的思想,哪些功能应该是在哪个模块里做,哪些功能是在哪个层实现才对,哪些功能应该在前台做,哪些功能应该在后台处理,可能都是混乱的。

10. 我们从自古就是差不多就可以,导致我们做出来的程序,哪个都不好用,漏洞百出,错误多多,无法将注意力都集中在客户的业务上。

11. 我们很可能没有一个整体的处理体系,例如页面的整体设计思想等,每个人,每个项目都在乱搞,没有按统一的处理风格来开发。

12. 没有用成熟的组件、第三方组件等,什么都自己开发,瞎折腾累得死去活来,最后效果还不怎么样。

13. 数据库结构不确定,变来变去,折腾来折腾去。
 
14. 公司没啥积累,一切都要从新来过,做一个项目,走一波,一年又一年,在原地踏步。

15. 项目经理换来换去,开发人员换来换去,客户的负责人也换来换去,公司的领导也换来换去。

16. 项目组人员,同时负责好几个项目,东搞搞西搞搞,无法精心做好一个项目,哪个项目都是半成品,都是个噩梦。

17. 拉一个项目,招聘一批人,各路神仙,思路不一样,做事风格不一样,写代码也不一样,牛嘴对上马屁股,无法协调好。

18. 老板不懂技术,以为几个人就可以,没有测试,没有质量管理,没有需求分析,瞎搞乱搞,折腾来折腾去。

19. 软件不像其他行业,是需要每行代码仔细写,仔细琢磨,不是能靠吹就吹出来,是需要精细的编写,最后才能出来成果,也不是买过来,卖过去那么简单。

20. 公司里大部分是眼高手低的家伙,平时东扯蛋西扯蛋,不踏实做事情,好不容易接了个项目,重点又搞其他虚无缥缈的东西,没人干实事。

21. 公司里往往耕地的牛是不讨主人喜好的,汪汪乱叫的小狗很会讨主人的博爱,主人会更喜好小狗,但是做软件项目是需要耕田的牛,不是靠小狗来叫叫就可以了。

大家也可以发表一下,我们日常开发生活中,遇到问题等,我们汇总汇总。
 

将权限管理、工作流管理做到我能力的极致,一个人只能做好那么很少的几件事情。