搭建电子商务技术平台的策略
我们搭建技术平台的策略就是成熟的架构+创新的扩展。
面对不断变化的IT技术,如何能够既要保证从容有度,与时俱进?又要避免狗熊掰棒子,浪费精力,让我们一无所获,两头挨巴掌?
用户需要有成熟、稳定、可用的软件,不会太care你的技术。
这个最低的要求,我们也很难满足。
Web2.0的风潮来了好长的时间,却对于软件开发人员来说,似乎无动于衷,最多知道几个名词,掌握一点ajax的技术。
我们设计应用是..?
仍然是单板的导航设计,
仍然是点击N次,靠着偶然的奇遇,才看到自己最关心的内容,最后发出感叹,我操!原来还有这么个功能!。
仍然是蹩脚的alert和无法回退的界面。
仍然是太多的选择,
仍然是粗鄙不堪的操作界面。
用户用的不爽的时候,仍然是沿用者老套、低效的反馈机制。
我们测试时,光功能性的bug, 都迎接不暇,别说有针对性的可用性测试。
但是我们的技术的确在像走马灯一样变化,struts1, struts2, freemarker, hibernate, ibatis, ejb2, spring, seam, ejb3, ESB.
那我们自问,学习技术的目的是做什么?
1)有一个好的就业机会
2)Productivity 。
3)用户体验
4)其他
注意这是个排序。
第一个,很正常,现在招个爱学习的开发人员,很不容易,应该鼓励。但方向要正确,浪费时间比浪费money更要命。
重点说一下第二个。
不管技术新不新,我们从未知到已知,是一个学习曲线,有高有低,如果是团队的群体行为,有的人掌握的好,有的人差。不管怎样,第一次,总是痛并快乐着。有是代价会很高,我们需要做衡量值不值。
我经历过delphi的VCL,OWL, VC的MFC, AWL,到BS时代的MVC框架,struts1到2,spring, hibernate,ibatis。
我的观点是,技术上注重积累,成熟的技术和不断积累的知识、资源,庞大的用户群和强大的开发社区,才是提高productivity的根源。
只有能够从开发思想的层面上改变的技术,才值得去学习。
我观察到,有两个C(continuous和contribution)机制的技术框架、平台、应用,总是能够在短时间内,超越其他同类竞争,爆发出很大的能量,同时潜力也不可低估。
举几个例子:
1)首推PHP中的word press, 几年了,数不清的plug-ins,其之所以紧跟潮流,就在于不断有新的开发社区contribute的blug-in产生。每个产品经理,都应当把word press作为一个现象来研究。类似想wordpress学习的商业软件产品公司有,Sugar CRM, Salesforce等,都是靠社区生存的。
2)eclipse. 同样是基于plug-in的平台,有多少开源的、商业的组织、团队、商业公司在contribute,围着它打转转.
3) spring, [...]


