`
datoplay
  • 浏览: 1614476 次
文章分类
社区版块
存档分类
最新评论

人类最优秀Web软件排行

 
阅读更多

 去年,我曾经列出了人类最优秀软件排行榜(见本刊2007年1月号)。现在,又该给史上最伟大的Web软件进行排行了。

  Web软件的历史相当短暂。现代互联网始于1993年,当时第一个万维网网页浏览器Mosaic正式推出。

  要挑选最优秀的网络软件,就像从一群稚嫩的孩童里面断定谁是未来的科学家、音乐家和工程师一样,相当困难,所以最保险的做法还是从Web本身开始吧。

  1990年,世界上第一个网站在瑞士的欧洲粒子物理研究所(CERN)粒子加速器站点投入使用时,Web仅是一个加载到服务器上的软件。万维网创始人蒂姆・布纳斯・李(Tim Berners Lee)着手简化了服务器与客户端之间的复杂关系,通过一些简单标准就实现了不同地点之间的信息共享。但是,1991年出现的Web,简直就像是一场倒退,它好比国际商业机器公司(IBM)经典的大型机架构的重现,强大的服务器向成千上万个哑终端屏幕发送指令。用户和互联网服务器的互动也受到很多束缚。

  所以,在推动互联网计算向前发展时,暂时的倒退也是必要的。Web的无状态特征(无用户环境信息传送至服务器)和其他一些局限,阻碍了复杂计算的实现,但尽管如此,Web软件仍然发挥了其固有的优点:简单、低成本和覆盖面广。这些也作为判断Web重大突破和那些显示Web如何真正被利用的软件的标准。

  如果要寻找最优秀的Web软件,为什么不从Mosaic开始呢?它充分体现了那时优秀Web软件的一些综合特征。它在1993年给数百万上网的用户提供了一些新的功能。Mosaic在我列出的人类最优秀软件榜单上排名第六。那么这里再重复就没有意义了。

  Web软件的特点:简单

  最简单的例子就是用Perl和C语言编写的Hotmail。事实上,最初的Web邮件还显得相当笨拙。邮件的部分功能还只能由专门的电子邮件系统来实现,而Web邮件服务却无能为力,比如更改邮箱账号或者过滤垃圾邮件等。但是,斯坦福大学的毕业生沙比尔・巴蒂亚(Sabeer Bhatia)利用浏览器窗口和底层的网络,让数百万用户享用了免费的电子邮件。

  Hotmail有一个非常出众的特性,并且代表了Web软件的典型特征:其用户界面非常简单易用。用户无需填写POP服务器TCP/IP地址或者通过其他工具来实现,比如像电子邮件客户端Eudora。数百万用户使用了Hotmail。Hotmail推出17个月后,巴蒂亚以4亿美元的价格将它卖给了微软公司(Microsoft,下称微软)。

  与此类似,美国在线公司(America Online)也推出了一项名叫即时通信(Instant Messenger)的免费服务,一种全新的沟通方式由此而诞生。即时通信工具在此前联网的Unix服务器上就已经存在,程序员通过它能够及时了解到项目的进展。当时针对Commodore 64和Commodore 128电脑提供在线服务的Quantum Link公司推出了一项新的在线服务:Online Messages。Quantum Link就是后来的AOL美国在线,而Online Messages就是IM。

  Craigslist与法拉利

  简洁就是Web软件的一大特征。虽然国外非常出名的在线分类广告系统Craigslist的底层Perl开发代码就有10万行了,但是它的界面看起来却是非常简单。

  之前我对Craigslist了解并不多,后来我想卖掉自己的丰田车,这时才发现无需授权就可以在上面方便地发布文本广告。但是,当我发布信息之后,并没有买家来联系我。后来我开始观察其他卖家如何展示他们的汽车图片,我终于等到了机会。有一天,邻居阿方索开出一辆法拉利,于是,我把自己那辆破车开到了法拉利边上,并且拍了照,然后贴到了网上。在我关机之前,我的电话铃已经开始响了,买家上门了。

  Craigslist看起来比报纸的分类广告要呆板一些,都是简单的文字标题。但就像分类一样,人们就算完全不懂网络也能使用Craigslist。Craigslist粘性很高,Alexa的数据显示,Craigslist的浏览用户平均浏览20个页面才离开。Craigslist平均每月新增2,000万个广告,6,000万个论坛帖子。在Alexa的全球网站排名中,Craigslist名列第40位。其创始人克雷格・纽马克(Graig Newmark)说:“我们知道怎样让事情变得简单,而且没有什么设计技巧。”

  由于网站流量非常高,洛杉矶的一些雇主和招聘中介要求网站收费,来减少垃圾贴和恶意竞争。纽马克同意了,于是公司向旧金山的每位雇主和招聘公司收取75美元,洛杉矶的25美元,其他城市5美元。出于同样的理由,它还向纽约市在册的每位地产中介收取10美元。


  由于一系列的失误,尽管Craigslist并不情愿,但是电子港湾公司(eBay)仍然拥有了其25%的股份。直到现在,互联网巨头仍然在向其抛出橄榄枝,并且非常关注其惊人的收入。Craigslist的广告覆盖到450个城市,但是它只在7个城市收费。虽然像eBay、谷歌公司(Google,下称谷歌)、雅虎公司(Yahoo)和微软等都进入了在线分类广告系统领域,但Craigslist的商业模式仍然一枝独秀,保持在2,200万到2,300万美元的年收入,每位雇员差不多创造了100万美元的收入。

  搜索先驱

  优秀的Web软件不只是吸引流量。其中一个决定性因素是它能带来新功能,一些创新,或者能够为数百万用户带来全新的服务。

  搜索就是这样,不少用户认为这方面的创新者首推谷歌。但谷歌并没有发明搜索技术的关键功能,这些特性是:对整个Web进行索引,以并行方式进行访问并快速将结果反馈给用户。虽然所有这些都与谷歌密切相关,但首先做到这些的是数字设备公司(Digital Equipment)的AltaVista。

  该公司的加州帕洛阿图实验室搜索专家路易斯・莫尼尔(louis Monier,现在供职于谷歌)。1995年AltaVista推出之时,已经有若干搜索引擎,如Excite、Infoseek和Lycos等。当初,所有搜索引擎都要面对几乎无法跨越的屏障:Web究竟有多大?并且抓取某个网页内容的索引还与索引完成的时间息息相关。

  早期的搜索引擎利用网络爬虫程序来访问URL,通过它来抓取网页的头部信息和标题,并把这些信息进行组织后存放到中央服务器。但网络爬虫在对某个站点发出请求后要等几秒才能收到响应。最理想的情况下,搜索引擎一天可以完成对数万个网站信息的收集。而12到14天之后,搜集到的信息一定程度上就会“过期”。此外,当爬虫访问后,网页也有可能会改变,而且爬虫可能还会错过一些新网页。所以对于这时期的网络爬虫来说,百万级网页已经是极限。而该公司的研发人员知道,1995年12月,那时的Web已经远远超出这个数字了。

  莫尼尔后来开发出了多线程Web爬虫程序Scooter,它运行在先进的64位Unix服务器上。Scooter在ping了某个站点后不必等它响应并继续ping其他站点,它会跟踪每个访问并作为一个独立的线程进行响应。其他的爬虫程序一次只能处理某个站点,而Scooter一次就能访问上千个站点并收集相应的信息。Scooter不但能收集到网页头部信息和页面,还能够收集到完整的网页。莫尼尔表示,AltaVista对网页的索引首次覆盖到整个网络。

  Scooter首次爬行活动就找到了1,600万个网页,在当时来说是个非常惊人的数字。而在两个月后的第二次爬行找到了2,500万个网页。从AltaVista可以折射出网络的快速增长。据Netcraft 4月的调查显示,现在全球共有1.14亿个活跃站点,并且每个站点都有成千上万个子网页。

  在Web开发的重要时期,AltaVista在搜索领域像流星一项划过炫目的轨迹。它把搜索变成了一种工具,并给互联网带来了数百万的新用户。我并没有忘记谷歌。谷歌利用了AltaVista的经验,增加了网页排名系统和基于广告的商业模式。网页排名实际上是Web软件的一种突破,但是我在另一个榜单上已经列入了谷歌,这里就不再重复了。

  不太知名的Web软件

  以下出场的Web软件对网络的贡献也非常大,但它甚至还不如AltaVista有名,它就是XMLHttpRequest对象。

  XMLHttpRequest在1999年作为微软IE5的一部分首度亮相。在XMLHttpRequest出现之前,浏览器只能进行静态显示,就像一个哑终端窗口。它能够做的唯一一件事就是把服务器发送来的信息以HTML页面呈现出来。一台互联网服务器上的数百万用户看到的都是同样的网页,没有任何一个网页像现在这样是针对用户定制的。

  XMLHttpRequest的出现改变了这种状况。最初出现的是ActiveX控件,它为浏览器和服务器之间开辟了后台通信的渠道,数据通过后台进行传输。而在XMLHttpRequest出现之前,用户想获得不同数据的唯一方式只有访问不同的网页。

  随着2001年IE6的推出,XMLHttpRequest开始作为一个更加通用的应用编程接口(API)而不只是ActiveX控件出现。它遵循网络标准,并且力求通过HTTP协议和只使用JavaScript(或微软的Jscript)进行浏览器编码,使得数据在服务器和客户端之间以XML或动态HTML格式进行传输。

  这些API调用的模式成了谷歌地图(Google Maps)的基础,Google Maps能够针对每位终端用户的地图信息请求进行响应。IE高级产品经理皮特・莱佩吉(Pete LePage)称其为“Web2.0的秘诀”。谷歌、Zimbra公司等都赶上了使用Request对象的大潮,其体现在网络上的形态就是近来很热的Ajax。通过它,能够建立与微软产品竞争的在线应用软件。Zimbra总裁斯科特・迪茨恩(Scott Dietzen)说:“微软似乎并没有因为发明了XMLHttpRequest而得到它应得到的荣誉。”万维网联盟(W3C)正致力于使它成为一项标准。

  简单概念 复杂代码

  Web一向惩戒复杂但褒奖简洁。但它并不只是奖励简洁的软件,那些内在复杂而外在简洁的软件也会享受同等待遇。

  例子A:在1995年9月,程序员皮尔瑞・欧米德亚(Pierre Omidyar)在其个人站点上开辟了AuctionWeb网站,他最初是想看看通过网络销售货物是否行得通。

  AuctionWeb就是现在有名的eBay,它提供的不但是使得用户可以在线销售物品的伟大软件,同时,它还把API开放给第三方的软件
开发商来开发用于管理大量在线货物的工具。其他第三方还向买家提供搜索工具,可以在网站上搜索他们想要的东西。


  eBay拍卖网的易用性对新进入

电子商务的新用户来说是最强大的推动力之一。每年有大约20亿件物品通过eBay流通,预计今年因此而获得的收入将有72亿美元。

  例子B:在1995年推出的在线书店亚马逊网站(Amazon.com,下称亚马逊)扩大了网络电子商务的能力,它使得购物车和结算交易流程流行开来。通过向其他零售商的推广,它还发展了自己的电子商务系统。

  Borders集团、CDNow公司和Virgin Mega公司都由亚马逊的电子商务系统提供支持。数以百计的小零售商通过亚马逊的API连接到亚马逊的网站上。亚马逊不仅带来了购物者,它还把购物变成了一个标准的网络行为。亚马逊的定向营销(专向特定社会团体成员推销产品或劳务)利用计算机强大的功能对存储在数据库中的购买者数据进行分析,并根据分析得出的结果有针对性地为用户推荐商品,这一成功的商业模式已经被其他很多网站仿效。

  注意:eBay和亚马逊都因为他们各自的商业模式卷入了一些专利诉讼当中。那么,伟大Web软件的另一个原则就是,到底是谁发明了它并不总能让人弄明白。

  虚拟社区

  1993年,Mosaic浏览器把万维网带到了数百万用户面前,同期霍华德・莱茵古德(Howard Rheingold)写了关于他体验Well的文章:《虚拟社区》。Well最初叫全球电子连接(Whole Earth’Lectronic Link),是斯图尔特・布兰德(Stewart Brand)命名的。Well在1985年推出,是布兰德的Whole Earth Catalog的后续项目。

  Well是一个拨号虚拟社区,面向美国旧金山的湾区。用户可以拨号登陆到论坛、讨论组和其他形式的电子化通信场所。

  在布纳斯・李发明万维网之前出现的Well为什么能称得上是伟大的Web软件?因为它促进了电子公告栏、讨论论坛和新闻组的革新,并把它们带进形式更广的在线社区。当Web出现后,Well已经提供了现成的模型并验证了这类社区的生命能力。现在他们又通过社会软件系统,渗透到新的网络环境中。

  当备受敬仰的微软研究人员吉姆・格雷(Jim Gray)在旧金山出海失踪后,志愿者自发形成了一个社区,他们通过搜集和查看卫星数据来追踪他。虽然此次活动最终以失败告终,但是像这样通过网络聚集众多自愿者合作完成某件事的设想开始流行。

  说到虚拟社区,现在就有很多像《第二生命》(Second Life)一样的三维虚拟世界。像现有的很多三维玩家在线游戏,玩家可以实时合作完成特定任务,其中声誉很高的要数暴雪公司(Bizzard Entertainment)在2004年推出的《魔兽世界》(World of Craft),总玩家数超过了850万,而在中国就有350万。

  现在,我列出了至此我认为最伟大的网络软件,以字母先后顺序排列分别为:AltaVista、Amazon、AOL即时通信工具、Craigslist、eBay、Hotmail、XMLHttpRequest、Well和《魔兽世界》。还不坏,但只有9个,下面3个马上就到。

  群众的智慧:Wiki

  利用网络合作收集知识并免费提供给读者的另一种形式是Wiki,其中最出名、影响最大的Wiki就是Wikipedia。

  Wikipedia在2001年1月15日推出,底层的数据库为开源的MySQL数据库系统。其软件必须能够处理URL重定向并能支持数百万用户的访问量。它利用了开源Wiki创建系统MediaWiki的内容管理功能,MediaWiki用PHP编写并针对Wikipedia进行了优化。据Alexa在2005年的统计数据显示,Wikipedia在全球最受欢迎网站中排名37位。

  Wikipedia被一些负责的杂志监督。2005年,《今日美国》(Gannett Newspapers)的编辑总监约翰・席根塔勒(John Siegenthaler)发现,在一个贴子里他竟被当作刺杀约翰・肯尼迪(John Kennedy)的嫌疑犯。当然他并不是。后来这个错误被更正了,某人开了个玩笑。但如果一些更改是匿名来做的,编辑们能够指望捕捉到所有的错误和恶意的更改吗?

  Wikipedia看上去似乎解决了这个问题。他们要求贡献者提交自己的简介,放到可以连接到这些自传的帖子中,大家对这些贡献者进行评论。这些Bug都有无数双眼睛在盯着。

  另一个利用群众智慧的例子是Digg网站。Digg的注册用户可以发布其他站点中他们认为感兴趣新闻的连接,读者可以通过点击“Digg it”按钮进行投票,得票越高的文章越置顶。

  凯文・罗斯(Kevin Rose)在2006年6月26日推出面向新闻的Digg站点,两个月后它就冲上最多用户访问站点的第24位。


  最终榜单

  现在最伟大的12个网络软件中,有11个已经露面,它们分别是(以降序排列):

  12.AOL即时通信工具

  11.Digg

  10.Hotmail

  9.魔兽世界

  8.Wikipedia

  7.XMLHttpRequest对象集

  6.Amazon.com

  5.eBay

  4.Well

  3.Craigslist

  2.AltaVista

  最后出场的,也是史上12个最优秀Web软件的第一名。

  布纳斯·李使网络重返简化的平台,并因此带出了新理念和新机遇。这个平台基于异步通信,当某个系统空闲时就把消息传递给另外一个系统,而不需要在传输开始时双方系统都保持空闲。

  在这个平台上,用户一次会话不包含以前的历史信息;使用HTTP协议的服务器能够快速响应页面请求,因此无需担心每个访问或对每个网页的访问期间传输用户信息的问题。

  在开发出Craigslist、Hotmail或其他用户密集型站点之前,需要有软件能够快速处理数以百万计的HTML页面,而且能够提取后台数据库信息和其他资源。

  这时候,Apache网页服务器出现了。大多数早期的网站管理员使用的都是美国国家超级计算应用中心(NCSA)的HTTPd服务器,是早期的Web服务器,由该中心的罗伯特・麦克库尔(Robert McCool)为超算应用开发的。但是,该服务器处理高流量时并不够灵活,需要更多API来与后台系统进行交互。

  后来,Apache Group改进了原版的NCSA HTTPd服务器。在第二个版本中,Apache Group把这个服务器拆分成一系列的模块,这就形成了Apache Web Server2.0。经过重新设计,它可以让不同的贡献者专注于在服务器的不同部分工作而不会影响其他人。

  1998年,IBM宣布取消其自有的Web服务器的开发,表示会把Apache集成到其WebSphere中间件中。IBM此举对在商业应用中采用开源软件产生了正面的影响,并引起了Apache的竞争对手微软的Internet Information Server用户的注意。

  Apache是一个自愿参加的项目,在这里,经验丰富的开发人员可以交换想法,打包作品,清除软件的Bug并把完成的代码提交到集中化的代码管理系统中。

  Apache处理了用户的灵活性问题,并且正在建立PHP的紧密联系。PHP是一种脚本语言,它能够把站点的不同元素捆绑在一起,并且提供连接数据库和网页的小程序。它未来可能在Web上占主导地位。

  快速访问数据意味着网页可以即时更新最新信息,或者提供个性化网页。Apache与早期的开源数据库MySQL关系紧密,这个数据库最初是为了快速阅读和处理数据而设计的,比较适应新的Web。Apache既有创新技术、义务开发人员,还有能够与商业竞争对手抗衡的能力。总而言之,Apache体现了一种新的网络效应。

  万维网从计算回归到简单化的平台而且开启了一系列未来发展之门。最优秀的Web软件正是体现了这些可贵的可能性。

  Apache Web Server和它的同伴们就像是新时代的预言家。我们只能朦胧地感知到那个时代的一些特征,但是许多人都开始认为,Web一定会有更多开放的标准,更多免费的软件和更加智能化的功能。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics