从硬件到软件
● 硬件曾经是棵摇钱树,直到免费软件的出现
● 人们一直设法降低程序编写的难度,但至今我们仍离不开软件的开发者
硬件是个捉摸不定的行当。曾几何时,电脑的整合、构造和销售业务在数十年时间里一直是一棵摇钱树。但后来利润空间小了。我们看到戴尔(Dell)现在已经重新私有化,捷威(Gateway)则被宏碁(Acer)收购。这两家世界领先的硬件公司过去一直不碰软件,以生产预装微软Windows的PC电脑为主——另外外加多种不同的订阅服务以增加利润。
这导致了一些人的不满,他们花了1000多美元买来一台电脑,却还要想办法让杀毒软件别整天催着他们交费。
几年前微软还称霸天下的时候,史蒂夫·鲍尔默(Steve Ballmer)在一个人山人海的体育馆里上蹿下跳,蓝色衬衫的两腋渗出大片汗渍,他高喊着:
“开发者!
开发者!
开发者!
开发者!”
一直喊到嗓音嘶哑:“我热爱这个公司!”能不爱吗。如果你能卖软件,能把屏幕点亮,那你就是在卖可以无限再生的“无物”。无物的利润空间是很大的——除非另一个人在以更低的价钱出售无物,甚至无偿赠送。事实也就是这样,Linux之类基于自由软件的系统开始蚕食并最终鲸吞服务器市场,Google Apps等基于Web的免费应用也渐渐具备了取代桌面软件的能力。
对软件的期待是一直都在变化的。IBM在1960年代将硬软件解绑,却得以提高收费;微软在1998年重新把网络浏览器IE(Internet Explorer)和Windows捆绑起来,结果被告上法庭;苹果在2007年推出iPhone的时候不允许任何人为它写软件,而后它推出了应用商店(App Store),并就此开拓出一个巨大的商业领域——很快,《愤怒的小鸟》就问世了。在今天,很多硬件会携带一些软件——比如一台携带了操作系统的PC,操作系统包含成百上千个子程序,从邮件客户端到纸牌接龙什么都有。然后你会再去下载或购买一些软件。
人们在不断设法降低程序编写的难度,信誓旦旦地说有一天你可以用浅白的英语写代码,或通过控制一套图标,或列出一系列的规则——要让软件开发简单到一个聪明的公司高管或一般的孩子都能做。几十年来,一直有人希望让普通人也能写代码,就像用计算器或写电子邮件一样轻松。迄今为止,我们还是离不开开发者,开发者,开发者,开发者。
因而就产生了一门手艺,以及一个凭这门手艺谋生的职业阶层。它在1950年代初露端倪,但到了1980年代才真正兴起,一小撮人成为这方面的行家,他们控制机器去满足人类的基本欲望(确定时间、预订航班、发出信件、杀死僵尸)。程序员们从“来自键盘的信号”和“存储器中的数字”这样的概念入手,创造出可以无限再生的数码命令执行单位——我们称之为“软件”——希望用这些软件来迎合市场需求。这一点他们可真是做到了。他们创造的系统被用来管理全球经济基础设施。就算程序员不是世界的主宰者,至少是他们创造的东西在主宰着世界。
绝大多数程序员在做的软件都不像微软的Word那么家喻户晓。软件无处不在。从最初的从零开始、精雕细琢的定制工程,到今天这个由标准化组件组成的产业,程序员们吸收先辈的成果(尽管那些先辈可能跟他们就隔着一个工位),并在此基础上加以改进。当你切换频道,机顶盒告诉你现在还有些什么节目时,软件就在起作用。你在一台ATM机上取钱——软件在工作。电梯带你到5楼——软件。Facebook每天面向10亿人发布软件,这些软件在Web浏览器和移动应用内运行。它看上去只是一些照片,妈妈种的番红花,或儿子在学校的演出——不是的,它也是软件。