实战解析(完)----总结
摘要:
温伯格大师曾说:“技术(本身)毫无价值”----转送给迷惑的程序员
艾森豪威尔上将曾说:"计划本身什么都不是,而编制计划的过程就是一切"----转送给彷徨的项目经理
齐白石大师曾说:“学我者生;似我者死”----转送给委屈的过程改进者
====================================================================================
我忽发齐想,大致看了cnblogs的访问量分布(我可不想要高手、专家之帽,免得太累),看看我们的读者群的焦点在哪里,结果如下:
最受欢迎的是一些防流氓软件的共享软件的下载;其次是一些国内高手的开源的框架;还有就是一些设计模式、技术技巧(尤其是.Net2.0)的;关于思想和过程的很少很少,这多少也是社会和市场的一个快照吧。书店里堆满了太多XX21天从入门到精通的书,网上的很多文章也是天下文章一大抄。为什么中国就没有大师呢?我们的一些IT业的教授站得太高,你们了解我们在实际开发中经受怎样的煎熬吗?我们多么希望感受到你们的关怀和指点。你们在忙什么:让博士们发表一篇又一篇的论文吗,还是正在参加什么评审?
又扯远了,回到总结的话题:
一、与本项目有关的总结
1.1 技术总结:
a) 这个项目在底层的数据采集作业调度和采集控制上没有涉及,但那是本系统的基础,还有上层的统计报表也没有说,那个地球人都知道是什么回事,这些是花费了大量的时间进行开发的;
b) 收到数据后应该还有数据库操作,前几篇文中没有提起,您可以看出,数据保存可以作为一个数据订阅者和监控台同时并行作业;
c) 本文没有采用最新的技术,其实,NET1.1都已经很强大了,试问有几人敢说”精通”。本文中的这些例子除了使用delegate这个特性外,其他都可以在其他技术中轻易实现,所以您可以很方便地移植到其他平台。
d) 真正的工业级别产品都会使用“看门狗”技术,确保永不停机。实际上是用汇编写一个刷新主板CMOS的“心跳”控制,主机可以设定几秒钟没有刷新就会重新启动机器,不得以为之的办法!
1.2 非技术的总结
a) 关于团队
还记得我开篇中八个原则中有建设自适应的团队这一条?
本项目由于是多方参与,所以主承包商为了降低自己的工作量,把大量工作推给了底层,所以最新的数据采集器就集中了DadaHub的功能,还有声光报警,而这块是没有界面的工控机,十分难以调试,后来的维护着实让大家头痛;主承包商也是挨了两次臭骂次才通过省局的验收!(我却因此游览了很多地方,今后没有这样的机会了)
b) 不是每个需求具有同等价值
事实上在验收上专家们才不管开发的技术路线,首先看的是性能,接着看的是功能。而我们花费了80%的精力做报表和自定义界面,在验收时只是一笔带过,而那20%的工作却是客户关注的,当然客户不会告诉你,回去看看我的那篇范围,注意那些有$符号的是吃力不讨好的功能;注意那些有钥匙符号的是验收很重要的功能
二、与本项目无关的总结
2.1 我不是技术”追新族”
技术用来解决问题,从来没有最好的技术,你找到了最适合的技术吗?当然要考虑成本!我们如果不明白周围的环境,如果没有一个清晰的目标,背负一堆工具是难道不是傻吗?
“技术毫无价值”!虽然温大师说的大家不爱听,但是想想。你要买技术、学习技术这些都是别人获得了价值,对自己来说,经验和思想的提升才是今后价值的体现啊。可能大家会说,dudu发了那么多文章,你不是在贬他?非也,我猜dudu的志向一定不会局限于第一博客,难道大家还没有感受到cnblogs本身具有的价值!
我是单位里唯一使用.NET的人,我主要用来验证我对一些解决方案的体会,学习一些开源项目解决问题的思路而已。
2.2 再谈J2EE vs .NET
如果你刚毕业,从我的感觉来说,很多企业都是选择要J2EE的学生,这并不说明.NET不好。我非常喜欢这个一个真正技术天才和商业巨子合力打造的强大工具,尽管这后面有一统天下的野心。
我看过的有些项目很搞笑,客户坚持就是要J2EE,就是要跨平台,结果搞得开发商在windows上运行Web Logic(上有政策,下有对策),无奈,无奈……
再看看微软吧,为了自己的windows一统天下的目的,就是不把.NET这么强大的框架扩展到UNIX\Linux ,苦了千万的程序员,可能微软就是毫赌.NET成功—〉windows成功的。但是我想应该在5年内可能是并存吧,大家要学习更多的东西。如果.NET支持linux,很可能没有人用windows,看来windows还不是真金,否则为何要这样呢?
2.3 再谈国内高手的框架
我想说,中国最不缺的就是人才,为何这些年来国内少有大师产生?这是教育的问题?是社会的问题?
我的感觉是:“在项目的时间压力下,很多程序员的青春和梦想被吞噬了,他们疲惫地离开了他们原本热爱的行业”,一个好的框架需要一批像linux社区那样有时间保证、愿意奉献的人们去产生。而国内的优秀苗子就是恰恰缺少时间。
国产的共享软件中就不缺FoxMail,NetAnt这样的好作品,但是这些作品往往体现不了软件项目的管理重要特性。反倒是又激发了一些人朝孤胆英雄的方向前进。
难道国内的高手们就不能联手做一点什么产品或者应用吗?非要“白花齐谢”吗?
2.4 再谈软件的盗版
做软件开发的都不买必要的正版,又如何希望别人给你的产品付款呢?中国的IT就是这么怪圈吗?我知道有几家日子好的企业,干脆不接国内的单了,陪不起这种玩法(客户没有人敢在需求上签字,谁都可以提出“仅作参考”的意见,但是验收时又一个都不能少.....合同呢?难道你还真跟客户闹翻,通常非得老总出马摆平)
我觉得学生应该可以使用学生版的软件,对产品也是推广,我支持大厂商和政府加大力度打击盗版。但是有些国外大公司倒是不紧不慢地等待时机,要等到中国的民族软件企业无法站起来时再秋后清算,好狠啊……
好了,一些想法突然就冒出来,我也不想太修饰什么,就直接打出来,供大家借鉴而已,如有冲突和冒犯,还请大家不要计较,毕竟天下的程序员都不坏。
如果你要了解我如何产生以上的牢骚,请看: 让我欢喜让我忧