程序员-建立你的商业意识 闫辉 著

1程序员为什么需要商业意识

几年前,当我刚刚认识Fishman的时候,听到他神奇的创业经历,觉得非常不可思议。甚至还专门写了一篇报道发到《电脑报》上,题目是《从程序员到CEO》。不久,Fishman将创建的又一个新公司天夏科技卖给了丁磊的网易。丁磊以原来的天夏游戏开发团队为基础,开发的《大话西游》系列的游戏给市场带来的冲击,完全扭转了门户网站的竞争格局。

尽管当时的网易股票处于极其底迷的状态,Fishman放弃了很多股票而选择了现金,但Fishman从中获取的收益不是一般人所能够想像到的。刘韧也曾经在不同的场合表示过对Fishman技术和商业结合能力的钦佩。记得有一次在Donews的聚会上,我提到了一个想法,Fishman立刻从不同的角度进行了一番分析,并做出了他的判断,尽管对于这些我仍然持一定的保留意见,但他的分析思维和方式、方向给我很大的提醒。这提起了我对一个技术出身的程序员是如何逐渐拥有这些商业意识的关注。

拼音加加的作者廖恒毅也是我很好的朋友。他曾经是《中文之星2.0版》的开发者,曾经担任过微软开发合作部经理,对微软技术有着一种执著的热爱。直到他现在担任佳软公司的CTO,都依然亲身编码,他曾经说过“生命不止,编码不休”的类似话语。然而,当我三年前第一次去采访他的时候,他曾经告诉我说已经停止了拼音加加的开发,原因很简单,尽管拥有了大量的用户,尽管每月有上千元的注册费(这在当时的共享软件中已经算是不错的成绩了),但对于他来说,这样的回报显然不能令人满意。于是将精力完全放在了搭建企业级软件架构方面。

当时拼音加加做了一个非常奇怪的功能,这便是将未注册用户的首页指向了新浪的新闻页面,只有用户注册之后才能去掉这个令人感觉不爽的功能,除了这个功能之外,软件再也没有其它的限制了。尽管后来出了很多的破解版本,但初期的破解往往治标不治本,过一段时间,进行某一个操作之后,首页便有会被修改为新浪的首页。廖恒毅曾亲口对我说过,其实他在防止这个功能被破解方面做了很多工作,他在系统目录中保留了一个备份,随机的过一段时间便会检测一下首页,如果发现被篡改,便会再次修改。这里充分体现了一个程序员的高明和狡猾。

不过重点并不在这里,而是拼音加加所指向的新浪新闻页面,一直以来,我认为新浪是需要为此向拼音加加附费的,但廖恒毅后来才告诉我:“指向这个网页纯粹是因为他自己喜欢看新浪的新闻而已。”

后来,我认识了百度的一位朋友吴京川,他是负责推广搜索引擎推广的,他们有一种可以和软件产品合作的业务,我介绍给了廖恒毅,说不如将拼音加加的页面指向百度,利用一些关键词挣钱。廖恒毅后来对我说:“他在与吴京川聊了一会之后,便发现了另外的一块广阔天地。”

事情的发展是这样的,廖恒毅在将拼音加加的首页首先指向了自己的网页,并把首页放置了一个与百度首页完全一样的搜索框。当然,搜索框中的有一个隐含的参数,这便是用来定义有多少搜索产生付费的功能。而后,他又照抄了百度的网站导航页面,后来被百度的使用者发现之后,提出了抗议,于是他又去抄了另外的一个网址站。

现在,当你再访问加加在线的时候,你会发现这里已经成为了一个小小的门户,每月廖恒毅从中获得的回报在10万元左右,而拼音加加的升级变得更加快速和频繁起来,甚至他们在两个月之内用.NET和C++语言重写了软件。

同样一个软件,之前每月几千元,现在是10万元,这之间的差距仅仅在于一个意识。这个意识便是商业意识。当然,拥有这样意识的程序员也越来越多了,超级魔法兔子的作者蔡旋便在最新推出的版本中修改用户的首页指向了自己的网址站Haokan123。

我曾经在网上与FlashGet的作者候延堂有过深入的交流,作为一个在陕西地区的程序员,他取得的成绩有目共睹。几乎一直是下载领域的明星。甚至在国外的下载站点,FlashGet也一直是最强有力的竞争者。而他自己每年的收入也在百万级,而这一切靠的仅仅是上门的一个大banner,一个小banner和软件发放过程中对3721等插件的捆绑。然而,当我与好朋友小林沟通的时候,他告诉我说:“候延堂根本没有将FlashGet的能量利用起来,其软件的价值也不仅于此。”为了更好的利用这个软件的价值,他所在的265公司在IDG投资后,甚至曾考虑收购FlashGet软件。

讲了这么多,我的目的便是真的希望能够挖掘一下程序员的商业潜力有多大。而这又不得不将程序员与商业意识挂上钩。


1.2缺乏商业意识的程序员

平时,与众多的程序员或者技术人员沟通,我都很羡慕他们拥有的技术,你可以经常感受到他们内心深处那种对技术的狂热和执著。然而,我们又非常遗憾的看到,很多他们引以为傲的技术是国外的程序员开发的,而且技术在不断的发展和进步,有很多程序员在盲目的学习和追随中失去了自我,进入了技术的漩涡。我曾经与一位程序员合租过房子,那是我第一次见到一个人可以拥有如此多的书籍,在床头上摆满了各种技术书籍,高处顶到了屋顶。不过,与我们经历过的大学生活一样,会发现很多书籍都是新的,让人感觉既敬佩又可笑。

很多程序员可能会说:我们不想创业,我们热爱技术,我们希望能够在在公司中一直埋头技术,钻研技术,所以我们不需要有商业意识。当然,可能大部分人不会说这句话,但他的内心也会存在这样的想法。面对这样的观点,我只能说表示同情。因为在中国整个大环境下,能够给这些程序员提供如此的环境的地方不能说是蓬莱的海市蜃楼,也差不多是屈指可数了。除了在高校中的研究机构外,任何一个企业都会要求以市场为导向进行发展。

四通打字机的发明人王辑志曾经写过一篇文章《软件不能在独木桥上走》,讲了他自己的一个亲身经历。一位朋友托他到澳大利亚演示自己所写的一套软件,然而到了目的地后,他发现无论如此也无法成功的演示,回来后向这位朋友报怨。这位朋友很不以为然的向他演示了应该“这样……这样……这样操作就不会出问题。”这让王辑志感受破深,一个程序员规定好的步骤不能出丝毫差错的让普通的用户使用一遍,不啻于让用户在独木桥上行走。这也是其缺乏商业意识的表现。

现在,就来参加一个小小的测验吧,如果你具有一下症状中的两条以上,估计就需要挖掘一下商业意识了。

程序员缺乏商业意识表现为:
*拍脑袋就编程,做出决定
*对解决了一个技术难题而得意洋洋,最后发现用户对这个功能根本不关心
*不经过充足的测试便发布软件
*骂用户笨,讨厌软件出来之后用户的报怨,不喜欢与软件服务人员沟通


1.3商业意识对软件成功的重要性

很长一段时间以来,我们杂志跟踪微软亚洲研究院的发展,也和几位院长和不同的员工进行的交流。在外界看来,微软亚洲研究院是一个冰封的世界,一群技术狂人在随心所欲的创造和发明,他们完全是研究者的气质,仿佛与微软在外界市场上厮杀没有多大的关系。

然而,当你真的走进微软亚洲研究院的内部,了解了其发展的前前后后,你便会改变你的认识。因为,在这里,院长的指导思想,他们的商业意识无时无刻的不在指引着微软亚洲研究院的发展和前进。微软亚洲研究院每定一个技术方向,都需要进行详细的论证,包括市场上有没有需求,与微软现有的产品如何的结合,如何保证微软在未来的几年可以推出更具有竞争力的产品等等。从第一任李开复院长起,他们的工业界经验让微软亚洲研究院就一直沿着商业的意识在不断前进。张亚勤博士曾经讲过,尽管微软亚洲研究院要研究的可能是未来五-十年才会用到的技术,但一定要结合微软公司的发展策略和方向,要能够为微软的长期发展奠定基础。比如微软要在未来的人机交互界面方面需要很多新的技术,于是微软亚洲研究院就在TabletPC技术上做出了很大的贡献,同时还在智能数码笔方面做了很大的尝试,这些技术研究都是在整个公司的大的发展策略下进行的,也唯有如此,微软亚洲研究院才获得了比尔盖茨和其它同事的认同。对于研究院的院长来说,如何在大的框架下面选择好方向就是他们的职责。而现在,随着微软亚洲工程院的出现,更是将这种商业意识贯彻进了产品的开发中。

我注意到,在与已经工作超过五年的程序员,尤其是曾经带领过一个产品或者项目的技术负责人沟通的时候,他们所表现出来对商业意识的醒悟往往让你有深刻的领悟。尤其当做出的产品在市场上遇到挫折的时候,他们却发现原来并不是自己的技术不行,也不是产品开发周期的问题,而是没有充分的考察市场的需求,没有用商业的意识来指导自己做事。

在我采访汉王科技的时候,曾经与三位不同战线的技术和产品负责人一起畅谈,有两位负责人在汉王工作了十年之久,他们用亲身的经历验证了汉王发展中遇到的问题。最初,汉王的核心技术是手写识别,公司创始人总裁刘迎健也是一位非常出色的技术人员,他曾经几十年钻研手写识别的核心技术。但在汉王创立的初期,他们曾经度过了一段非常艰苦的日子,后来曾经有一个非常好的机遇,这就是PDA的兴起,当时恒基伟业的老板力邀汉王加盟,但汉王认为PDA这种产品实在没有什么技术含量,根本不看好,最终只拿到自己的技术授权使用费了事,这与后来恒基伟业所取得丰硕成果相比差距巨大,不过现在看来,随着PDA市场的快速滑弱,对当初的决定是否合适便成为了一个无法说清的话题。然而,汉王后来的思路转变却在市场上取得了不错的回报。比如汉王在拥有手写识别技术之后,开始考虑如何利用这些核心技术做出市场上用户需要的产品。“从核心技术到产品”,这成为了汉王的跨越标志。

名片通和文本王便是非常有代表性的两个例子,其实OCR软件已经出现了很长的时间,拥有这项技术的公司也不只汉王一家,但汉王最早利用这些技术做出了一个在市场上销售火爆的产品。名片通就是为了解决现在大家交流频繁,名片聚集过多,但不易查找的问题。据说,名片通的推销人员打电话给微软公司公关部门的人员的时候,本来根本不愿意理会,但后来听到介绍和看了演示之后,当即购买了数台。一个成本不足百元的黑白扫描仪和一套软件销售的价格超过的千元。

对于文本王,更是如此,最初提出这个想法的是汉王的一位技术人员。他当时表示看到了很多单位中都有扫描仪,但用的人很少,经过研究发现,原来OCR软件的使用是需要比较专业的,首先需要配合扫描的分辨率,而且扫描出来的图片还需要进行校正,尽管这在程序员看来简直就是小菜一碟。但这些操作对于扫描仪潜在的消费人群办公室人员来说就是不小的使用障碍了。于是他提出了对OCR软件和扫描仪的改进意见,这样汉王投入了一个团队进行开发,将OCR软件与扫描仪更好的结合,比如可以自动校正,自动识别,自动输出Word文档等公那过。上市之后取得的效果是令人震惊的,用户的反馈也非常的热烈。

这让我回想起PDA最初发明的故事,一直以创新为理念的苹果公司创造了第一台掌上电脑Newton,但由于体积庞大,运算速度慢,手写识别效果差等问题在市场上铩羽而归。但有一个人从中看到了问题的本质,先从手写软件的识别着手,由于速度慢,识别用户不同的笔迹对CPU运算的速度要求很高,于是他发明了一套输入法,定义了一套“任何字符必须一笔写完”的规定,尽管这对用户来说还需要学习,但学习的成本并不大,而且一旦学会,识别的效果会非常好,再加上其对电脑的功能进行了不断的裁减,只集中到了几个必要的功能上,这样在体积方面也达到了用户需要的地步,这款产品上市后取得了意想不到的成功,甚至从3COM公司分拆上市,这便是PALM。

因此,在一个公司中,作为普通的一个程序员,同样要具有自己的商业意识,这些意识并非是为了考虑公司的经营,并非是为了转向管理,而是为了提升自己开发的价值。

1.4商业意识不如用BusinessSense
我既不是“海龟”,英语讲的也不好。不过,我仍然在这里希望能够用一个英文单词来表明我的观点。因为在中文里面,商业已经被人用的过烂了,再加上国内的这些商业体系的不完善,总是给人感觉不如Business的味道更加纯正。而对于“意识”一词,我更加是认为一直以来被用作政治用词,我们在这里拿来颇有些“挂羊头卖狗肉”的意味。而Sense一词却有一种不可言传的体会,他讲究的是一种感觉,一种感悟。因此,BusinessSense可能更加适合作为我们希望宣扬的重点吧。

微软曾经重金从美国邀请来一位著名的作家,他写了一本书,我们出版社也出了这本书的中文版,其中他讲到一个重要的总结:他认为日本的软件做的是工程(Engineering),欧洲的软件是当作科学在做,而在美国,之所以他的软件产业发展的很好,这是因为他们一直是将软件当作商业(Business)在做。这也成为我写这本书的重要论据。
看到了这样三种模式,中国将要采取那种模式呢?就像公有制、私有制共存一样,中国存在的也是一种混合的体制,既有希望自己开发产品做商业的美国模式公司,也有热衷与外包服务的工程公司,而在各大专院校中,软件不也同样被当作科学在搞吗?如果不是这样,同样开始进行开发的青鸟UML软件,怎会落得这样的下场。

打破技术误区,拥抱商业意识

一直以来,中国的软件产业都没有按照正规的商业市场化进行操作,这一方面与国情有密切的关系。但同时,我们发现,很多成功的软件企业无一不是钻了某些政策方面的漏洞,或者是利用了某个时期的政策而发展起来的。这一方面造成中国的软件产业没有按照商业的规模发展,同时也给很多程序员带来了很多误解。

误解之一是只要埋头写一个好的软件,自己就能够成为百万富翁。从一开始塑造的一系列类似求伯军这样的软件英雄开始,尽管激励了一大批高手进入了软件领域,但这时恰逢整个软件开发的技术进行更新换代,同时软件的开发规模和质量要求也更加高了起来,在这样的大背景下,一个程序员缔造出辉煌显得是那么的无助。成功的归结于机遇,失败的归罪于大环境的恶劣,而恰恰没有考虑的是否一开始就按照市场的规则做事,是否拥有了商业的意识和经验。

误解之二就是中国的市场很大,不必考虑国际市场。直到现在,仍然有一大批人鼓吹中国的市场很大,先把国内的市场作好就可以了。我认为,这简直就像“攘外必先安内”的语调。在中国,唯一几个成功的将软件产品在全球行销很好的就是几个台湾的公司,包括趋势和友立科技。我在与友立科技董事长采访的时候,他很明确的表示,当初开始做产品行销就考虑到了全球,为什么?就是因为台湾的市场很小,所以不得不把眼光放到全球市场。当友立科技还很小的时候,曾经因为触动了Adobe公司的市场,备受打压,活的非常的艰难,而一旦Adobe发现这种打压很难真的消灭到Ulead的时候,他们又祭起了领悟一个法宝:收购。尽管这次收购让Ulead没有机会成为与Adobe那样规模的公司,但付给Ulead的这笔钱让友立科技更好的发展了其它的产品。如果没有在全球上的这种拼杀,Ulead又怎能在图像处理市场上占据这样的地位呢。公司小不可怕,怕的是缩在家里,不愿意也不敢出去。

而程序员也在这个过程中失去了与全球软件开发思想同步的机会,当我们还乐衷与几个人埋头开发小软件的时候,大规模软件开发工程的思想已经在美国传播开来,甚至还诞生了Rational这样的工具厂商。因此,我想说,中国的市场大对中国的程序员来说是个好事,还是个怀事真的是需要好好思量的。我觉得后者的可能性还是要大一些。

误解之三:利用最先进的开发工具就可以做出更好的产品。中国的程序员生活很艰苦,但有一点他们永远都不会最差,这便是他们手中的武器:开发工具。伴随着盗版,在开发人员报怨自己开发的软件被破解的同时,自己也在使用者被破解的开发工具,一个新的版本出来,立刻便会尝试使用,开发人员的机器上安装的永远都是最新的开发工具。于是,中国一批又一批的程序员都变成了脱离某些RAID工具不会编程的“开发高手”。这首先,就是他们缺乏商业意识,对知识产权的不尊重,在这种情况下,你能够要求他们深入学习和掌握手中的工具吗?我在采访一些美国的程序员时,他们很多人还习惯直接用最简单的开发工具写代码,因为公司没有那么多资金用来升级开发环境,但这也造就了他们扎实的编程基本功。而国内的很多程序员只能够被牢牢的捆绑到一个平台上,当Linux出现的时候,又有多少人可以迅速的从Windows平台转变到过来呢,尽管在很多人看来,这两个平台的开发在底层上其实并不多大的区别。

其实,程序员拥有商业意识并非让他们脱离技术的轨道,而是对其人生的更好补充。有了这些商业意识,在公司可以更好的理解公司发展的策略,做产品可以更好的做出成功的产品,自己创业可以更好的走向成功。

1.5技术发展背后的商业驱动力

在技术的产生和发展过程中,它与商业的关系属于相互作用,而且在一定阶段,要么技术占据主导,要么商业占据主导。

应该说,互联网技术的产生是军方发展过程中的产物,但是一旦这项技术民用化之后,便大大促进了商业的进展,那个时期,技术是商业的驱动力。看看当时硅谷的发展就可以明显感到这种现象。最初被追捧的互联网公司往往都是技术型的公司,这类公司的股票成长速度快的出奇。Netscape就是一个特别著名的例子,当硅谷投资人吉姆克拉克看到浏览器这一个市场的时候,便收罗了Netscape的开发团队并力图使之上市。当时吉姆克拉克简直就成立硅谷风险投资商的太上皇,运行谁投资这都是要排着队的。当时,曾经因为第一次给吉姆克拉克投资占据太多股份的一家风险投资商因为被克拉克拒绝对网景的投资而心理崩溃,进而走向了自杀。这时,技术是指路灯。

而华人陈丕宏创建的互联网企业最初也是以技术为核心,在上市初期备受股市追捧,然而随着互联网技术的普及,随着客户在技术上的投资逐渐衰减。已经成为商业对技术进行反作用了。

现在,很多公司也表示,最近没有什么特别激动人心的技术出现,而且越来越多的企业不再仅仅注重几个IT技术的新名词,而是真的问到,到底这些技术能够给自己的业务带来一些怎样的改变,能够如何提高公司的盈利。

通过IBM这家大公司的转变,我们也能够从中管窥到技术和商业之间的驱动交互过程。IBM在五六十年代,投入了几十亿美元研发大型机技术,当时IBM就代表着技术和实力,公司在研发方面的投资超过了其它所有公司的总和,而且所有的商业都在随着IBM的新技术不断向前发展。然而,随着PC机器和小型工作站的兴起,IBM的大型机策略遭受到了挫折,而且他们的技术已经不再成为控制客户的法宝。在各种外忧内患的干扰下,IBM的市值一度下挫至谷底。这时,他们请来了卖饼干的郭士纳,郭士纳在考察了客户的需求之后,提出了整合IBM的技术资源,给客户提供整体解决方案的策略,这时已经开始由完全有IBM主导技术发展开始走向给客户提供适当的技术解决方案。而且,当时恰逢互联网的热潮,伴随着电子商务技术提供商角色的宣传,IBM展现了一个技术供应商的地位。逐渐走出了低谷,并创造了一系列的辉煌。在郭士纳离职之后,新任CEO将他的策略再次推进了一步,这次不再说其它的,而是修改为“随需应变”。其实,这也就是按照客户的要求做事了。IBM第一次将满足客户需求,而不是技术领先作为公司的整体策略。也间接证明了现在这个社会,已经由原来的技术驱动转变为了商业驱动。


而且,很多商业需求在主导了某些技术的产生和发展,比如软件外包和需要的网格技术就是一类,客户已经不再愿意自己主导IT,而只是希望关注自己的核心业务,于是IBM看到了这点,将很多IT技术支持服务接手了下来,同时,为了更好的支持这种业务类型,IBM将自己的研发方向放在网格技术上,做了很多工作和努力,然而,在执行了一段策略之后,IBM又发现其实要满足用户的这种需求并不是一件容易的事情。在技术上需要跨越的障碍远远超过老板的想像,于是不得不重新整理自己的思路,提出了踏踏实实整合自己产品和技术线,按照行业进行资讯和技术服务的策略。不过,IBM还是看到了一点客户的需求,这就是在国外大部分的系统之间开始需要进行整合,于是IBM将“随需应变”转变为了更加实际的“整合策略”,这样收购的产品线统统都为这个统一的目的而服务了。

对于微软这样的公司来说也不例外,在开始,从Dos时代向Windows时代的转变以及Windows95的发布,对于全世界来说,它所提供的技术进步让所有的用户感觉到了一种鼓舞。每个新版本都有那么多的新技术,新特性目不暇接。然而,现在Windows产品虽然也经常可以看到很多新技术的宣传,但用户已经好像对此麻木了许多,就像比尔盖茨如此看重的Longhorn也不能勾起大部分用户的胃口。没办法,时代已经不同了。用户已经厌倦了跟随在这些技术厂商的屁股后面前进了。类似苹果这样的公司,虽然也在技术上有很大的技术,但在宣传方面,好像更热衷于用外在的设计来吸引用户的关注。

要说唯一对技术保持热情的群体可能就要算开源社区了。在思想精神上的刺激下,很多软件产品保持着飞速的版本更新和发展,但最近一段时间,这样的步伐也开始慢了下来,更多的人开始关注如何利用开源来做出自己的商业模式,诸如Jboss这样的团队就更加希望按照客户的需求来定位自己产品未来的发展,这样的产品是在一个商业人员的带领下发展,而不再是在一群技术狂人的掌握下飞奔。

我采访过很多家国内的软件企业,他们也开始将宣传的重点从原有的技术转向到满足客户的要求。趋势科技就是这样。而类似点击科技这样的公司,在创立之初,相信王志东认为凭借自己的影响力和对技术的把握,肯定可以吸引一大批客户跟随自己的协同软件平台,但事实上,商业前景并不清晰的点击科技在技术推广方面遇到了很大的挑战,于是不得不投入了很多的精力在自己的平台上先打造出一系列能够满足用户使用的解决方案出来,至于以后这项技术的推广和发展,实在不是一件容易的事情。

我们经常使用某些共享软件,其实好像这些软件整体的技术并不出色,而且与很多大型软件相比更是弱不禁风,但就是有很多应用可以通过这些小的软件更好的实现,比如Photoshop其实理论上可以实现任何一种图形和图像的设计和处理,但Ulead却对一些初学者和简单的图像操作提供另外的一种方式,而类似图像转换这样的功能更是让一大批小软件在市场上获得了回报。

MacroMedia的Flash制作产品可以制作各种各样的Flash,无论是按钮和程序都是可行的。但仍然市场上有很多简易的flashbanner生成软件,比如把文字直接转换为flash,或者把Video转换为Flash,这些技术其实Flash本身都内置,但用户希望以更简单的方式来使用,于是用户的需求就代表了商业的驱动力,驱动着一些技术向前进步。

如果无视这种变化,而固执的坚持技术论,有可能会遭遇到挫折。在国内与普元公司的CEO和CTO沟通的时候,我们了解到,其实国外很早便有公司做同样类似的产品,也就是能够从软件初始开发的时候就用构件技术搭建,但到现在为之,很多公司最终失败了。谈及失败的原因,黄柳青表示,其实并不是他们的技术做的不好,而是因为美国的主流客户应用不在这个领域,大型系统已经发展多年,要重新用一套新的技术和方法构建,其中的难度是可想而知的,而且开发这样一套系统需要投入巨大的人力和物力,很多公司没有等待到那一天便支撑不下去了。但是,在中国这样的系统是有其市场空间的,因为中国的大型系统还处在发展的初期,如果能够有一套提高开发效率的体系,自然可以吸引用户,同时国内开发这样的产品,其投入比国外相比还是少了许多。总之,综合这样很多因素,我们可以看到商业对技术的反作用力现在占据主导地位。

然而,这并不能说明,未来不会再重复技术推动商业的时代出现。如果未来出现了更好的开发方法,或者有人发明了更加优异的体系架构,真的有可能再让我们技术人员感到骄傲的一天。有人说,现在的硬件体系比十年前复杂了10倍,但软件比原来的复杂了300倍,这对于很多技术人员来说,能够寻找到解决这个问题的技术方法无疑就是“银弹”。

在这样的时期中,程序员不要埋怨自己生不逢时,也不要对满足客户的需求心存芥蒂,充分的拥抱用户的需求吧。或者,当我们有一天从用户的需求中又再次挖掘到了技术的新驱动力。

第二章与客户沟通建立商业意识

创立威速科技的清华毕业生在开始的时候,一个设计的方案获得了香港某投资机构的青睐,获得了一定的天使投资基金。于是他们认为自己的产品肯定会受到用户的喜爱,带着这样的想法,他们将自己的视频会议产品1.0版本展示给客户。客户看了之后说:“你这个产品微软的NetMeeting不是都提供了吗?你们和他们的有什么不一样?NetMeeting是一个免费的产品,我为什么要选择购买你们的产品?”这些问题当时曾经让总经理叶滨无言以对。后来,我们终于理解了,原因一个技术和产品之间存在着如此大的差距,让用户购买是需要提供足够的说服力。即便这样,他们仍然在更新的几个小版本之后一套产品都没有销售出去。直到2.0版本出来后,提供了多方混音会议,支持各种文件格式的白板功能等增强的功能,这才获得了用户的初步首肯。到现在,叶滨说:“这是我创业中的转折点。”

而现在,当你在创业之前就了解到了这些必要的决定因素的时候,再去衡量一下自己的方案。你所面对的客户群是谁?他们为什么要使用你的服务?他们会为哪些服务付费?市场上有没有类似的产品?他们的功能怎样?缺少哪些客户需要的功能?未来的竞争态势如何?等等问题,只有当你把这些因素统统考虑过一遍之后,在返回头衡量一下自己的出发点,或许那时你将对自己的产品有了更加清醒的认识。

MagicC++是两位程序员的作品,它是一款在Windows平台可以可以多人开发Unix程序的开发环境,当初创始人之一的张涛在电信部门工作的时候便深受Unix开发环境不便之苦,而另外一位创始人戴晓东同样也经历过这样的问题。于是两个人辞去了自己舒适的工作,埋头到了广州一个城乡结合部开发软件。两个人做了将近两年,在这过程中,他们没有任何其它的娱乐和消遣,写代码、吃饭、睡觉就成为了生活的全部,到最后两个人的神经几乎在紧绷中崩溃。我们在这里的确是要为他们对技术的痴情而致敬,但返回头了解一下他们当初所做的决定,也比较容易发现其中存在一些冲动的成分。用周鸿?的话说:“这个市场是一个窄众市场,用户群很小,而且中国的客户还没有为开发工具付费的习惯,因此建议在国外销售。”当然,现在MagicC++也在稳步的发展,但当初如果能够更好的考察一下市场,或许可以取得更好的成功。

开发的软件不是程序员自己用的

曾经有人描述求伯军当时编程水平的厉害,看到一个软件,觉得不好用,于是自己动手写了一个。估计很多编程高手都经常会产生这种冲动。然而,当我们仔细衡量一些他们的动因时,会发现原来他们是要给自己写软件,而不是写给用户使用。

记得当时金山推出“用户使用体验实验室”的时候,还颇为骄傲的宣传了一把。因为,从中可以观察用户的使用习惯。我想这可能是雷军从各种媒体的报道中发现了这样一点:有公司将用户使用软件的一举一动都记录下来,然后分析用户的使用习惯,进而改善用户的使用体验。在VB之父的书中,也阐述重要性。

然而,对许多程序员来说,仍然无法站在用户的角度看软件的使用。我曾经使用过一套网上调查系统,系统的功能颇为强大,可以做出各种层次,可以支持各种数据类型的调查。但令人伤心的是,整个系统的安排和命名极其混乱,我想也只有开发人员才能明白为什么要起那样的名字吧。当输入数据后,如果出现错误,也会返回一些令人丈二和尚摸不着头脑的提示。我每次使用,都要极力的回忆其使用方法,即便如此,也不能保证一次成功。这让我对整个系统充满了恐惧感和不信任感。在CSDN的新闻后台中,一个非常简单的功能,但用户提交新闻后,应该可以给出新闻的生成页面,然而CSDN的新闻后台给出的却是一个修改页面,要想查看,需要到前台访问一个很长很长的动态地址才能够获得,这样一个简单的修改竟然经过三年的时间才修正过来。因为每次提这个需求的时候,开发人员总会说很忙,既然能够实现整个功能,干吗还要修改。

现在担任瑞星高级副总裁的IT资深人士毛一丁也讲述过他的亲身经历。当时,珠海金山在开发WPS97的产品,请毛一丁前去做最早的用户提建议,毛一丁非常仔细的使用过后,写了满满的一页意见,但很多开发人员看后,不以为然。比如,毛一丁提出为什么没有很常用的“字数统计”功能,开发人员拿过鼠标,经过一番操作,把结果显示在屏幕上,然后说这不是可以实现嘛?而对另外一些功能,开发人员认为自己很煞费苦心的做到了鼠标右键上,但毛一丁很尖锐的指出大部分用户是不知道使用右键的。所以说,尊重用户的使用习惯,对于程序员来说,这是必须要上的一课。

2.2玩技术与利用技术

让程序员感到最为骄傲的事情是什么?那肯定是自己做出的技术在别人的面前进行炫耀。就像当初卡马克做出新的三维游戏技术时,整个世界都为之疯狂,这是一个技术人员能够达到的最终幻想。不过,对大部分程序员来说,这样的高度是无法企及的,但这并不妨碍他们来show一下自己学会的技巧。

我认识一位在Dos时代的技术人员,他在别人只会用拼音输入法的时候学会了五笔输入法;在别人只会用UCDOS的时候,他可以解密WPS文件,在别人会用CCED的时候,他可以拿着打印的长长的用C语言写的Menu的实现代码炫耀。然而,到了今天,仍然对自己掌握了某一个技术感到沾沾自喜。其实,这样的技术人员应该也不在少数,甚至有些人只不过五十步笑百步罢了。

这并不能怪他们,因为在最初软件开发进入中国的时候,各方面的技术资料少的可怜,尤其是当Dos向Windows编程过渡的时候,微软有很多API并没有公布,在那个时候,可能一个产品的核心依靠的就是比别人多了解一个API或者一个钩子的机制。蒋涛曾经讲过金山词霸的开发,其实只不过是因为他们直到如何利用一个钩子机制从程序中截获信息并进行翻译的处理,但就是这个技术,事实上造就了如此大的一个产业,也造就了几位的百万富翁。而对王志东来说,也是靠剖析了Windows系统中的DLL文件实现了对Windows平台的汉化,并由此诞生了一个畅销的中文之星软件。而瑞星的崛起也是因为刘旭将流行的Word宏病毒的查杀机制做了出来,便一下子打开了市场。那个时候,这些人被称为高手,因为他们掌握着某些关键性的技术。甚至可以说,不一定是技术,有可能只是技巧。

然而,现在随着互联网的兴起,技巧的价值变得越来越小,遇到一个难题,用搜索引擎搜索一下,一般都可以找到答案。实在不行,到论坛中发一个请求,也经常会有高手告诉你答案。一个人掌握某种技术技巧变得越来越不重要了。说到这里,我们可以讲一个小插曲,这便是微软最早评选MVP(社区最有价值专家)的时候,在CSDN上根据专家分来进行判断,也就是谁回答的问题最多,谁就是专家。当CSDN通过检索把名单给微软之后,在第一次见面会上,令大家跌破眼镜的是,第一名是一个女生,而且她不太编程。当询问她经验的时候,她说每次看到问题,她就会先用搜索引擎搜索一下,如果中文找不到,那她就用选择一些关键词搜索英文的网站,这样一般都会有人回答,这样答案就出来了,而且很多都是英文的答案,这也让很多网友感觉这的确是一个高人,因为这些问题都是用英语回答的。了解了这一切,令人恍然大悟,除了看到一些程序员的懒惰之外,也可以感受到技巧已经不在称为衡量一个程序员水平高低的门槛了。

这个时候,考察一个程序员的价值除了其技术的深度和广度之外,是否能够看到技术之上的商业价值,是否能够拥有商业的意识便变得更为重要。这时,如果作为一个程序员,仍然整天为了获得了某个技巧而炫耀的话,相信无法取得更大的成绩。

玩技术还有一层含义,就是迷恋最新出现的技术,一旦有了新的进展,就要下载尝试一下,或者安装一下玩玩。曾经有一次我们被某公司邀请参加他们的一个技术研讨会。会上有两组开发的团队,一组是原有的技术开发团队,另外一组是最新组建的,而且要准备以.NET技术进行开发,当时.NET还是一个新兴的技术,有人给戴习为老师推荐了一位工程师,这位工程师号称对.NET技术很精通。然而,当在会议上这位工程师讲述了自己准备用.NET做产品的构想时,原有的开发团队问到了很多系统设计层面的内容,这位工程师几乎无法应对,因为他只是玩了.NET技术,对于这样的技术在商业上的应用却没有经验。会后,戴习为老师也表示:“尽管他对微软的.NET技术有一定的了解,但的确经验还缺乏很多。”后来这位工程师发展的还不错,进入了微软开发合作部,专门用来讲述微软最新出现的技术,想来这也与他自己的爱好挂上了钩,也是一个不错的选择。不过,这样的职位毕竟只是少数,对大多数程序员来说,玩技术并不能给他带来更高的价值。

前两天,这位工程师又在自己的blog上提到,他用微软最新开发平台内置的屏保程序制作了一个自己的屏保,演示给同事看,同事感觉很新奇。当我看到这条Blog,感到一丝苦笑:玩技术而已!

玩技术的另外一个后果便是容易迷失方向。在Dos时代,技术的种类很少,程序员面前的技术方向也很少,玩也容易玩出深度。但随着Windows平台,尤其是网络出现后,各种技术层出不穷,即便是水平再高的程序员也很难兼顾几种技术领域。如果不能够对技术发展的来龙去脉有深入的了解,就很容易限于技术的表面理解,也就很容易造成程序员不知道如何选择要继续下去的技术,丢了西瓜,拣了芝麻。于是会出现论坛中“到底是什么技术好,到底应该选择那种语言的疑问。”按照大部分过来人的解释,其实只要选准一条技术路线,真正的钻进去,自然会取得好的效果,因为不同的技术之间是相通的。微软工程师孙展波在回答程序员“做技术到底应该做深还是做广?”的疑问时,毫不犹豫的表示:“应该做深,而在广度的方面每周抽出一些时间了解一下就足够了。尤其是在现在互联网如此方便,网上信息量如此庞大,专业类网站密布,检索极其方便的情况下,想要获得任何资源都是一件并不复杂的事情。”

而且玩技术还有一个结果,就是容易忽略用户的需求。技术酷是一件很棒的事情,但这并不能保证持续的生存。尽管硅谷曾经以看哪个公司做的技术最酷而吸引程序员的关注。比如最初的是苹果的技术最酷,后来出现了Netscape这种做浏览器的公司给人感觉技术很酷,随后SUN公司推出Java语言的兴起,Java技术变得很酷,但现在,Google搜索引擎成为了最酷的技术。因此,技术本身仅仅注重酷的感觉是远远不够的。趋势科技的创始人张明正和陈怡蓁女士合著的《挡不住的趋势》一书中便提到,开始趋势的文化是要做最酷的技术和产品,但随着公司发展到一定的阶段,他们发现仅仅这些并不能保证公司的持续发展和客户的认同,而真正了解和分析用户的需求才是更重要的。“我们公司将从一个酷技术的公司转变为满足客户需求的公司。”,这是他们十多年做公司的总结,而处在软件公司中的程序员自然应该从中得到某些启示。

2.2避免坐井观天

美国的民主党和共和党两大党派,双方竞争的时候相互攻击乎,但这并不妨碍他们互相接受对方的某些观点和主张,事实上,在执政的时候,这两大政党的很多作法也都是一样的。但对于技术领域的程序员来说,很多人却将不同的技术看做势如水火:我是Java程序员便鄙视.NET的一切,我在微软平台上开发便不了解任何Java技术的发展。

程序员对技术的爱狠本来是一件非常常见的事情,但如果硬要把这种感情夸大的表示出来,或许将来给自己的也是难堪。曾经以一篇《写程序不如卖鸡排》短文备受瞩目的台湾地区著名的技术作家蔡学镛最初是一位Java坚定的支持者,在他《Java夜未眠》中,便对.NET技术进行了一遍又一遍的讥讽,诸如“Java是.NET的爹”等语言表明了作者的鲜明态度。然而,就在书发表不到一年,蔡学镛表示,“了解.NET越多,越觉得这也是一项了不起的技术,它有很多的独创和更高明之处”这样的观点,逐渐的,他转向了.NET平台,成为了这个平台上的技术作家。如果我们说一个人的世界观可以改变的话,程序员的技术观当然可以改变,但这种改变中最好不要给人留下很多“坐井观天”的言论。

国内某Java网站的站长也是一位Java的死党,有一次,我们组织了不同领域的专家一起座谈,一位是.NET的专家,一位是做.NET移植Java技术的专家,这位站长也参加了,但可能是由于经验和知识的缺乏,在讲述的过程被批驳了一番,这让这位专家十分恼火,于是回去后在自己的一亩三分地上大骂那位.NET的专家。我也认为,这是一种坐井观天被揭露后的恼怒。而且,后来这位专家还发生过另外一件事情,这就是为了显示自己支持开源,于是也在SourceForge上提交了一个自己做的项目,但却遭到了一堆人的狂骂,原因是他开源的项目竟然是用Jbuilder写成的,在国内可以盗版Jbuilder,但在国外这是需要很大一笔钱购买的开发工具,一个不懂得开源内涵的人来做开源的事情,是不是坐井观天?

即便在我们编辑部内部也发生过这样的事情,当时杂志曾采访了一家做中文分词技术的公司写了一篇报道,但一位技术编辑以自己认识在做分词技术的人员为理由,坚决认为这个采访是夸大的,他做的并不是最好的技术。在这里,他的评判标准是因为原来他接触过一个做这样技术的人,感觉做的很棒了,已经不可能再超过这种技术了。岂不是,在市场环境下,这家做中文分词的公司早已经超越了单纯的中文分词算法技术,他们已经在用工程化的手段提高分词的效果了,单纯的技术层面的比较在这家公司的眼中只是产品化的一个方面而已,更重要的是以面向市场,客户为导向的方式来做技术。连IBM原软件中心的总经理,现任中兴公司技术副总裁都承认这家公司在中文分词技术上是最领先的,作为一个普通的技术编辑,又怎能拿着自己坐井观天的想法来评判呢。

技术是互通的,但同时又是有疆界的,面对自己不熟悉不了解的技术,谦虚的听是最好的方法。而凭借自己模棱两可的了解便做出谁的技术好,谁的技术不好的作法是需要不断修正的。

你可能感兴趣的:(开发工具,java,操作系统)