有感于“以复杂性为生的行业”

07-04-24 lgx522
    

Rod Johnson在“without EJB”中说了很多真诚的话,其中就有“以复杂性为生的行业”这样的说法。

说句实话,大多数B/S系统用asp、php就可以轻松搞定,而大多数C/S系统用传统的VB、PB、Delphi也很容易完成。硬件要求低,开发周期短。也就是说,90%的问题都可以用这些简单的技术解决。

可是,asp、VB太easy了,easy的东西自然就不值钱了。于是国际巨头们盯住了那10%,声称必须运用新一代的高级技术,如J2EE、.NET等等,可以轻松解决所有问题。新的价值链得以产生,巨头们又开心了。而程序员们怀着极大的期望投入新一轮的技术竞争。但结果是,为了那10%的复杂问题得以较容易地解决,我们把原先那90%的简单问题变得复杂。这正是笼罩在软件业头上的一道魔咒。

本人原先一直是新技术的狂热爱好者。好似一个新技术的追星族,精疲力尽之后才明白新老技术的共通性。其实做应用系统,你是用asp还是J2EE并不重要,重要的是你对业务的领悟能力和对技术的运用能力,而这种精通的功力是需要很多时间及经验的。有些业务是该重型武器,你得上J2EE;有些业务却是asp这样的小刀来得顺手,不可一概而论。asp用得精纯,也可以做到相当高的稳定和性能,以至于好的扩展性和可维护性;而生手弄出的J2EE,很多时候跑都跑不起来,再大的口号也是白费。

总之用什么技术并不重要,重要的是你熟不熟,精不精。整个IT技术圈子如果不能有这样的共识,就只能活跃着一大群满口新鲜术语的菜鸟,搞出一大堆费钱费力的豆腐渣工程。而国内的IT界也只能在这种烂泥潭中挣扎下去。

一个雕塑家好不好,没有关心你用的是凿子还是激光。大家评价的标准是你的作品好不好。

同样,软件好不好,也不应看你用的是asp还是J2EE,用的是过程式方法还是OOP。唯一的标准应该是软件产品本身的质量,即稳定、高效、设计合理。而程序员的价值,也不能以运用什么技术予以衡量,而应以分析解决业务问题的能力而定。只有这样,软件界才能走上良性发展竞争的道路。

    

banq
2007-04-24 17:20

很不错的文章.代表不少程序员的心声.

而程序员的价值,也不能以运用什么技术予以衡量,而应以分析解决业务问题的能力而定。只有这样,软件界才能走上良性发展竞争的道路。

这句话很正确,关键就是可操作性,用什么尺度衡量? 我的意见是:如果不用具体技术衡量,那么就是使用设计思想.

lgx522
2007-04-25 10:16

非常赞同banq的说法,应以“设计思想”来衡量。

每个技术时代,都产生了很多精品软件,出自高手或大师们的精心磨砺。从C、C++、VB、ASP、PHP到JSP、J2EE、.NET,全都有了不起的精品。不论用的是什么技术,全都是经过精心设计,反复磨练。这样的精品,历经时代的考验,老而弥坚。

所以身为程序员,万不可浮躁。实事求是,精益求精。无论做什么技术,不求多,但求精。在此与诸位共勉。