Web軟件的歷史相當(dāng)短暫。現(xiàn)代互聯(lián)網(wǎng)始于1993年,當(dāng)時(shí)第一個(gè)萬維網(wǎng)網(wǎng)頁瀏覽器Mosaic正式推出。
要挑選最優(yōu)秀的網(wǎng)絡(luò)軟件,就像從一群稚嫩的孩童里面斷定誰是未來的科學(xué)家、音樂家和工程師一樣,相當(dāng)困難,所以最保險(xiǎn)的做法還是從Web本身開始吧。
1990年,世界上第一個(gè)網(wǎng)站在瑞士的歐洲粒子物理研究所(CERN)粒子加速器站點(diǎn)投入使用時(shí),Web僅是一個(gè)加載到服務(wù)器上的軟件。萬維網(wǎng)創(chuàng)始人蒂姆·布納斯·李(Tim Berners Lee)著手簡化了服務(wù)器與客戶端之間的復(fù)雜關(guān)系,通過一些簡單標(biāo)準(zhǔn)就實(shí)現(xiàn)了不同地點(diǎn)之間的
所以,在推動(dòng)互聯(lián)網(wǎng)計(jì)算向前發(fā)展時(shí),暫時(shí)的倒退也是必要的。Web的無狀態(tài)特征(無用戶環(huán)境信息傳送至服務(wù)器)和其他一些局限,阻礙了復(fù)雜計(jì)算的實(shí)現(xiàn),但盡管如此,Web軟件仍然發(fā)揮了其固有的優(yōu)點(diǎn):簡單、低成本和覆蓋面廣。這些也作為判斷Web重大突破和那些顯示W(wǎng)eb如何真正被利用的軟件的標(biāo)準(zhǔn)。
如果要尋找最優(yōu)秀的Web軟件,為什么不從Mosaic開始呢?它充分體現(xiàn)了那時(shí)優(yōu)秀Web軟件的一些
Web軟件的特點(diǎn):簡單
最簡單的例子就是用Perl和C語言編寫的Hotmail。事實(shí)上,最初的Web郵件還顯得相當(dāng)笨拙。郵件的部分功能還只能由專門的電子郵件系統(tǒng)來實(shí)現(xiàn),而Web郵件服務(wù)卻無能為力,比如更改郵箱賬號(hào)或者過濾垃圾郵件等。但是,斯坦福大學(xué)的畢業(yè)生沙比爾·巴蒂亞(Sabeer Bhatia)利用瀏覽器窗口和底層的網(wǎng)絡(luò),讓數(shù)百萬用戶享用了免費(fèi)的電子郵件。
Hotmail有一個(gè)非常出眾的特性,并且代表了Web軟件的典型特征:其用戶界面非常簡單易用。用戶無需填寫POP服務(wù)器TCP/IP地址或者通過其他工具來實(shí)現(xiàn),比如像電子郵件客戶端Eudora。數(shù)百萬用戶使用了Hotmail。Hotmail推出17個(gè)月后,巴蒂亞以4億美元的
與此類似,美國在線公司(America Online)也推出了一項(xiàng)名叫即時(shí)通信(Instant Messenger)的免費(fèi)服務(wù),一種全新的溝通方式由此而誕生。即時(shí)通信工具在此前聯(lián)網(wǎng)的Unix服務(wù)器上就已經(jīng)存在,程序員通過它能夠及時(shí)了解到項(xiàng)目的進(jìn)展。當(dāng)時(shí)針對(duì)Commodore 64和Commodore 128電腦提供在線服務(wù)的Quantum Link公司推出了一項(xiàng)新的在線服務(wù):Online Messages。Quantum Link就是后來的AOL美國在線,而Online Messages就是IM。
Craigslist與法拉利
簡潔就是Web軟件的一大特征。雖然國外非常出名的在線分類廣告系統(tǒng)Craigslist的底層Perl開發(fā)代碼就有10萬行了,但是它的界面看起來卻是非常簡單。
之前我對(duì)Craigslist了解并不多,后來我想賣掉自己的豐田車,這時(shí)才發(fā)現(xiàn)無需授權(quán)就可以在上面方便地發(fā)布文本廣告。但是,當(dāng)我發(fā)布信息之后,并沒有買家來聯(lián)系我。后來我開始觀察其他賣家如何展示他們的
Craigslist看起來比報(bào)紙的分類廣告要呆板一些,都是簡單的文字標(biāo)題。但就像分類一樣,人們就算完全不懂網(wǎng)絡(luò)也能使用Craigslist。Craigslist粘性很高,Alexa的數(shù)據(jù)顯示,Craigslist的瀏覽用戶平均瀏覽20個(gè)頁面才離開。Craigslist平均每月新增2,000萬個(gè)廣告,6,000萬個(gè)論壇帖子。在Alexa的全球網(wǎng)站排名中,Craigslist名列第40位。其創(chuàng)始人克雷格·紐馬克(Graig Newmark)說:“我們知道怎樣讓事情變得簡單,而且沒有什么設(shè)計(jì)技巧?!?
由于網(wǎng)站流量非常高,洛杉磯的一些雇主和招聘中介要求網(wǎng)站收費(fèi),來減少垃圾貼和惡意競(jìng)爭(zhēng)。紐馬克同意了,于是公司向舊金山的每位雇主和招聘公司收取75美元,洛杉磯的25美元,其他城市5美元。出于同樣的理由,它還向紐約市在冊(cè)的每位地產(chǎn)中介收取10美元。
由于一系列的失誤,盡管Craigslist并不情愿,但是電子港灣公司(eBay)仍然擁有了其25%的股份。直到現(xiàn)在,互聯(lián)網(wǎng)巨頭仍然在向其拋出橄欖枝,并且非常關(guān)注其驚人的收入。Craigslist的廣告覆蓋到450個(gè)城市,但是它只在7個(gè)城市收費(fèi)。雖然像eBay、谷歌公司(Google,下稱谷歌)、雅虎公司(Yahoo)和微軟等都進(jìn)入了在線分類廣告系統(tǒng)領(lǐng)域,但Craigslist的商業(yè)模式仍然一枝獨(dú)秀,保持在2,200萬到2,300萬美元的年收入,每位雇員差不多創(chuàng)造了100萬美元的收入。
搜索先驅(qū)
優(yōu)秀的Web軟件不只是吸引流量。其中一個(gè)決定性因素是它能帶來新功能,一些創(chuàng)新,或者能夠?yàn)閿?shù)百萬用戶帶來全新的服務(wù)。
搜索就是這樣,不少用戶認(rèn)為這方面的創(chuàng)新者首推谷歌。但谷歌并沒有發(fā)明搜索技術(shù)的關(guān)鍵功能,這些特性是:對(duì)整個(gè)Web進(jìn)行索引,以并行方式進(jìn)行訪問并快速將結(jié)果反饋給用戶。雖然所有這些都與谷歌密切相關(guān),但首先做到這些的是數(shù)字設(shè)備公司(Digital Equipment)的AltaVista。
該公司的加州帕洛阿圖實(shí)驗(yàn)室搜索專家路易斯·莫尼爾(louis Monier,現(xiàn)在供職于谷歌)。1995年AltaVista推出之時(shí),已經(jīng)有若干搜索引擎,如Excite、Infoseek和Lycos等。當(dāng)初,所有搜索引擎都要面對(duì)幾乎無法跨越的屏障:Web究竟有多大?并且抓取某個(gè)網(wǎng)頁內(nèi)容的索引還與索引完成的時(shí)間息息相關(guān)。
早期的搜索引擎利用網(wǎng)絡(luò)爬蟲程序來訪問URL,通過它來抓取網(wǎng)頁的頭部信息和標(biāo)題,并把這些信息進(jìn)行組織后存放到中央服務(wù)器。但網(wǎng)絡(luò)爬蟲在對(duì)某個(gè)站點(diǎn)發(fā)出請(qǐng)求后要等幾秒才能收到響應(yīng)。最理想的情況下,搜索引擎一天可以完成對(duì)數(shù)萬個(gè)網(wǎng)站信息的收集。而12到14天之后,搜集到的信息一定程度上就會(huì)“過期”。此外,當(dāng)爬蟲訪問后,網(wǎng)頁也有可能會(huì)改變,而且爬蟲可能還會(huì)錯(cuò)過一些新網(wǎng)頁。所以對(duì)于這時(shí)期的網(wǎng)絡(luò)爬蟲來說,百萬級(jí)網(wǎng)頁已經(jīng)是極限。而該公司的研發(fā)人員知道,1995年12月,那時(shí)的Web已經(jīng)遠(yuǎn)遠(yuǎn)超出這個(gè)數(shù)字了。
莫尼爾后來開發(fā)出了多線程Web爬蟲程序Scooter,它運(yùn)行在先進(jìn)的64位Unix服務(wù)器上。Scooter在ping了某個(gè)站點(diǎn)后不必等它響應(yīng)并繼續(xù)ping其他站點(diǎn),它會(huì)跟蹤每個(gè)訪問并作為一個(gè)獨(dú)立的線程進(jìn)行響應(yīng)。其他的爬蟲程序一次只能處理某個(gè)站點(diǎn),而Scooter一次就能訪問上千個(gè)站點(diǎn)并收集相應(yīng)的信息。Scooter不但能收集到網(wǎng)頁頭部信息和頁面,還能夠收集到完整的網(wǎng)頁。莫尼爾表示,AltaVista對(duì)網(wǎng)頁的索引首次覆蓋到整個(gè)網(wǎng)絡(luò)。
Scooter首次爬行活動(dòng)就找到了1,600萬個(gè)網(wǎng)頁,在當(dāng)時(shí)來說是個(gè)非常驚人的數(shù)字。而在兩個(gè)月后的第二次爬行找到了2,500萬個(gè)網(wǎng)頁。從AltaVista可以折射出網(wǎng)絡(luò)的快速增長。據(jù)Netcraft 4月的調(diào)查顯示,現(xiàn)在全球共有1.14億個(gè)活躍站點(diǎn),并且每個(gè)站點(diǎn)都有成千上萬個(gè)子網(wǎng)頁。
在Web開發(fā)的重要時(shí)期,AltaVista在搜索領(lǐng)域像流星一項(xiàng)劃過炫目的軌跡。它把搜索變成了一種工具,并給互聯(lián)網(wǎng)帶來了數(shù)百萬的新用戶。我并沒有忘記谷歌。谷歌利用了AltaVista的經(jīng)驗(yàn),增加了網(wǎng)頁排名系統(tǒng)和基于廣告的商業(yè)模式。網(wǎng)頁排名實(shí)際上是Web軟件的一種突破,但是我在另一個(gè)榜單上已經(jīng)列入了谷歌,這里就不再重復(fù)了。
不太知名的Web軟件
以下出場(chǎng)的Web軟件對(duì)
XMLHttpRequest在1999年作為微軟IE5的一部分首度亮相。在XMLHttpRequest出現(xiàn)之前,瀏覽器只能進(jìn)行靜態(tài)顯示,就像一個(gè)啞終端窗口。它能夠做的唯一一件事就是把服務(wù)器發(fā)送來的
XMLHttpRequest的出現(xiàn)改變了這種狀況。最初出現(xiàn)的是ActiveX控件,它為瀏覽器和服務(wù)器之間開辟了后臺(tái)通信的渠道,數(shù)據(jù)通過后臺(tái)進(jìn)行傳輸。而在XMLHttpRequest出現(xiàn)之前,用戶想獲得不同數(shù)據(jù)的唯一方式只有訪問不同的網(wǎng)頁。
隨著2001年IE6的推出,XMLHttpRequest開始作為一個(gè)更加通用的應(yīng)用編程接口(API)而不只是ActiveX控件出現(xiàn)。它遵循網(wǎng)絡(luò)標(biāo)準(zhǔn),并且力求通過HTTP協(xié)議和只使用JavaScript(或微軟的Jscript)進(jìn)行瀏覽器編碼,使得數(shù)據(jù)在服務(wù)器和客戶端之間以XML或動(dòng)態(tài)HTML格式進(jìn)行傳輸。
這些API調(diào)用的模式成了谷歌
簡單概念 復(fù)雜
Web一向懲戒復(fù)雜但褒獎(jiǎng)簡潔。但它并不只是獎(jiǎng)勵(lì)簡潔的軟件,那些內(nèi)在復(fù)雜而外在簡潔的軟件也會(huì)享受同等待遇。
例子A:在1995年9月,程序員皮爾瑞·歐米德亞(Pierre Omidyar)在其個(gè)人站點(diǎn)上開辟了AuctionWeb網(wǎng)站,他最初是想看看通過網(wǎng)絡(luò)銷售貨物是否行得通。
AuctionWeb就是現(xiàn)在有名的eBay,它提供的不但是使得用戶可以在線銷售物品的偉大軟件,同時(shí),它還把API開放給第三方的軟件開發(fā)商來開發(fā)用于管理大量在線貨物的工具。其他第三方還向買家提供搜索工具,可以在網(wǎng)站上搜索他們想要的東西。
eBay拍賣網(wǎng)的易用性對(duì)新進(jìn)入電子商務(wù)的新用戶來說是最強(qiáng)大的推動(dòng)力之一。每年有大約20億件物品通過eBay流通,預(yù)計(jì)今年因此而獲得的收入將有72億美元。
例子B:在1995年推出的在線書店亞馬遜網(wǎng)站(Amazon.com,下稱亞馬遜)擴(kuò)大了網(wǎng)絡(luò)電子商務(wù)的能力,它使得
Borders集團(tuán)、CDNow公司和Virgin Mega公司都由亞馬遜的電子商務(wù)系統(tǒng)提供支持。數(shù)以百計(jì)的小零售商通過亞馬遜的API連接到亞馬遜的網(wǎng)站上。亞馬遜不僅帶來了購物者,它還把購物變成了一個(gè)標(biāo)準(zhǔn)的網(wǎng)絡(luò)行為。亞馬遜的定向營銷(專向特定社會(huì)團(tuán)體成員推銷產(chǎn)品或勞務(wù))利用計(jì)算機(jī)強(qiáng)大的功能對(duì)存儲(chǔ)在數(shù)據(jù)庫中的購買者數(shù)據(jù)進(jìn)行分析,并根據(jù)分析得出的結(jié)果有針對(duì)性地為用戶推薦商品,這一成功的商業(yè)模式已經(jīng)被其他很多網(wǎng)站仿效。
注意:eBay和亞馬遜都因?yàn)樗麄兏髯缘纳虡I(yè)模式卷入了一些專利訴訟當(dāng)中。那么,偉大Web軟件的另一個(gè)原則就是,到底是誰發(fā)明了它并不總能讓人弄明白。
虛擬社區(qū)
1993年,Mosaic瀏覽器把萬維網(wǎng)帶到了數(shù)百萬用戶面前,同期霍華德·萊茵古德(Howard Rheingold)寫了關(guān)于他體驗(yàn)Well的文章:《虛擬社區(qū)》。Well最初叫全球電子連接(Whole Earth’Lectronic Link),是斯圖爾特·布蘭德(Stewart Brand)命名的。Well在1985年推出,是布蘭德的Whole Earth Catalog的后續(xù)項(xiàng)目。
Well是一個(gè)撥號(hào)虛擬社區(qū),面向美國舊金山的灣區(qū)。用戶可以撥號(hào)登陸到論壇、討論組和其他形式的電子化通信場(chǎng)所。
在布納斯·李發(fā)明萬維網(wǎng)之前出現(xiàn)的Well為什么能稱得上是偉大的Web軟件?因?yàn)樗龠M(jìn)了電子公告欄、討論論壇和新聞組的革新,并把它們帶進(jìn)形式更廣的在線社區(qū)。當(dāng)Web出現(xiàn)后,Well已經(jīng)提供了現(xiàn)成的模型并驗(yàn)證了這類社區(qū)的生命能力。現(xiàn)在他們又通過社會(huì)軟件系統(tǒng),滲透到新的網(wǎng)絡(luò)環(huán)境中。
當(dāng)備受敬仰的微軟研究人員吉姆·格雷(Jim Gray)在舊金山出海失蹤后,志愿者自發(fā)形成了一個(gè)社區(qū),他們通過搜集和查看衛(wèi)星數(shù)據(jù)來追蹤他。雖然此次活動(dòng)最終以失敗告終,但是像這樣通過網(wǎng)絡(luò)聚集眾多自愿者合作完成某件事的設(shè)想開始流行。
說到虛擬社區(qū),現(xiàn)在就有很多像《第二生命》(Second Life)一樣的三維虛擬世界。像現(xiàn)有的很多三維玩家在線游戲,玩家可以實(shí)時(shí)合作完成特定任務(wù),其中聲譽(yù)很高的要數(shù)暴雪公司(Bizzard Entertainment)在2004年推出的《魔獸世界》(World of Craft),總玩家數(shù)超過了850萬,而在中國就有350萬。
現(xiàn)在,我列出了至此我認(rèn)為最偉大的網(wǎng)絡(luò)軟件,以字母先后順序排列分別為:AltaVista、Amazon、AOL即時(shí)通信工具、Craigslist、eBay、Hotmail、XMLHttpRequest、Well和《魔獸世界》。還不壞,但只有9個(gè),下面3個(gè)馬上就到。
群眾的智慧:Wiki
利用網(wǎng)絡(luò)合作收集知識(shí)并免費(fèi)提供給讀者的另一種形式是Wiki,其中最出名、影響最大的Wiki就是Wikipedia。
Wikipedia在2001年1月15日推出,底層的數(shù)據(jù)庫為開源的MySQL數(shù)據(jù)庫系統(tǒng)。其軟件必須能夠處理URL重定向并能支持?jǐn)?shù)百萬用戶的訪問量。它利用了開源Wiki創(chuàng)建系統(tǒng)MediaWiki的內(nèi)容管理功能,MediaWiki用PHP編寫并針對(duì)Wikipedia進(jìn)行了優(yōu)化。據(jù)Alexa在2005年的統(tǒng)計(jì)數(shù)據(jù)顯示,Wikipedia在全球最受歡迎網(wǎng)站中排名37位。
Wikipedia被一些負(fù)責(zé)的雜志監(jiān)督。2005年,《今日美國》(Gannett Newspapers)的編輯總監(jiān)約翰·席根塔勒(John Siegenthaler)發(fā)現(xiàn),在一個(gè)貼子里他竟被當(dāng)作刺殺約翰·肯尼迪(John Kennedy)的嫌疑犯。當(dāng)然他并不是。后來這個(gè)錯(cuò)誤被更正了,某人開了個(gè)玩笑。但如果一些更改是匿名來做的,編輯們能夠指望捕捉到所有的錯(cuò)誤和惡意的更改嗎?
Wikipedia看上去似乎解決了這個(gè)問題。他們要求貢獻(xiàn)者提交自己的簡介,放到可以連接到這些自傳的帖子中,大家對(duì)這些貢獻(xiàn)者進(jìn)行評(píng)論。這些Bug都有無數(shù)雙眼睛在盯著。
另一個(gè)利用群眾智慧的例子是Digg網(wǎng)站。Digg的注冊(cè)用戶可以發(fā)布其他站點(diǎn)中他們認(rèn)為感興趣新聞的連接,讀者可以通過點(diǎn)擊“Digg it”按鈕進(jìn)行投票,得票越高的文章越置頂。
最終榜單
現(xiàn)在最偉大的12個(gè)
12.AOL即時(shí)通信工具
11.Digg
10.Hotmail
9.魔獸世界
8.Wikipedia
7.XMLHttpRequest對(duì)象集
6.Amazon.com
5.eBay
4.Well
3.Craigslist
2.AltaVista
最后出場(chǎng)的,也是史上12個(gè)最優(yōu)秀Web軟件的第一名。
布納斯·李使網(wǎng)絡(luò)重返簡化的平臺(tái),并因此帶出了新理念和新機(jī)遇。這個(gè)平臺(tái)基于異步通信,當(dāng)某個(gè)系統(tǒng)空閑時(shí)就把消息傳遞給另外一個(gè)系統(tǒng),而不需要在傳輸開始時(shí)雙方系統(tǒng)都保持空閑。
在這個(gè)平臺(tái)上,用戶一次會(huì)話不包含以前的歷史
在開發(fā)出Craigslist、Hotmail或其他用戶密集型站點(diǎn)之前,需要有軟件能夠快速處理數(shù)以百萬計(jì)的HTML頁面,而且能夠提取后臺(tái)數(shù)據(jù)庫信息和其他資源。
這時(shí)候,Apache網(wǎng)頁服務(wù)器出現(xiàn)了。大多數(shù)早期的網(wǎng)站管理員使用的都是美國國家超級(jí)計(jì)算應(yīng)用中心(NCSA)的HTTPd服務(wù)器,是早期的Web服務(wù)器,由該中心的羅伯特·麥克庫爾(Robert McCool)為超算應(yīng)用開發(fā)的。但是,該服務(wù)器處理高流量時(shí)并不夠靈活,需要更多API來與后臺(tái)系統(tǒng)進(jìn)行交互。
后來,Apache Group改進(jìn)了原版的NCSA HTTPd服務(wù)器。在第二個(gè)版本中,Apache Group把這個(gè)服務(wù)器拆分成一系列的模塊,這就形成了Apache Web Server2.0。經(jīng)過重新設(shè)計(jì),它可以讓不同的貢獻(xiàn)者專注于在服務(wù)器的不同部分工作而不會(huì)影響其他人。
1998年,IBM宣布取消其自有的Web服務(wù)器的開發(fā),表示會(huì)把Apache集成到其WebSphere中間件中。IBM此舉對(duì)在商業(yè)應(yīng)用中采用開源軟件產(chǎn)生了正面的影響,并引起了Apache的競(jìng)爭(zhēng)對(duì)手微軟的Internet Information Server用戶的注意。
Apache是一個(gè)自愿參加的項(xiàng)目,在這里,經(jīng)驗(yàn)豐富的開發(fā)人員可以交換想法,打包作品,清除軟件的Bug并把完成的
Apache處理了用戶的靈活性問題,并且正在建立PHP的緊密聯(lián)系。PHP是一種腳本語言,它能夠把站點(diǎn)的不同元素捆綁在一起,并且提供連接數(shù)據(jù)庫和網(wǎng)頁的小程序。它未來可能在Web上占主導(dǎo)地位。
快速訪問數(shù)據(jù)意味著網(wǎng)頁可以即時(shí)更新最新信息,或者提供個(gè)性化網(wǎng)頁。Apache與早期的開源數(shù)據(jù)庫MySQL關(guān)系緊密,這個(gè)數(shù)據(jù)庫最初是為了快速閱讀和處理數(shù)據(jù)而設(shè)計(jì)的,比較適應(yīng)新的Web。Apache既有創(chuàng)新
萬維網(wǎng)從計(jì)算回歸到簡單化的平臺(tái)而且開啟了一系列未來發(fā)展之門。最優(yōu)秀的Web軟件正是體現(xiàn)了這些可貴的可能性。
Apache Web Server和它的同伴們就像是新時(shí)代的預(yù)言家。我們只能朦朧地感知到那個(gè)時(shí)代的一些特征,但是許多人都開始認(rèn)為,Web一定會(huì)有更多開放的標(biāo)準(zhǔn),更多免費(fèi)的軟件和更加
聯(lián)系客服