代碼,夢

今天下午19:00,翻譯完Dreaming in Code最後的《結語》部分,這本書算是基本完成了。說來慚愧,去年初接下這個任務時,滿以爲頂多半年足可交稿。真正開始翻譯時,才知道自己低估了任務難度。作者Scott Rosenberg是在線雜誌Salon.com的主編,筆下極盡引經據典、推敲字句之能事,夾敘夾議,奇聞軼事和以精論妙談,300來頁一本書,觸及軟件開發中多個根本大題目,叫人看得心驚肉跳之餘,又不由得掩卷長嘆。

《大褂還是內褲》一文中,我簡單提到Mitch Kapor和Chandler項目。Dreaming in Code在“敘”的部分就是寫這個項目的。本書的副標題很長,也很吸引人:Two dozen programmers, three years, 4,732 bugs, and one quest for transcendent software(兩打程序員,三年,4,732個缺陷,只爲打造卓越軟件)。Mitch Kapor和他的程序員們曾經打造過最偉大的軟件,現在他們有了近乎奢侈的資源,爲了“用代碼改變世界”的夢想,共襄盛舉。可惜他們遇到了“軟件時間”的黑洞,從2001年開始,泥足深陷、舉步維艱。Scott Rosenberg從項目一開始就貼身跟蹤,記錄下Chandler項目開發過程中的點點滴滴。

如果本書僅及於此,就不過是一篇尚可一觀的“報告文學”。幸好Scott Rosenberg的主要目標是揭示軟件開發中的普遍問題:爲什麼做軟件這麼難。在描寫Chandler項目進展的段落之間,溫伯格、布魯克斯等大師級研究者,Linus Torvalds和Joel等實踐者紛紛“出來”現身說法,還有來自各機構、媒體、作者的大量資料,從“軟件時間”入手,兼及各種方法論、積木式編程、軟件設計、項目管理,所有這些都是最後一個大話題的鋪墊。在《結語》部分,Scott Rosenberg提出了這個大話題:人工智能有沒有可能超越人類?在這個問題上,Mitch Kapor打了個20,000美金的大賭。他打賭,到2029年爲止,都不可能造出能通過圖靈測試的機器。

Mitch Kapor絕非悲觀主義者。他本人和整個OSAF團隊做夢都想通過軟件系統“改變世界”。改變世界的夢想鼓舞過無數程序員,然而最初卻不是對程序員說的。在Dreaming in Code書中提到這麼一樁軼事:當年Steve Jobs(就是Apple的喬布斯大爺啦)想要說服百事的CEO John Sculley加入Apple,就對John Sculley說,你是想終己餘生“賣甜水”呢還是過來造計算機、改變這世界?不過John Sculley加入Apple後不久,就聯合董事會把Jobs趕出了公司。

過去幾十年以來,計算機軟、硬件製造者們一直以他們的努力推動這世界。而他們的每一分努力,因爲halting problem(停機問題)的緣故,都註定是未完成的任務。他們是在挑戰智慧和精神力的極限,簡直是“逆天而爲”——所以也難免要遇到軟件生而固有的困難。

Dreaming in Code以一個具體項目的進程爲例,列出了這些普遍存在而又近乎無法解決的困難。有趣都是,在翻譯本書的過程中,每每與朋友聊天,他們提出的一些問題,在書中也都涉及。這本書很快就要出版了,到時一人送一本,他們是軟件實踐者,看後應該會比我更有感觸和啓發吧。

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章