5. 对软件行业和程序员职业
在这一篇中,作为总结,想发表一下我对于中国软件行业以及程序员职业生涯规划的看法。
一般,我们认为这个世界上存在着工业、农业和第三产业。第三产业中,以服务业为人们有最多体会。那么,软件应该算作那个产业?一般传统认为,软件行业属于工业。
一般来说,软件按照其最终用户的不同,分为两种:面向个人用户,为个人提供各种服务或者娱乐的软件,以及面向企业用户,主要为企业提高劳动生产率,降低成本的软件。
因此,当我们讨论中国软件行业的时候,我认为有必要把生产这两种不同软件的行业分别讨论。
首先,面向企业用户的软件,我认为,从本质上来说,是属于润滑剂产业。也就是说,此时,只依靠软件本身,是无法产生任何利润和价值的,软件必须通过依附在某个传统行业身上,才能够体现自身的价值。举例来说,不论CRM也好,ERP也好,还是DB,OA等等一切应用于企业的软件,如果企业本身经营困难,生产汽车的卖不出汽车,生产电器的卖不出电器,那么软件再好,信息化再强,面向困难企业的软件也一样不会给软件企业带回利润。因此,传统企业经营状况的好坏直接决定了面向企业软件的市场的大小。
也正因为如此,虽然目前不论在全世界还是只在中国范围内,面向企业用户的软件行业的市场和总产值,要远远超过面向个人用户的软件,但是就局限于中国软件行业而言,至少在短期内,面向企业用户的软件,我认为并没有前途。
是的,我知道如今响当当的软件公司都是面对企业进行服务的,整个软件市场,特别是e时代排头兵美国的软件市场,其绝大部分都是由面向企业的软件构成的。如果面向企业的软件没有前途,那为什么作为我们的榜样,我们的前驱,处在世界最顶端的美国是这个样子的呢?
很简单,因为那是美国,不是中国。我认为,先进的规则、方法,思想、观念,尽可以先简单照搬,有了实践经验之后,再进行探讨和取舍。但是,对于奋斗的步骤、过程,目标的设定,一定要结合自己的实际情况来决定。
我们知道,市场规模的大小,市场需求的大小,直接决定了产品的生产规模、成本和前途。我们无法想象,一个需求量长期为100的市场,能够容纳10个以上的生产能力为10的企业蓬勃发展。
面向企业的软件,其市场就是企业对于信息化的需求。而美国面向企业的软件市场,就是建立在世界第一,占全世界经济总量30%以上(具体数字记不清了,如果有错,请指正)的经济实体的基础之上的。同时,基于其商品经济的发达,美国企业对于信息化的需求可以说是全世界最强的。因此,美国才能拥有全世界最大的软件市场,拥有全世界最多、最大的软件公司专为企业服务。
而对于我们来说,社会上生产实际产品,满足人民真正需要的企业的经营状况决定了整体经济的形势,软件行业只能顺从这个形势而不是相反。目前中国正处于整体的通货紧缩,并且在可以预见的未来内尚看不到好转的趋势,整个社会的生产处于一种整体的生产过剩状态。并且,我国的商品经济尚处在极不发达的状态,企业对于信息化的要求几乎可以忽略不记。在这种情况下,只有极少数的企业,比如一些垄断机构,一些经营状况很好的特异分子,或者基于很特殊的原因,比如国家对于信息产业的扶持,电子政务的推行,才有对于信息化的需求。整个软件市场小的可怜。
与此相对的,则是全国上下,多如牛毛,什么都能做,什么技术都精通,敢把牛皮吹得比神州五号还高的大小软件公司,在小的可怜的软件市场上进行恶性竞争。
因此,我认为,指望依靠面向企业的软件行业,来达到人们所期望的所谓“作为支柱产业,拉动整个国民经济发展”的目的,恐怕是不现实的。面向企业的软件行业不可能脱离和超越整体经济形势,它的润滑剂的性质就决定了它只能和整体经济形势一起前进,一起衰退。
面向企业的软件在中国难以发展的另一个原因是,发达资本主义国家的人力资源成本很高,因此使用软件的相对成本较低。而在中国,人力成本极低,用不用软件,在成本上几乎体现不出什么差别,因此如果不是出于别的原因(政府推动,企业喜欢求新),一般的中国企业很少会有主动使用软件的热情。
这里附上一个从前一个投资人对于我的某个想法做出的分析:假设某经销商每年产生14600张发票,他雇佣4个人为他处理发票,平均每人每天处理10张,假设每人工资为2000元/月,一年的工资为96000,也就是说,如果改用软件来处理发票,该经销商所愿意付出的成本不会高于96000元。也就是说,假设半年开发完成这个软件,每个月的开发成本不能超过16000元,除去运营成本,这些钱能雇几个程序员?软件公司又能得到多少利润?96000元,能开发一个什么样的软件,大家心里清楚。不要觉得处理发票简单,其实际的过程可能是很复杂的,对人来说可能不难,而软件来做想做到不出大错就很难说了。有兴趣的话,大家可以自己找美国的例子进行分析。
并且,就算以美国自己的形势来说,IT产业的增长必然放缓,不可能再出现前几年的高速发展。为什么?一开始,人们都以为信息化是点石成金的魔杖,无理智的追捧促成了IT产业的大发展。而如今,很明显,信息化并不是上帝。
人们在最初实现信息化的时候,的确得到了极大的好处,比如,海量的数据由文件柜里变到硬盘里的数据库中,这是革命,是质变,不论付出多么大的代价,都能够获得相称的回报。但是,随着信息化的逐渐发展,现在,IT整体的发展趋势是在精益求精,是在原有的基础上去追求更快的速度,更高的效率。这当然是需要的,但问题是IT的技术发展速度远远超过人们的需求,在很多领域里,对于更先进的IT技术的追求,已经变得没有实际的意义。打个比方,当初在DOS下编程,往往需要优化程序,提高程序运行的速度,但是,后来的Windows编程,人人都知道很多地方优化不再那么重要,因为用1秒还是2秒画出一个窗口,效率差100%,但对于用户来说,几乎没有意义。从经济学的角度来说,对同一领域持续的投入,其边际效益递减,即越到后来,你投入相同的资金,得到的回报是越来越少的。对于信息化的投入也是如此,只不过,由于信息技术极高的发展速度,使信息产业边际效益递减的效应来得要远远超过其他行业。
因此,目前,信息化的发展只是量变,企业对于信息化的投入必然因为收益的越来越少而同样呈下降的趋势。不要被站在潮头的IT巨头们迷惑了双眼,信息化的发展是不会单纯随着他们的指挥起舞的。
综上所述,我认为,在可以预见的未来内,面向企业的软件开发前途有限。
但是,在这其中,有一个特例。那就是为国际软件产业提供外包服务。有很多人瞧不起软件外包服务,觉得那只是为别人做苦力,自己掌握不了核心技术,终究不过是被人利用。这些并没有错。但是,目前中国软件产业,最缺乏的,实际并不是技术,而是资金。如今IT产业的技术进步,实际上都是和成百上千万的资金投入联系在一起的。没有资金,是不可能研发出真正先进的技术的。而软件外包服务,是目前来源最可靠,最稳固,能够获得资本原始积累的途径,同时,还能够锻炼和培养大批的专业人才。
因此,我认为,中国软件产业当前的出路之一就是大规模的软件外包服务,先期积累资金和技术人才,做外包为了有一天不做外包,在有了足够的资金、技术和人才积累时候,才有可能研制自己的技术。
特别是,目前日本软件外包业务正方兴未艾。对于美国客户,我们比不过印度人,但是对于日本客户来说,印度人是无法和我们竞争的(一个中国人培训几个月可以看懂80%的日文文档,印度人?算了吧)因此,配合当前日本制造业的整体输出趋势,对日的软件外包业务是大有可为的。
让我们再来看面向个人的软件开发。几年前,以金山词霸的降价为标志,一般认为国内的消费软件市场已经事实上灭亡了。我赞同这个论断。互联网和自由软件运动的蓬勃发展,编程技术的进步,决定了对于软件公司来说,小型的消费软件开发注定是一项事倍功半的事情。
但是,消费软件并不是面向个人的软件的全部。我认为,中国软件产业当前除去外包业务的第二条出路,正是面向个人的软件开发。
随着科学技术、社会的进步,人的欲望和要求是在逐渐增加的,并且这种增加是一种单调上升的过程。目前,随着互联网,现代通讯技术的发展,个人的信息化要求越来越多,而且随着技术的发展,只会越来越多,而不会变少。并且,这种信息化的要求几乎是以指数倍的速度在增长,其发展的迅猛程度,决不逊于计算机技术本身的发展。前面说过,市场的大小决定一个产业的前途和命运,因此,个人对于信息服务的这种增长极为迅速的需求,决定了提供面向个人的信息服务,是一项极有前途的工作。
我们只要稍微回顾过去几年的历史,就可以发现,当一种信息服务能够满足个人用户的需要的时候,不论是即时通讯服务(ICQ、QQ、MSN),还是手机短信服务,等等,其发展的速度都会在很短的时间内达到一种近乎爆炸的程度。因此,我们丝毫不用怀疑这个飞速增长的市场是否能够成为软件产业的希望。这种提供面向个人的信息服务的软件开发,正是中国软件产业的真正出路。
当然,这并不是说,随随便便搞个什么提供信息服务的软件就能够赚钱了。开发用户不需要的东西在任何情况下都没有出路。重要的是开发真正能够满足用户需要的软件。
那么,什么才是用户需要的?可惜,这个世界上没有任何人,任何书本能够明确的告诉你用户需要的是什么。甚至用户自己,在绝大多数情况下,也都并不知道自己需要的是什么,至少不能够清楚的描述自己所需要的东西。即时通讯服务,短信服务在出现之前,也并没有什么用户去明确要求这个东西。因此不要觉得现在好像用户没有什么需求了,只是还没有人发现而已。
所以,在这里,再没有什么比商业眼光,嗅觉,敏锐的察觉用户潜在的需求更重要的了。我认为,当前中国经济的发展,人民生活水平的提高,所带来的普通用户对于信息服务的不断迅猛增长的需求,蕴含了无数的机遇与希望。
普通用户到底需要多少种,需要什么样的信息服务?没人知道。这个产业的发展几乎没有任何的限制,成功的唯一要素就在于你是否能够先于别人找到用户真正需要、感兴趣的东西,并且即时的把它提供给用户。
用户的需求可能很难察觉,可能很复杂,但也可能很简单,很明显,捅破一层窗户纸马上每个人都明白。举一个我mm在饭桌上提出来的意见:为什么手机短信服务不能跨越国家?我当时就一愣。这个难吗?一点都不难,只要两端的电信服务商达成协议,可以使用互联网在电信网络之间传送信息,成本几乎不会增加。当然我并不是说这个意见有什么现实意义,因为需要这种服务的人毕竟在少数(不然也不会随便公开)。我只是想就这个例子说明,有时候,创意就在你身边,只是你还没想到而已。
同时,这也是一个健康的、公平的市场,没有长官意志,不用跑关系,成功就只依赖于你能不能取得用户的欢心。
当然,还有一点需要注意的就是,在这个时代,好的创意很快就会被别人模仿,因此要注意自己提供的服务,要通过一定的方法和形式让别人难以模仿。在这方面,很多商业教科书上会有专门的讲授。
综上所述,我认为中国软件产业当前的出路就只有两个:软件外包服务和面向个人的信息服务。
然后,让我们来讨论程序员的这个职业的前途。
坦白的说,虽然身为程序员的一员,但是根据前面对于中国软件产业的整体预测,我认为,目前,中国程序员这个职业基本上可以说没什么前途。
如果说软件行业的兴衰系于整体经济形势的好坏,那么,程序员个人的前途,就直接由软件企业经营的好坏来决定。而很遗憾,目前中国本土所有的软件公司,都处在资本的原始积累状态。一方面,软件企业需要通过软件开发积累资本,求得发展,另一方面,市场形势严峻,能不能在这样的市场上发展起来,是绝对的未知数。两相综合,市场上没有多少钱,软件企业要赚钱,那么,还能够剩下多少残渣,给软件行业最底端的程序员呢?就算是那些大名鼎鼎的大公司,虽然在资金上可能比较宽裕,但是同样因为面临着不知道该向什么样的市场发展,不能够保证投入资金一定能够得到回报,因此不敢在程序员身上投入多少资金。
目前,大的软件企业都集中在几个主要的大城市。我在北京,就以北京为例。相信大家也知道,北京的房价之高,不要说中国程序员,就是美国程序员要买到称心的房子也需要咬咬牙。几乎很少有软件公司考虑过自己的员工公司之外的生活问题,为了在残酷的市场竞争中生存下来,都只会残酷的透支程序员生命和生活,无限制的无偿加班,超重的工作压力,仅能糊口的薪水。程序员也是人,也需要自己的生活,要娱乐,要恋爱,要买房,要成家,要生小孩,就凭当前的形势,过一个正常人的生活,几乎是中国程序员不可能完成的任务了。
因此,我认为,当前我们的出路就只有如下这些。
本科毕业,刚出校门不满3年的同学,你还年轻,你的生命还有希望,你有权不屑的唾弃我的悲观,你还能够继续承受简单而清苦的日子。只要你对于你所在的公司有信心,就努力吧。通过你的奋斗,像个苦行僧一样,无欲无求一心工作,你也许能和你的公司一起成长起来,到那个时候,再来笑话我好了。
其他所有的朋友们,像我一样,年纪不小了,生存的责任和压力越来越大。我们必须考虑一些编程以外的东西了。我认为我们的目的应当只有一个,那就是找一份比较稳定,收入足够支撑我们未来的基本生活需求,不要求我们像年轻人一样过苦行僧生活的工作。
结合前面我的分析,其实我们的目标已经很明确了:脱离中国软件行业,努力争取被外国资本家剥削,去外企工作;从事软件外包业务;投入面向个人信息服务的软件开发。
外企工作好,人人都知道,外国资本家已经吃的比较肥了,不至于再跟我们这些小虾米计较。如果从事软件外包业务的话,要注意的是,一定要参加日本企业直接投资的企业,千万不要加入中国人自己办的公司,那里的状况和普通的公司不会有什么区别。所以这个选择从本质上讲其实也是去外企。而最后一项,坦白的说,这是最有希望但风险也最高的选择。您有权为了自己的梦想而奋斗,而且,一旦成功,我辈外国资本家的奴隶是只能仰望的。在这里,先预祝您成功。
因此,我想跟大家说的是,不要在国内众多水平低下的软件公司中浪费时间了,我们应该从现在起就立下一个目标,争取上面三个归宿中的一个。从今后,一切都要为了自己的目标而努力,绝对不要再在国内的普通软件公司身上浪费宝贵的青春,从一个垃圾公司辗转到另一个垃圾公司了。程序员有权追求自己喜欢的生活,生活要有目的性,让我们一起为了自己的未来而奋斗!
(完)
补记:原打算辞职之后一个星期完成本文,实际却花了将近三个月。因为我现在基本没有时间,因此最后一篇完成的相当草率,请各位批评指正。在此感谢所有关注我的文章的朋友,谢谢你们。欢迎大家对我的文章提出意见和进行探讨。