2012年9月3日 星期一

為什麼網址前要加「http://」?一探電腦世界的七大謎團-原也網頁設計、網站規劃、網站行銷

  引用自http://wired.tw/2012/08/23/arcana-of-computing/index.html

(圖片來源:Pixel y Dixel)

為什麼電子郵件地址裡面有「@」的符號?為什麼在造訪網站的時候要鍵入「http://」字串?為什麼我們要花在同時按Ctrl、Alt和Delete鍵的時間這麼多?

為什麼這些現代電腦的怪癖會進入我們的日常生活,而且再也沒有離開過?當你追本溯源,常常會發現這些電腦秘辛來自一個非常私密、某個電腦先驅者要做抉擇的時刻。 

有時候,這些選擇是隨機的。有時候,這些是經過深思熟慮之後才做出的選擇。不過更多的情況是,他們也沒有想的太多。

我們從來自英國的Tim Berners-Lee開始談起,他7月27日的時候出現在英國倫敦的奧運開幕典禮上。80年代晚期至90年代之間,Berners-Lee在瑞士的歐洲核子研究組織(CERN)的核能研究實驗室工作時發明了全球資訊網(worldwide web)。英國是第三次承辦奧運,所以索性利用這個機會提醒全世界網路是英國人發明的。

現在整個世界似乎覺得Berners-Lee創造了整個網路,不過這不能算是英國的錯。

網路的起源可以追溯到1960年代。Berners-Lee做的其實是發明網路瀏覽器,一種可以透過網路分享資訊、利用超文本(hypertext)連上網路的方法。

Berners-Lee是決定每個網址的開頭必須要有「http://」的人。這當然不是最有品味的選擇,但他也無須對此道歉。Berners-Lee最近告訴我們,當他設計網址的時候,網址其實不應該被每個網路使用者看到。本來網址只給網路幕後的工程師看。

Berners-Lee說:「網路最初的設計不會讓使用者看到『http://』。使用者只會看到文字、然後可以點擊連結。在原本的網路瀏覽器中,你必須打開特殊的連結檢查器(link inspector)才能看到網址。這就是為什麼我不擔心『http://』看起來很醜的緣故。因為沒有人會真的看到嘛。」

HTTP是超文本傳輸協定(hypertext transfer protocol)的縮寫,這是讓網頁能夠在網路中移動的根本。此外,Berners-Lee使用冒號和斜線的原因是,它們是Berners-Lee這位電腦專家本身所熟悉的東西。兩條斜線的靈感來自電腦工作站Apollo/Domain的檔案系統。

Berners-Lee說;「放兩條斜線在那邊是因為在某些電腦系統中,這代表著:『我們現在位於電腦的外面。』一條斜線代表本機檔案系統。兩條斜線是給電腦外面的檔案用的。」

Apollo/Domain已經不復存在。不過這些斜線還在,而且看起來短時間內不會消失。



(圖片來源: whlwcl)

Ray Tomlinson則是電子郵件地址裡面會有「@」符號的原因。

1970年代早期,Tomlinson是一名服務於美國波士頓一間叫做「Bolt, Beranek and Newman」公司的工程師。這間公司是發明ARPAnet的重要推手之一。ARPAnet是網路的前身。Tomlinson負責打造DEC PDP-10迷你電腦的作業系統,這台電腦可以連上新興的網路。某天,Tomlinson決定這台電腦需要一個訊息系統(messaging system)。

結果他發明了「SNDMSG」指令,這是「送出訊息」(send message)的縮寫。很多人稱呼這個系統是世界上第一個電子郵件程式。有些人不這麼認為。不過不能否認這是「@」符號用在電子郵件的開端。

是的,這個符號坐在用戶名稱(收件人)和伺服器電腦(可以聯絡上收件人的地方)之間。Tomlinson最近告訴我們:「我看著鍵盤,然後我想:『哪個鍵不會和用戶名稱搞混呢?』如果每個用戶名稱裡面都有一個「@」符號,選擇「@」符號就沒有什麼意義。結果跟我想的相反。用戶名稱裡面用了逗號、斜線還有中括號。剩下的三、四個符號裡面,「@」符號最有意義。它代表使用者在哪裡(at)。」



(圖片來源:Filippo Minelli)

Dave Bradley是打造原始IBM電腦的12條好漢之一。不過他的名氣不止於此。他就是發明Ctrl-Alt-Del的人。

這套「三指致敬禮」現在正在退流行。不過三十多年來,這是地球上讓桌機和筆電開機、關機和重開機的方法。

當年Bradley在製作第一台電腦的時候,對每次重開機都要等待開機自我檢測(Power-On Self Test,POST)這件事感到厭倦。所以他發明了捷徑:Control+Alt+Escape,這樣就可以避開開機自我檢測了。

後來他把Escape鍵換成Delete鍵。自此之後,重開機需要用到兩隻手。

2005年,Bradley在一則訪談中提到:「這不是什麼靈機一動的神聖時刻。也不是像福爾摩斯常說的:『華生,來幫我一下。』這種時刻。這只不過是眾多打造電腦需要做的事之一。」



(圖片來源:darthpedrius)

為什麼世界上最普及的程式語言叫做C語言
因為它排在B語言之後。

1970年代早期,貝爾實驗室的Dennis Ritchie和Ken Thompson需要一個打造UNIX作業系統的好方法,所以他們創造了C語言。他們稱呼這個程式語言為C語言是因為他們已經做好一個叫做B語言的程式語言。

根據不同消息來源指出,B語言的命名可能是來自Thompson的妻子Bonnie或是BCPL。BCPL是劍橋在1960年代中葉所發展的程式語言。(嗯,但我們比較喜歡Bonnie那個故事。)  



(圖片來源:Wired/Ariel Zambelich)

如果你現在使用蘋果電腦,你會注意到空白鍵旁邊有一個上面有小花圖案的奇怪按鍵。

這個鍵是指令鍵(command key),讓使用者可以很快地打開蘋果電腦裡面的特殊工具,而且這個鍵只限用於蘋果電腦。

小花按鍵的由來是因為賈伯斯不喜歡原本的指令鍵圖案,原本的圖案是蘋果的品牌標誌。我們不太瞭解這個故事的意義是什麼,不過故事是這樣的。賈伯斯要求設計按鍵的Andy Hertzfeld重新設計圖案,所以Hertzfeld尋求Susan Kare的幫忙, Kare是設計許多蘋果相關標誌的人。

Kare設計的圖案其實不是一朵花。這個圖案的靈感來自瑞典露營區標示景點的方法。



(圖片來源:Tim Bray/Wikicommons)

最重要的雲端運算世代的開源軟體計畫Hadoop又是怎麼來的呢?你一定猜不到,它命名的依據竟然是一隻黃色填充大象玩偶。

Hadoop是一個進行大量複雜運算處理的平台,可以在許多電腦伺服器上運作,打造這個平台的軟體工程師叫做Doug Cutting。

Cutting從兩篇Google發表的學術論文取材、打造這個平台,使他可以很容易製作網路的索引(index),以便給他製作的開源搜尋引擎Nutch使用。後來他很快就被Yahoo挖角,其後的五年內,Hadoop變成支撐網路的主流軟體平台之一。使用這個平台的人很多,像是Facebook、Twitter、eBay和微軟等等。

Cutting將這個平台取名為Hadoop是因為他需要一個科技界從來沒用過的名字。Hadoop是他兒子稱呼黃色填充大象玩偶的名字。Cutting最近告訴《WIRED》他兒子向他要求版稅。Cutting說:「我已經告訴他,他的大學學費算我的。」



(圖片來源: U.S. Naval Historical Center Online Library)

好吧,接下來這個話題有點噁心。
為什麼我們稱呼軟體的漏洞為「bug」呢?

這個詞的來源可以追溯到傳奇人物Grace Hopper身上,這位美國海軍軍官打造了第一個電腦程式語言編譯器(compiler),也奠定世界上最長壽的程式語言Cobol的根基。

1940年代晚期,Hopper在美國哈佛大學電腦實驗室(Computation Laboratory)和早期電腦Mark II 和Mark III奮鬥。某日,Mark II停擺了,有個叫做Bill Burke的人發現停擺的原因是因為一隻死掉的蛾卡在機器裡面。

雖然「bug」一詞在這個事件之前已經被用過,不過這次不一樣。當Hopper在機電式計算機(electromechanical computer)的工作記錄簿裡面記下這樁意外的時候,Hopper把死掉的蛾貼在記錄簿裡面。

記錄簿裡寫著:「第一次真的有蟲介入。」(First actual case of bug being found.)


原也網頁設計、網站規劃、網站行銷。

沒有留言:

張貼留言