施樂帕洛阿爾託研究中心(PARC):“資訊架構師”
編譯自:1985年IEEE綜覽上的一篇介紹PARC的文章—— ofollow,noindex">Inside the PARC: the `information architects'
1969年末,施樂公司董事長C. Peter McColough告訴紐約安全分析師協會(New York Society of Security Analysts),施樂公司決心開發“資訊架構”,以解決“知識爆炸”帶來的問題。傳說McColough隨後求助於研究與開發高階副總裁Jack E. Goldman,並說,“好吧,去建立一個實驗室,瞭解下我剛才的意思。”
Goldman的說法不同。1969年,施樂剛剛收購了一家大型計算機制造商科學資料系統(SDS)。“當施樂收購SDS的時候,”他回憶道,“我很快走進Peter McColough的辦公室,說,‘瞧,既然我們從事數字計算機業務,我們最好有一個研究實驗室!”
無論如何,結果就成立了加州的施樂帕洛阿爾託研究中心(PARC),這是我們這個時代最不尋常的企業研究機構之一。PARC是施樂公司三個研究中心之一;另外兩個在紐約的韋伯斯特和加拿大的多倫多。僱傭了大約350名研究人員、經理和後勤人員(相比之下,AT&T公司拆分前的貝爾實驗室僱傭了大約25000名員工)。PARC已經成立15年了,產生或培育的一些技術所帶來的發展,包括了:
- 帶有滑鼠和重疊視窗的Macintosh計算機。
- 電視新聞節目中豐富多彩的天氣圖。
- 鐳射印表機。
- 超大規模積體電路系統設計結構,現已在100多所大學授課。
- 辦公室裡連線個人計算機的網路。
- 用於讀寫光碟的半導體雷射。
- 結構化程式語言,如Modula-2和Ada。
20世紀70年代中期,世界前100名電腦科學家中有近一半在PARC工作,該實驗室在其他領域擁有類似的實力,包括固態物理和光學。
一些研究人員說,PARC是20世紀60年代和那十年的人民權利哲學的產物,提高生活質量。該中心成立於1970年,與其他主要的工業研究實驗室不同;它的工作並沒有與其公司母公司的產品線捆綁在一起。與大學研究實驗室不同,PARC有一個統一的願景:它將致力於開發“資訊架構”。
這句話的起源不清楚。McColough將其歸功於他的講稿撰寫人。講稿撰寫人後來說,他和McColough都沒有對這句話有具體的定義。
所以,幾乎每個在PARC成立之初就加入的人,對該中心的章程有著不同的看法。這有其優點。由於專案不是從上面分配的,研究人員組成了他們自己的小組;對一個專案的支援取決於專案的策劃者能讓多少人蔘與其中。
“這句話是‘Tom Sawyer’,”James G. Mitchell回憶道,他於1971年從已不存在的伯克利計算機公司加入了PARC,他現在是帕洛阿爾託Acorn研究中心的研究副總裁。“有人會認為某件事確實很重要。他們會開始研究,組成小組,然後試圖說服其他人和他們一起做這件事。”

第一步
當Goldman成立PARC時,他的第一個決定是讓他的老朋友George E. Pake來管理它。Pake是密蘇里州聖路易斯華盛頓大學的執行副校長、教務長和物理學教授。Pake做出的第一個決定就是僱傭當時在猶他大學的Robert Taylor,幫助他為電腦科學和系統科學實驗室招聘工程師和科學家。

Taylor曾擔任ARPA(美國軍方高階研究計劃局)資訊處理技術辦公室主任,上世紀60年代中後期,他和其他人資助了計算機研究的全盛時期。
PARC從一個小組織開始——可能不到20人。其中9個人來自伯克利計算機公司,這是一家小型的大型計算機公司,Taylor曾試圖說服施樂公司收購它,作為啟動PARC的一種方式。(BCC的許多人負責SDS 940的設計,1968年,施樂公司收購了科學資料系統的計算機。)
20名PARC員工住在一棟租來的小樓裡,“用著租來的椅子,租來的辦公桌,上面放著4個按鈕的電話機,沒有前臺,”David Thornburg回憶說,他於1971年從研究生院畢業後加入PARC的綜合科學實驗室。該組織認為應該有自己的計算機。
Mitchell說:“沒有機器,就進行語言研究和編譯器研究有點困難”。他們想要的計算機是數字裝置公司(DEC)的PDP-10。

艾倫·凱(Alan Kay)回憶道:“在Datamation[雜誌]的廣告中,施樂的SDS和DEC之間存在著競爭。”1970年末,他從斯坦福大學人工智慧實驗室來到PARC做研究員。“當我們想要一臺PDP-10時,施樂公司設想一名攝影師在PARC實驗室拍到DEC的盒子會怎樣,所以他們說,‘用Sigma 7怎麼樣?’”
“我們認為要花三年時間為Sigma 7做好作業系統,而我們可以在一年內構建一個完整的PDP-10。”
結果就搞出了MAXC(Multiple Access Xerox Computer),它模擬了PDP-10,但是使用了半導體動態RAMs代替核心。MAXC在硬體和軟體上投入了大量精力,作為ARPAnet上的一個節點,它保持了持續可用性的歷史記錄。
MAXC對許多發展至關重要。英特爾公司生產了用於MAXC設計的1103動態儲存晶片,獲得了最初的收益。凱(Kay)回憶道:“當時從英特爾購買的1103儲存晶片大部分都不起作用”。因此,PARC的研究人員Ghuck Thacker製作了一個為MAXC篩選晶片的晶片測試器。該測試器的後期版本,基於Alto個人計算機,也是在PARC開發的,最終被英特爾在其生產線上使用。
而且MAXC為PARC提供了構建計算機的經驗,這對PARC中心是有好處的。“如果我們買了PDP-10,我們需要的三個能力就無法獲得”,PARC早期的實驗室經理回憶道。“我們需要開發一個供應商社群——完成設計佈局、印刷電路板等等——唯一的方法就是用一個專案來推動這件事。我們還需要半導體儲存器,這是PDP-IOs沒有的。我們認為我們需要了解更多關於可編微程式機器的知識,儘管我們沒有使用這些功能。”
MAXC為PARC設定了一種模式:構建自己的硬體。這讓研究人員有了必須變成現實的願景——至少在小範圍內。
凱說:“最初的創始人發誓,我們絕不會做一個不是為100個使用者設計的系統。這意味著如果是分時系統,你必須在其中執行100人;如果是一種程式語言,那麼100個人必須在不用一直握著的情況下進行程式設計。如果是個人計算機,必須能夠建造100臺。”
這種構建工作系統的政策不是唯一的研究方法;Mitchell回憶說這是PARC爭論的焦點。
“系統研究需要構建系統,”他說。“否則,你不知道你的想法是否好,或者實施起來有多困難。但是有人認為,當你在構建東西的時候,你並沒有在做研究。”
自構建MAXC以來,該中心已經制作了幾十個硬體和軟體系統的原型——原型有時是數以千計。
美國開發的第一臺個人計算機通常被認為是MITS Altair,它於1976年作為業務愛好者的套件出售。幾乎在同一時間,Apple I也可以買得到,同樣以套件的形式。
但是到那年年底,也有200臺Alto個人計算機在日常使用中,其中第一臺是在1973年建造的。當PARC電腦科學實驗室的研究人員正在完成MAXC,並開始使用它時,他們在系統科學實驗室的同行們正在用Nova 800處理器和高速字元生產器組裝一臺分散式計算機系統。1972年9月,PARC電腦科學實驗室的研究人員Butler Lampson和Chuck Thacker找到了系統科學實驗室的艾倫·凱,問道:“你有經費嗎?”。
凱告訴他們,他有大約25萬美元專用於購買更多的Nova 800和字元生成的硬體。
“你想讓我們給你造一臺計算機嗎?”Lampson問凱。
“我非常樂意,”凱回答。1972年11月22日,Thacker和Ed McCreight開始建造Alto。據報道,施樂公司的一名高管堅稱開發一個大型的硬體系統需要18個月的時間,這激怒了Thacker。當Thacker爭辯說他能在三個月內做到這一點時,他立下一個賭注。
花了三個多月的時間,但超出時間並不多。1973年4月1日,Thornburg回憶道,“我走進了原型Alto所在地下室,線路連線在一個裝滿Novas的架子上,看到Ed McCreight坐在椅子上,顯示屏左上角寫著‘Alto lives’”。
凱說Alto被證明是“滿足了Lampson的需求,Thacker的需求,以及我的需求。Lampson想要一臺500美元的PDP-10,”他回憶道。“Thacker想要一臺速度快10倍的Nova 800,我想要一臺可以隨身攜帶、孩子們可以使用的機器。”
Alto之所以能這麼快被建成,是因為其簡單性。凱回憶道,處理器“僅僅是一個計時器”——在1973年的原始積體電路技術中,只有160個晶片。這種架構可以追溯到TX-2,它是在20世紀50年代後期由麻省理工學院林肯實驗室用32個程式計數器建造的。擁有16個程式計數器的Alto,將在任何給定時刻從具有最高優先順序的計數器中獲取其下一條指令。執行多個任務不會產生額外開銷。當機器繪製螢幕顯示時,動態儲存器每2毫秒重新整理一次,鍵盤被監控,資訊被從磁碟傳進和傳出。優先順序最低的任務是執行使用者的程式。
原型是成功的,更多的Altos被建造。對使用者介面、計算機語言和圖形的研究開始認真進行。Lampson、Thacker和其他專案的策劃者獲得了第一批模型。許多PARC的研究人員投入進來以加快生產進度,但是似乎從來沒有滿足需求。

“有一個實驗室在生產Altos,周圍全是電路板,任何人都可以進去工作,”Daniel H.H. Ingalls回憶說,他現在是加利福尼亞州庫比蒂諾Apple Computer公司的首席工程師。
仍然在施樂公司工作的Ron Rider,“在Alto無法獲得的時候,他有一臺Alto”,Bert Sutherland回憶說,他於1975年加入了PARC,擔任系統科學實驗室的經理。“當我問他是怎麼得到的,他告訴我,他去了各個實驗室,收集了人們給他的零件,然後自己組裝起來了。”
網路
按照今天的標準,Alto不是一臺特別強大的計算機。但是,如果幾臺Altos與檔案伺服器和印表機連線在一起,結果就看起來像是未來的辦公室。
PARC成立之前——1966年,在斯坦福大學,就已經討論了本地計算機網路的想法。Larry Tesler,現任蘋果公司面向物件系統的經理,畢業於斯坦福大學,當該大學考慮購買IBM 360分時系統時,他還在校園裡。
“我和其中一個人建議他們購買100臺PDP-ls,並把它們連線到一個網路中,”Tesler說。“一些顧問認為這是個好主意;耶魯的一位顧問Alan Perlis,告訴他們這是應該做的,但是斯坦福大學中以IBM導向的人認為購買分時系統會更安全。他們錯過了發明本地網路的機會。”
所以PARC最終又有收穫了另一項第一。在建造Alto的同時,Thacker設想了乙太網,一種以儘可能簡單的方式連線機器的同軸電纜。它部分基於夏威夷大學於20世紀60年代末,開發的一個分組無線網路Alohanet。
凱說:“Thacker說同軸電纜只不過是捕獲以太,所以這一部分在Robert Metcalfe和David Boggs出現之前就已經確定好了——這將是分組交換,而且將是一個碰撞型網路。但是Metcalfe和Boggs花了一年的時間來研究如何做這件該死的事情。(Metcalfe後來在加州山景城成立了3Com公司;Boggs現在在加州洛斯阿爾託斯的DEC Western Research工作。他們兩人擁有乙太網的基本專利。)
“我一直認為Boggs是一名業餘無線電操作員這一事實很重要,”Sutherland說。“這對乙太網的設計方式有很大影響,因為乙太網從根本說上不能可靠地工作。這就像公民波段無線電,或者任何其他型別的無線電通訊,從根本上來說,這是不可靠的,就像我們對電話的看法一樣。因為你知道它基本上不起作用,所以你做了所有的防錯性程式設計——‘再說一遍,這是亂碼’協議,這是為無線電通訊設計的。這使得最終的網路功能非常可靠。”
“Boggs是個業餘無線電愛好者,知道你可以通過不可靠的媒介進行可靠的通訊。我經常想知道如果他沒有那個背景會發生什麼,”Sutherland充道。
乙太網建成後,使用起來相當簡單:一臺想要傳送訊息的計算機會等待,並檢視電纜是否暢通。如果是暢通的,機器會將資訊放在一個以收件人地址開頭的資料包中傳送。如果兩個訊息發生衝突,傳送它們的機器會各自等待一段隨機時間,然後再試一次。
網路的一個創新用途與人們相互發送資訊無關;它只涉及機器之間的通訊。因為在那些日子裡,動態儲存晶片是如此的不可靠,所以沒有做其他事情的時候,Alto也會進行儲存檢查。Thornburg說,它對發現壞晶片的反應非常顯著:“它會發出一條資訊,告訴你哪臺Alto壞了,哪個插槽有壞掉的電路板,哪行和哪列有壞掉的晶片。我發現這一點的原因是,有一天修理工過來告訴我說,‘任何時候你準備好了關機,我需要修理你的Alto’,我甚至不知道出了什麼問題。”
在開發乙太網的同時,未來辦公室的另一個關鍵因素是鐳射印表機。畢竟,沒有有效列印的手段,可以顯示多種樣式文件的螢幕和能夠將文件從一個地方傳送到另一個地方的網路有什麼用?
鐳射印表機的想法來自施樂的紐約韋伯斯特研究實驗室,這個想法的支持者是Gary Starkweather。當時的研究副總裁Goldman回憶說,他當時的想法是用鐳射把資訊,以數字形式繪製到影印機的硒鼓或皮帶上。Starkweather向負責高階開發業務產品組的副總裁George White彙報。
“George White找到我,”Goldman說,“聽著,Jack,我找了一個叫Gary Starkweather的了不起的人,他用鐳射將視覺資訊打印出來,當然是用的施樂機器。這對施樂來說是一個多麼理想的概念。但是我不認為他在Rochester會有什麼發展;沒有人會聽他的,他們不會做任何非常領先的事情。你為什麼不把他帶到帕洛阿爾託的新實驗室?”
新任命的PARC經理Pake抓住了這個機會。Starkweather和其他一些來自Rochester的研究人員被轉移到帕洛阿爾託,並啟動了PARC的光學科學實驗室。Starkweather和Ron Rider製造的第一臺鐳射印表機EARS(Ethernet-Alto-Research character generator-Scanning laser output terminal),開始列印Altos生成的文件,並於1973年通過乙太網傳送給它。
Thornburg說,EARS並不完美。它有一個動態字元生成器,當字元和圖形進入時,可以為它們建立新的模式。如果頁面中沒有大寫的“Q”,字元生成器將通過不生成大寫“Q”的模式來節省內部儲存器。但是如果頁面中包含一個非常複雜的圖片,那麼字元生成器就會用盡模式;“無法列印的圖紙中存在一定程度的複雜性,”Thornburg回憶道。
儘管有這些缺點,鐳射印表機仍然比當時用的行式印表機、電傳印表機和傳真印表機有了巨大的進步,Goldman推動其儘快實現商業化。但是施樂公司拒絕了。事實上,PARC歷史上的一個痛點是,母公司似乎無法利用研究人員的發展。
1972年,當Starkweather建造第一個原型時,勞倫斯利物莫國家實驗室為了推動這項技術,提出了五臺鐳射印表機的投標申請。但是Goldman無法說服施樂光電系統分部報告的那位高管(其背景是會計和財務)允許投標。原因是:如果鐳射印表機像影印機一樣經常需要修理,施樂公司可能會在合同有效期內損失15萬美元,儘管最初的證據表明,列印所造成的磨損比複製要少得多。
1974年,當John Ellenby領導的一小群PARC研究人員,開始從施樂影印機部門購買二手影印機並在其中安裝鐳射頭時,鐳射印表機才首次在PARC之外面世。John Ellenby建造了Alto II,Alto II是Alto的生產線版本,他現在是加州山景城Grid Systems公司的副總裁。由此產生的印表機被稱為Dovers,在施樂公司內部和大學裡被使用。Sutherland估計製造有幾十臺這樣的印表機。
他回憶道:“他們把印表機所有的光學儀器都去掉了,然後把它們送回影印機部門”。他說,即使在今天,他也會收到來自大學的鐳射列印檔案,在這些檔案中他可以識別出Dover字型。
也是在1974年,紐約Rochester施樂總部的產品審查委員會,終於就公司應該生產哪種電腦印表機做出了決定。Goldman表示:“一群對技術一無所知的馬屁精正在做出決定,在做出決定前一週,我看到它正走向CRT技術”。(施樂公司的另一個小組開發了一種列印系統,
通過在特殊的陰極射線管上顯示的文字,會聚焦在影印機的硒鼓鼓上並打印出來。)
“那是星期一晚上。我徵用了一架飛機,”Goldman回憶道。“我對策劃副總裁和營銷副總裁的說,‘你們兩個跟我走。調整你們週二的計劃。今晚你們跟我一起去PARC。我們將回來參加週三上午8 : 30的會議’。我們晚上7點左右出發,1點到達加利福尼亞,那裡的時間是10點,上帝保佑,PARC的夥伴們做了一個漂亮的演示,展示了鐳射印表機可以做什麼。
“如果你在和市場營銷或策劃的人員打交道,讓他們親身體驗一下。所有的圖表和幻燈片都沒用,”Goldman說。
產品審查委員會選擇了鐳射技術,但是有延期。“他們不會讓我們在7000系列就把它們拿出來,”Goldman說,他指的是Ellenby的團隊使用的老式印表機。“相反,他們堅持要推出新的9000系列,這個直到1977年才推出。”
從純粹的經濟角度來看,施樂公司在PARC的第一個十年投資回報,來自於鐳射印表機的利潤。這也許有些諷刺,因為未來辦公室的一個願景是無紙化。
“我認為PARC產生的紙張比任何其他辦公室都多,因為按下一個按鈕,你可以列印30份任何報告”,前PARC技術人員、VLSI Technology公司的使用者設計技術副總裁Douglas Fairbairn觀察到,“如果報告長達30頁,那就是1000頁,但仍然只需要幾分鐘。然後你說,‘我想要那張照片在另一頁’,那是另外1000頁。”
到20世紀70年代中期,大多數PARC研究人員辦公室裡的Altos,可以根據他們的需求來定製。Richard Shoup的Alto一個有彩色顯示器。Taylor的Alto有一個揚聲器——每當他收到電子郵件時,就會播放“The Eyes of Texas Are Upon You”。
而且,自Alto在PARC被廣泛使用以來的10年間,人們已經發現,個人計算機既可用於娛樂,也可用於工作。PARC的研究人員是最早一批發現這一點的人。
“晚上,每當我在帕洛阿爾託的時候,”Goldman說,“我會去實驗室看艾倫·凱創造一款遊戲。這早在電子遊戲出現之前,這些孩子一直在創造這些東西,直到午夜,凌晨1點。”
Sutherland說:“我喜歡觀察一些第一次,施樂在全國範圍內舉行了第一次電子抽獎活動。在施樂,我收到了我的第一個電子垃圾郵件,第一個電子工作驗收,和第一個電子訃告。”
當施樂914影印機在20世紀60年代初問世時,“我是一個複製狂,”Lynn Conway說,他於1973年從Memorex公司加入PARC,現在是密歇根大學的副院長兼電子工程和電腦科學教授。“我喜歡製作東西並分發出去,例如地圖——各種各樣的東西。在1976年的施樂環境中,突然之間,你可以創造出很多東西。”
幾十個俱樂部和興趣小組在網路上成立了。不管PARC員工的愛好或興趣是什麼,他或她都可以找到一個可以通過電子方式分享興趣的人。許多嚴肅的工作也是通過電子方式完成的:如報告、文章,有時整個設計專案都是通過網路完成的。
所有這些電子通訊的一個副作用是忽視了外表和其他外身份的偽裝。
John Wamock說:“PARC的人傾向於擁有非常強烈的個性,有時在設計會議上,這些個性比技術內容來得更強一些。”他於1978年從Evans & Sutherland公司加入PARC,他在那裡從事高速圖形系統的工作。通過電子郵件工作消除了設計階段的個性問題。電子互動對軟體研究人員特別有用,他們可以來回傳送程式碼。
Warnock現在是加州帕洛阿爾託Adobe Systems公司的總裁,描述了Interpress的設計,一種列印協議:“其中一名設計師在匹茲堡,一名在費城,我們有三人在這個地區,一對夫婦在加州埃爾塞貢多。這個設計幾乎完全是通過郵件系統遠端完成的;只有兩次,我們都是在同一個房間裡聚在一起。”
電子郵件對於跟蹤團隊專案也非常重要。
1972年從BBN公司加入PARC的Warren Teitelman說:“真正有用的能力之一是,儲存一系列關於特定主題的資訊,以便你可以參考。”他目前是山景城Sun Microsystems的程式設計環境經理。Teitelman補充道:“或者,如果有人來晚了,他們不瞭解來龍去脈,你可以通過向他們傳送所有信息來讓他們瞭解最新情況。”
但電子郵件有時在PARC會失控。有一次,Teitelman在一週不聯絡後,他登入系統,在他的郵箱中發現了600封郵件。
超級繪圖(Superpaint)
任何參加過商務會議的人都知道,今天的辦公室包括圖形和文字。1970年,現在是Aurora Systems公司董事長的Shoup,開始在PARC研究新的方法,在未來的辦公室裡以數字方式建立和處理影象。他的研究開創了電檢視形領域,併為他和施樂贏得了艾美獎。
Shoup回憶道:“很快就明白了,如果我們想做光柵掃描系統,我們應該做到與電視標準相容,這樣我們就可以很容易地獲得監視器、照相機和錄影機。”1972年初,他構建了一些簡單的硬體來生成抗鋸齒線條,到1973年初,這個名為超級繪畫(Superpaint)的系統完成了。
AIvy Ray Smith回憶說,這是世界上第一個完整的帶有8位幀緩衝器的繪圖系統,他曾在PARC的Superpaint工作,不久將成為加州聖拉斐爾皮克斯公司的副總裁兼首席技術官;這也是第一個使用多種圖形輔助工具的系統:簡單動畫的顏色查詢表,用於輸入的數字化平板電腦,直接在螢幕上混合顏色的調色盤。該系統還有一個實時視訊掃描器,這樣真實物體的影象可以被數字化,然後進行操作。
Shoup說:“我在這個系統上做的第一件事是一些抗鋸齒的線條和圓圈,因為我寫了一篇關於這個主題的論文,但沒有完成這些例子。但是當我提交論文並被接受時,用來做例子的機器還沒有製造出來。”
到1974年年中,額外的軟體增強了Superpaint,允許它執行各種各樣的技巧,Smith剛剛完成了被稱為細胞自動機理論的數學分支的博士工作,他被僱來幫助這臺機器進行測試。他用Superpaint製作了一盤名為“Vidbits”的錄影帶,後來在紐約現代藝術博物館展出。
六個月後,他與PARC的最初合同到期,沒有續簽。Smith雖然失望,但並不驚訝,因為他發現並不是每個人都喜歡用電腦畫畫。
“彩色圖形實驗室是一個狹長的房間,有七扇門通向裡面,”他回憶道。“你必須通過它去很多其他地方。大多數人走過時,會看著螢幕並停下來——即使是最老套的東西,也從來沒有見過。自行車彩色地圖以前從未見過。但也有一些人會經過而不會停下來。我想不出人們怎麼能穿過那個房間,而從不停下來看看。”
除了其他人對視訊影象漠不關心外,還有一個原因可能是Smith的離開。在一場公開的電視節目中,很多觀眾第一次看到Superpaint,這是洛杉磯KCET電臺製作的節目“Supervisions”。“它只是用了幾次才能產生很少的色彩迴圈效果,”Shoup回憶道。但是施樂對於在節目中未經授權使用系統並不感到愉快。“Bob Taylor整整一下午和Alvy [Smith]坐在一起,Alvy按下錄影機上的擦除按鈕,從錄影帶的每個副本中刪除了施樂的徽標,”Shoup繼續道。(這是委員會看到的其中一個錄影帶,授予了施樂公司艾美獎。)
Shoup留在了PARC,得到了凱的研究小組的支援,而Smith則繼續前行,獲得了國家教育協會的資助,從事計算機藝術。他得到了紐約理工學院的支援,在那裡他幫助開發了Paint,這成為Ampex Video Art(AVA)和N.Y. Tech’s Images的基礎,現在仍然在使用這個系統。
當Shoup獨自在PARC從事Superpaint時,Smith並不是唯一一個在全國範圍內尋找幀緩衝區的Superpaint迷。David Miller,現在被稱為David Em,和David DiFrancesco是第一批用畫素繪畫的藝術家。當Em失去了對Superpaint的訪問權時,他開始了長達一年的尋找幀緩衝區的探索,最終他進入了加州的噴氣推進實驗室。
最後,在1979年,Shoup離開了PARC,創辦自己的公司來製造和銷售paint系統——Aurora 100。他承認,在設計Aurora方面,他並沒有取得任何技術上的飛躍,這只是他在PARC的第一代系統的商業化的第二代版本。
Shoup說:“我們為下一代製造的基於Aurora的機器,與我們七八年前在PARC思考的事情直接相關。”
Aurora 100現在被公司用來進行內部培訓電影和演示圖形。今天,成千上萬的藝術家正在用畫素繪畫。僅在舊金山,1985年的Siggraph藝術展就收到了4000個參賽作品。
滑鼠和模式
大多數知道滑鼠是電腦外設的人,認為它是蘋果公司發明的。行家會糾正他們,說這是施樂PARC開發的。
但實際上鼠標出現在PARC之前。“我在1966年看到了滑鼠被用作指示裝置的演示,”Tesler回憶說。“加州門洛帕克斯坦福國際研究所的Doug Englebart發明了它。”
在PARC,Tesler開始證明滑鼠是個壞主意。“我真的不相信它,”他說。“我認為游標鍵要更好。”
“我們測試了一些從未見過電腦的人。在三四分鐘內,他們愉快地使用游標鍵編輯完。那時,我正準備向他們展示滑鼠,並證明他們通過滑鼠選擇文字的速度比使用游標鍵要快。然後我要證明他們不喜歡這樣。”
“事與願違。我會讓他們花一小時使用游標鍵,這讓他們真正習慣了這些游標鍵。然後我會教他們如何使用滑鼠。他們會說,‘這很有趣,但我認為我不需要了。’然後他們會玩一會兒滑鼠,兩分鐘後他們再也不碰游標鍵了。”
在Tesler的實驗之後,大多數PARC研究人員接受了滑鼠作為Alto的合適外設。一個不喜歡滑鼠的人是Thornburg。
“我不喜歡滑鼠,”他說。“這是Alto最不可靠的元件。我記得去PARC修理室的時候——那裡有一個鞋盒用來裝好的滑鼠,還有一個50加侖的圓桶來裝壞的滑鼠。而且這東西很貴——對大眾市場來說太貴了。”
“雖然我不介意用滑鼠進行文字操作,但我認為這完全不適合畫畫。舊石器時代,人們停止用石頭繪畫,這是有原因的:石頭不是合適的繪畫工具;人們轉向使用棍棒。”
一直在PARC從事材料研究的冶金學家Thornburg,開始研究替代的指向裝置。1977年,他發明了一款觸控平板電腦,並將其連線到一臺Alto上。大多數看過它的人都說:“這很好,但它不是滑鼠,”Thornburg回憶道。他的觸控平板最終成了一款產品:Koalapad,這是一款售價不到100美元的家用電腦外設。
“很明顯施樂公司不想用它做任何事情,”Thornburg說。“他們甚至沒有申請專利保護,所以我告訴他們Td喜歡它。經過大量的兜售後,他們說OK。”
Thornburg於1981年離開施樂,在Atari工作了一段時間,然後與另一名前PARC員工一起創辦了一家公司——現在是Koala Technologies,來製造和銷售Koalapad。
與此同時,儘管Tesler接受了滑鼠作為指向裝置的需求,但他對SRI的滑鼠工作方式並不滿意。“左手有一個五鍵按鍵組,右手有一個三鍵滑鼠。你會用左手敲擊一兩個鍵,然後右手用滑鼠指向某個東西,然後滑鼠上有更多的按鈕來確認你的命令。一個命令需要六到八次擊鍵,但是你可以讓雙手同時操作。專家可以非常快速地完成任務。”
SRI系統的模式非常複雜。在有模式的系統中,使用者首先指出他想做什麼——例如刪除操作。這將使系統處於刪除模式。然後,計算機等待使用者指出他想要刪除什麼。如果使用者改變主意並嘗試做其他事情,除非他首先取消刪除命令,否則他做不到。
在非模態系統中,使用者首先指向他想要改變的顯示部分,然後指出應該對其做什麼。他可以整天指著東西,不斷地改變主意,而且從來不需要執行命令。
讓普通使用者的情況變得更復雜(但是對於程式設計師來說更有效率),每個鍵的含義都有所不同,這取決於系統所處的模式。例如,“J”表示滾動,“I”表示插入。如果使用者試圖“插入”,然後在不取消第一個命令的情況下“滾動”,他最終會在文字中插入字母“J”。
PARC的大多數程式設計師都喜歡SRI系統,並開始在他們的專案中進行調整。“有很多人認為這是完美的使用者介面,”Tesler說。“每當有人建議改變它時,他們都會受到怒目而視的歡迎。”作為程式設計師,他們對這個事實沒有異議,鍵盤響應同時按下的鍵的組合,這些鍵以二進位制符號表示字母表。
Tesler開始測試非程式設計師的介面。他教新聘的祕書如何操作這臺機器,並觀察她的學習過程。“顯然以前沒有人這樣做過,”他說。“她在用滑鼠和按鍵上有很多問題。”
Tesler主張更簡單的使用者介面。“唯一和我意見一致的人是艾倫·凱(Alan Kay),”他說。凱支援Tesler嘗試在Alto上編寫無模式文字編輯器。
儘管當今大多數流行的計算機使用無模式軟體,Macintosh可能是最好的例子,但是Tesler的實驗沒有解決這個問題。
“MacWrite、Microsoft Word和Xerox Star都是以複雜模式的專案開始的,”Tesler說,“因為程式設計師不相信使用者介面可以靈活的、有用的和可擴充套件的,除非它有很多模式。事實證明,這並不是通過說服來實現的,顧客抱怨說,他們喜歡極簡無模式的編輯器,沒有比這個編輯器更好的功能了,因為這個編輯器有他們想不出如何使用的所有功能。”
孩子和我們
同樣簡化無模式的編輯器也適用於PARC的程式語言和環境。為了尋找一種孩子們可以使用的語言,可以經常看到凱(Kay)在幼兒園和小學學生中測試他的工作。
凱的目標是Dynabook:一臺簡單、便攜的個人電腦,可以滿足一個人的資訊需求,併為創造力提供一個渠道——寫作、繪畫和音樂創作。Smalltalk是Dynabook的語言。它基於在程式語言Simula中所倡導的類的概念,以及通過請求動作的訊息進行通訊的互動物件的想法,而不是直接對資料執行操作的程式。
Smalltalk的第一個版本是由凱、Ingalls和另一個PARC研究員Ted Kaehler之間一次偶然對話的結果。Ingalls和Kaehler正在考慮寫一個語言,凱說,“你可以在一個頁面上寫一個。”
他解釋道,“如果你看一下Lisp直譯器本身,這些東西的核心非常小。Smalltalk的核心甚至可能比Lisp更小。”
凱回憶說,這種方法的問題在於,“Smalltalk是雙重遞迴的:在你對引數做任何事之前,你就已經在使用函數了。”在這個語言第一個版本Smalltalk-72中,控制元件被儘快傳遞給了物件。因此,在Smalltalk中寫一個簡潔的Smalltalk定義非常困難。
“寫10行程式碼花了大約兩週的時間,”凱說,“很難看出這10行程式碼是否有效。”凱花了兩週的時間每天在早上4:00到8:00進行思考,然後和Ingalls討論他的想法。當凱完成後,Ingalls在Nova 800上用Basic語言編寫了第一個Smalltalk,因為那是當時唯一可用的語言,具有良好的除錯功能。
因為語言非常簡單,所以開發程式甚至整個系統的速度也相當快。凱說:“Smalltalk的規模很大,你可以出去喝一兩罐啤酒,然後回來,然後兩個人會在一個下午互相激勵,完成一個完整的系統。”從一次下午的開發中,重疊的視窗(windows)出現了。
視窗的概念起源於Sketchpad,這是由麻省理工學院的Ivan Sutherland在20世紀60年代早期開發的互動式圖形程式;Evans&Sutherland公司於20世紀60年代中期在一臺圖形機上實現了多個視窗。但是PARC的Diana Merry於1973年在Alto上實現了第一個多重重疊視窗。
“我們都認為Alto顯示器非常小,”凱說,“很明顯,如果沒有大顯示器,你必須有重疊的視窗。”
視窗之後出現了點陣圖動畫(Bitblt)的概念——將資料從儲存器的一部分到另一部分的塊傳輸,對字邊界的對齊沒有限制。Alto電腦的主要設計者Thacker,實現了一個名為CharacterOp的功能,將字元寫入Alto的點陣圖螢幕,Ingalls擴充套件了該功能,使其成為一個通用的圖形工具。Bitblt使重疊視窗變得更簡單,而且還使各種圖形和動畫技巧成為可能。
Ingalls回憶道:“1975年初,我給所有PARC的Smalltalk系統,做了一個演示,使用Bitblt來做選單和重疊的視窗及東西。後來有一群人找到我,說‘你是怎麼做的?我能得到Bitblt的程式碼嗎?’不到兩個月,這些東西就在整個PARC中得到使用。”
儘管閃光和令人印象深刻的,Smalltalk-72“是一個死衚衕”,Tesler說,“這是模稜兩可的。你可以閱讀一段程式碼,而不能分辨出哪些是名詞,哪些是動詞。你無法快速完成,而且無法編譯。”
Smalltalk的第一個編譯版本,寫於1976年,標誌著強調兒童可以使用的語言的結束。Ingalls說,這種語言現在是“一個成熟的程式設計環境,我們有興趣輸出它,並讓它廣為人知。”
Smalltalk的下一個主要版本是Smalltalk-80。凱不再爭辯說任何語言都應該足夠簡單,以便孩子可以使用。Tesler說,Smalltalk-80從最早版本的Smalltalk相反方向走得太遠:“它變得如此極端,使其可編輯、統一、可讀,它實際上變得難以閱讀,你肯定不想教孩子這個。”
凱看著Smalltalk-80說:“它不能被兒童使用是非常糟糕的,因為那是Smalltalk的目標。它又迴歸到資料結構型的程式設計,而不是模擬型的程式設計。”
當凱的小組正在為各年齡階段的兒童開發一種語言時,PARC內的一組人工智慧研究人員正在改進Lisp。Lisp是由Warren Teitelman和Daniel G. Bobrow帶到PARC的,他們來自馬薩諸塞州劍橋的Bolt, Beranek, & Newman公司,在那裡Lisp作為ARPA社群的一個服務被進行開發。在PARC,它被重新命名為Interlisp,增加了一個名為VLISP的視窗系統,並開發了一套強大的程式設計師工具。
在PARC的電腦科學實驗室,研究人員正在開發一種功能強大的系統程式語言。經過幾次迭代,該語言成了Mesa——一種模組化語言,它允許多個程式設計師同時從事一個大型專案。關鍵在於介面的概念——程式中的模組是做什麼,而不是它如何工作的。每個程式設計師都知道其他模組被授權做什麼,並且可以呼叫它們來執行特定的功能。
另一個主要特徵是Mesa強大的型別檢查功能,它阻止了程式設計師在需要實數的情況下使用整數變數,或者在需要字串的情況下使用實數——並且防止bugs從程式的一個模組傳播到另一個模組。
這些概念後來被廣泛用作模組化程式語言的基礎。“Ada[美國國防部的標準程式語言]和Modula-2的很多想法來自於PARC的程式語言研究,”現任Adobe Systems公司的執行副總裁Chuck Geschke表示。事實上,Modula-2是電腦科學家Niklaus Wirth在PARC休假後寫的。
沒有人是完美的
儘管PARC研究的成功可能超過了它所取得的成就,但就像任何組織一樣,它無法擺脫一些失敗。前PARC研究人員最常舉的例子是Polos。
Polos是分散式計算的一種替代方法。當Thacker和McCreight設計Alto的時候,PARC的另一個團隊正在12個一組的Data General Novas上工作,嘗試在機器之間分配功能,這樣一臺機器可以處理編輯,一臺機器處理輸入和輸出,另一臺機器處理檔案歸檔。
Sutherland說:“使用Altos,每個人所需要的東西都是放在每臺機器上的。Polos試圖用不同的方式來實現——從功能上進行分割。”
當Polos開始工作時,Alto電腦正在整個PARC中推廣,所以Polos被關閉了。但是它有來生:Sutherland在施樂的其他部門中分發了12個Novas,它們是PARC Alto網路上的第一個遠端閘道器,Polos顯示器被用作PARC的終端,直到1977年它們才被廢棄。
另一個重要的PARC失敗專案是光學字元閱讀器和傳真機組合。這個想法是開發一個系統,可以列印混合文字和圖形的頁面,識別文字本身,並以ASCII碼傳輸字元,然後使用效率較低的傳真編碼方法傳送其餘的內容。
微軟公司應用程式開發經理Charles Simonyi說:“這非常複雜,相當瘋狂。在這個專案中,他們有這個不可思議的硬體,相當於一個10000行Fortran程式。”不幸的是,當時相當於成千上萬行的Fortran程式,意味著成千上萬個獨立的積體電路。
從事OCR專案的Conway說:“雖然我們在演算法和架構方面取得了實質性進展,但很明顯,當時的電路技術在經濟上是不可行的。”該專案於1975年被取消。
轉折點
基本上,PARC的研究人員在象牙塔裡工作了前五年;雖然專案還處於初級階段,但幾乎沒有時間做其他事情。但是到了1976年,隨著每張桌子上都有一臺Alto,以及電子郵件是中心的一種生活方式,研究人員渴望看到他們的作品被朋友和鄰居們使用。
凱回憶說,當時,PARC和施樂其他部門正在使用大約200臺Altos;PARC建議施樂在市場上推出一款量產版的Alto:Alto III。
凱說:“1976年8月18日,施樂拒絕了Alto III。”
因此,研究人員沒有將他們的專案移交給製造部門,而是繼續使用Alto進行工作。
“這就是我們失敗的原因,”凱說。“我們沒有扔掉Altos。施樂管理層早就被告知,PARC的Altos和Kleenex一樣,三年後就會沒有了,我們需要一套新的東西,速度要快10倍。但是當這一決定性時期到來時,沒有資本了。”
“我們在加州的Pajaro Dunes舉行了一次會議,名為‘讓我們燒掉磁碟組(Let's burn our disk packs)’。我們可以感覺到二階導數的進步對我們來說是負面的,”Kay說。“我真的應該去扔掉每個人的磁碟。”
PARC員工沒有開始全新的研究方向,而是專注於將他們過去研究專案的成果作為產品推向市場。
每隔幾年,施樂公司就會召集來自世界各地的所有管理人員,討論公司的發展方向。在1977年,佛羅里達州博卡拉頓舉行的會議上,PARC研究人員展示了他們已經建立的系統。
被指派參加博卡拉頓演示的PARC工作人員,投入了他們的心血、靈魂和許多施樂的錢到這項工作中。設計和建造了佈景,在好萊塢的攝影棚裡進行了排練,Altos和Dovers被肆意的在好萊塢和帕洛阿爾託之間運輸。在博卡拉頓的禮堂舉辦這個展覽,花了整整一天的時間,而且必須從當地機場租一輛特殊的空調卡車,來使機器保持冷卻。但是對於施樂公司的大部分員工來說,這是第一次與PARC的“eggheads”相遇。
“PARC對公司的其他人來說是一個非常奇怪的地方,”Shoup說。“不僅是加利福尼亞,而且是書呆子。被認為是奇怪的電腦人,留著鬍子,不洗澡也不穿鞋,深夜裡長時間盯著他們的終端,與任何其他人都沒有關係,基本上都是反社會的書呆子。坦率地說,我們中的一些人給人留下了這種印象,就好像我們在公司其他人之上。”
要讓施樂的其他成員認真對待PARC研究人員及其工作,有一些困難。
“演示進行得非常順利,戰鬥勝利了,但病人死了,”Goldman說。施樂高管不僅看到了Alto、乙太網和鐳射印表機,他們甚至還展示了日語文書處理器。“但公司無法將它們推向市場!”Goldman說。(到1983年,公司確實推出了日本版的Star電腦。)
施樂難以將PARC的進展推向市場的一個原因是,直到1976年,還沒有一個研發機構從PARC中獲取研究原型並將其轉化為產品。
“一開始,技術轉讓的方式並不明確,”Teitelman說。“我們採取了一種超然的觀點,認為會有人撿起這些技術。直到後來,這個問題才得到真正的關注。”
重新達到
即使是研發機構,要讓施樂公司的高管接受產品也是一場艱苦的戰鬥。其中一個例子是Notetaker計算機,由Smalltalk小組的研究員Adele Goldberg構思的,他現在是美國計算機協會的主席,目前仍在PARC工作。“可憐的Adele,”Tesler說。“我們其他人都參與進來,並不斷重新定義這個專案。”
Notetaker最終成為一臺可以裝在飛機座位下基於8086的計算機。它採用電池供電,執行Smalltalk,並有一個由Thornburg設計的觸控式螢幕。“我們有一個定製的顯示器,我們有糾錯儲存器,我們通常只會為真實產品做很多定製工程,”Notetaker的首席硬體設計師Fairbaim說。
“在我離開PARC的最後一年,”Tesler說,“我帶著Notetaker在全國各地飛來飛去,與施樂高管交談。這是第一臺在機場執行的行動式電腦。施樂公司的高管們做出了各種承諾:我們將購買2萬臺,只需與弗吉尼亞州的這位高管談談,然後再與康涅狄格州的這位高管談談。公司如此分散,他們從未一起開會。一年後,我準備放棄。”
施樂可能還沒有準備好用行動式電腦,但其他公司已經準備好了。Osborne I於1981年推出的,大約九個月前,據報道Adam Osborne參觀了PARC,在那裡,顯著展示了Notetaker的照片。
使用工具
當PARC的一些先驅者在20世紀70年代中期開始感到焦慮時,其他人才剛開始尋找未來辦公室神奇工具的用途。其中一位是Lynn Conway,他利用Alto、網路和鐳射印表機開發了一種設計積體電路的新方法,並將這種方法傳播給全國幾十個機構的數百名工程師。
當Bert Sutherland於1975年加入系統科學實驗室擔任經理時,他帶著加州理工學院的教授Carver Mead“走進PARC,製造一些混亂”。Mead是半導體設計專家,他在20世紀60年代末發明了MESFET(金屬半導體場效應電晶體)。
Conway回憶道,Sutherland曾致力於將計算機圖形應用於積體電路佈局,所以他很自然地考慮將像Alto這樣先進的個人計算機應用於IC設計。由於OCR-Fax專案的挫敗,Conway本人被吸引到了積體電路設計中,在這個專案中,她構思了一種簡潔的架構,只能實現機架和裝置機架。但是這些機架可能會變成一些晶片,只要它們能被知道應該做什麼和應該如何組合的人進行設計。
“Carver Mead在PARC舉辦了為期一週的積體電路設計課程,”Fairbaim回憶道。“Lynn Conway和我真的很興奮,並且真的想做點什麼。”
Conway說:“然後,很多事情真的做成了。”
“當Carver和我就計算和裝置領域發生的事情相互交流時,他能夠解釋一些在英特爾內部進化的基本的MOS設計方法。我們開始尋找方法,以推廣[那些設計師]已創造的結構。”Conway解釋說,她和Mead不僅僅只使用計算機工具進行設計,而是使設計方法更簡單,併為改進的方法構建工具。
“從75年中期到77年中期,事情從一件零碎的小事情——Bert想要做的一系列專案之一——發展我們掌握一切,帶著例子,現在是時候寫了。”
在不到兩年的時間裡,Mead和Conway已經開發出可擴充套件設計規則、重複結構以及現在被稱為結構化VLSI設計的其他概念——到了他們可以在一個學期內教授它的程度。
如今,100多所大學教授結構化VLSI設計,並且用它構建了成千上萬種不同的晶片。但是在1977年夏天,Mead-Conway技術未經測試——事實上被輕視了。他們怎麼能讓它被接受呢?
“1976-1977年PARC環境的神奇之處在於它的力量感;突然間,你可以創造出很多東西,並製造出很多東西。不僅僅是一張紙,而是整本書,”Conway說。
這正是她和她的同伴所做的。Conway說:“我們只是自行出版了《VLSI系統簡介》,如果你不仔細看,你可能會認為這是一個完全合理、經過驗證的東西。”
它看起來像一本書,Addison-Wesley同意將其作為一本書出版。Conway堅持說沒有Altos,這是不可能發生的。“知識本來會零碎分散,總是模糊不清——我們不可能產生這樣一種純粹的形式,也不可能如此迅速地產生。”
Conway在VLSI專案的最後階段使用最多的一個工具是網路:不僅是PARC內部的乙太網,還有連線PARC和全國數十個研究站點的ARPAnet。Conway說:“回想起來,我清楚的一點是,人們無法理解我們擁有強大的無形武器。PARC的環境讓我們有能力戰勝那些認為我們瘋了或者試圖阻止我們的人;否則,我們就不會有勇氣像我們那樣去做了。”
噴火龍
1979年,也就是艾倫·凱想要像扔“面巾紙”一樣扔掉Altos的三年後,Dorado,這樣一臺功能強10倍的機器,終於看到了光明的一天。
“它應該是由其中一個開發機構建造的,因為他們將在他們的一些產品中使用到它,”Severn Ornstein回憶道,他是Dorado的設計師之一,現在是帕洛阿爾託的負責社會責任的計算機專業人員(Computer Professionals for Social Responsibility)主席。“但是他們決定不這樣做,所以如果我們的實驗室要擁有它,我們將不得不自己建造。我們經歷了一段漫長的痛苦時期,在那個時期我們中沒有一個人真的想要做這件事。”
Omstein說:“那時Taylor正在管理實驗室,整件事處理得非常巧妙。他從來沒有直接扭過任何人的胳膊;他主持了這項工作,並在這個過程中保持秩序,但他確實讓實驗室明白這是必須做的事情。這也確實是一件好事,因為很難讓Dorado活過來。損失了很多。”
Omstein回憶說,最初,設計者們使用了一種新的電路板技術——所謂的多線技術,將單根電線連線到一塊板上進行連線,這是一個錯誤的開始。但是Dorado板對於多線技術來說太複雜了。當第一臺Dorado執行的時候,很多人都在想是否會有第二臺。
“Butler Lampson的信念很重要,”Ornstein說。“他是唯一一個相信它可以大量生產的人。”
事實上,即使在Dorado被重新設計為使用印刷電路板而不是多線電路板,並且Dorado開始大量生產之後,它們仍然很少見。一位前PARC經理回憶道:“我們從來沒有足夠的預算讓Dorados充滿整個社群,他們每年都會消耗掉一些,所以到1984年,仍然不是每個人都有Dorado。”
那些用過的人都很羨慕。“我有自己的Dorado,”John Warnock說。“Chuck Geschke是一名經理;他沒有得到一臺。”
“我有一臺陳舊的Alto和一張紙,”Geschke說。
Dorado的出現讓研究人員可以利用點陣圖顯示和個人電腦的所有其他優勢,他們的專案用Alto操作太困難。“我們試圖將Lisp放在Alto上,這真是一場災難,”Teitelman回憶道。 “當我們有了Dorado時,我們花了八九個月的時間討論了我們希望在程式設計環境中看到的東西,它將結合Mesa、Lisp和Smalltalk。” 結果就是Cedar,現在被公認為是最好的程式設計環境之一。
“Cedar把Lisp的一些優點放到了Mesa中,比如垃圾收集和執行時型別檢查,”Acorn的Mitchell說道。垃圾收集是一個過程,通過該過程可以回收程式不再使用的記憶體空間;執行時型別檢查允許程式確定其引數的型別——無論是整數、字串還是浮點數——相應地選擇它對它們執行的操作。
Interlisp是Teitelman培育了15年的語言,也被移植入Dorado,這是一項研究工作的基礎,這項研究工作現已發展成為PARC的智慧系統實驗室。
PARC的Smalltalk小組已經習慣了他們的Altos,然後建造了另一臺小型計算機Notetaker,在處理Dorados的時候遇到了一些麻煩。
Ingalls回憶說:“在早期,我們讓Smalltalk在一臺Alto上執行,我必須把我的Alto帶回家,但是施樂公司機器的發展方向,與讓人們容易將機器帶回家的發展方向相反。下一臺機器,Dolphin,不方便攜帶,Dorado也是不可能的——它是一條噴火龍。”