# 三十三、巨無霸麥當勞與天才廚師JamieOliver
真是不可思議,為什么某些全世界最大的IT顧問公司會做出最糟的成果?
為什么那些最酷的暴發顧問公司剛開始時都有一連串成功的事績,成長的非常快,然后卻急 速化為平凡? 我曾經想個這個問題,也思考Fog Creek Software(我自己的公司)應該要如何成長。而我能 找到最好的教訓是從麥當勞來的。是的,我就是在說那個可怕的漢堡連鎖店。
大麥克的秘密在于它們并不是怎么好,不過每個漢堡不怎么好的程度是完全一樣的。如果你 愿意忍受不怎么好的食物,吃大麥克時絕對不會感覺任何絲亳意外的。
大麥克的另一個秘密是即使智商介「白癡」到「低能」之間,還是能生產出和全世界其他大 麥克一模一樣的漢堡。因為麥當勞超大本的操作手冊才是它真正的秘方。手冊里不厭其詳的 說明每個授權店制作大麥克時必須確實遵循的步驟。如果大麥克的漢堡肉在阿拉斯加的安克 雷奇要煎37秒,那么在新加坡也會煎37秒,不是36秒也不是38秒。要做大麥克就是得遵循這 該死的規則。
這套規則是由一些相當聰明的人(在麥當勞的漢堡大學)仔細的設計,讓笨蛋能和聰明人一樣 照著做。事實上這套規則里有各種的防呆設計(比如薯條在油里炸太久會有鈴聲),就是要補 償人的弱點。到處都有馬表和各種計時裝置。還有一個方法是要確保管理人每半小時會檢查 廁所是否清潔。(提示:他們不會的。)
這個制度基本上假設每個人都會犯一堆錯誤,而做出來的漢堡必須始終如一,而你單點漢堡 時總是會被問到要不要加點薯條。
純粹好玩,讓我們比較麥當勞廚師(完全不懂食物只會確實循遵規則)和英國原味主廚Jam i e Ol ive「那種天才。如果你選擇現在離開本站,點那個連結去看原味主廚羅勒蒜泥蛋黃醬的MTV 風格短片,我絕對贊成并祝身體健康。畢竟拿麥當勞和美食主廚相比實在是荒謬無比,不過 請暫時壓下懷疑,因為這里面有些道理可學。
原味主廚并不照什么亂七八糟的操作手冊,也不會量任何東西。在他做菜的時候,你會看到 各種食材到處亂飛。「我們只要多放一點點迷迭香,不會有事的,然后好好的搖一搖,」他 說:「把它壓碎。真完美。然后灑在上面就好了。」(是啊,看起來他的確只是隨便灑上去。 問題是我來灑的話就是不行。)只要14秒左右,他就即興創作了一道美食,海鱸片塞香草放 在蘑藥和馬鈴薯上烤再加一點sa lsa-ve「de。真是美味。
嗯,我認為原味主廚的食物顯然比麥當勞的東西好很多。雖然這聽起來像個笨問題,不過還 是值得花一分鐘來問為什么。這問題并沒有那么笨。為什么一家有著規模極巨又有龐大資源 的大公司,可以獲得最佳食材,現金多到不行,卻無法生產出一道好菜?
想象一下原味主廚「電視節目」做膩了改去開餐廳。當然啦,由于他是個名主廚菜又很棒, 所以餐廳門庭若市,錢好賺得不得了。
當你擁有一家很賺錢的餐廳,很快的就會了解即使每天都客滿,即使一道前菜開價19美元而 一杯可樂開價3.95,利潤還是有限。因為一個主廚就只能做出這么多菜。所以得再請另一個主廚,或許再多開幾家分店,或許還可以去其他城市開。
現在漸漸浮現一個問題,我們在技術業界稱為可調性(scalability)問題。當你想要復制一 個餐廳,必須決定是要另外請一個能力與你相當的大主廚,還是要找一個沒那么好但也沒那 么貴的年輕廚師。不過大主廚師可能會想自己多賺一點,沒必要替人打工;請年輕廚師的話, 老顧客很快就會發現菜變差了,以后也不會再去分店了。
處理可調性問題的一般作法是雇用什么都不懂的年輕廚師,然后讓他照著精確到絕不出錯的 規則做菜。只要照著這些規則做,你也可以做出好菜!
問題是這方法不太行得通。好廚師即興創作所牽涉的事非常多。好的廚師在農市看到上等的 芒果,就會即興做一道胡荽沙沙醬配當天的魚料理。馬鈴薯不夠時也會用芋頭片頂替。只 會跟著指令的機械式主廚或許能在一切正常時生產出指定的菜肴,不過由于缺乏真正的才能 和技巧,不可能真的即興創作。所以在麥當勞絕對不會有球根牽牛的色拉。
麥當勞需要一種特定品種的馬鈴薯。他們在世界各地都有種這種馬鈴薯,還會照規格切好大 量冷凍儲存以免短缺。預切及冷凍作業表示這些炸薯條不如新鮮的好吃,不過卻保證始終如 一也不需要大廚手藝。事實上麥當勞有數百個預備作業,確保任何廚房里請得到的笨蛋都能 生產出質量一致的產品,不過是「稍微差一點」的質量。
到目前為止的總結:
1. 有些事需要天份才做得好。
2. 天份很難復制。
3. 有人嘗試復制天份,要有天份的人建立規則讓普通人照著做。
4. 結果所得到的產品質量很低。
你在IT顧問業可以看到完全一樣的情節。下面這個故事你聽過多少遍了?
麥克不太高興。他請了一個大型IT顧問公司來建立系統。他請的IT顧問都很無能,只會一直 講「方法論(Methdology)」,花了幾百萬美元還做不好一樣東西。還好麥克找到一位真正 聰明又有天份的年輕程序員。這個年輕人只拿了 20美元和一塊披薩,一天內就把整個系統架 好了。麥克高興得不得了,就把年輕的程序員推薦給所有朋友。年輕的程序員開始大賺銀 子。不久工作就多到做不完,所以請了一堆人來幫忙。厲害的人股票選擇權要太多了,所以 他決定請些更年輕剛畢業的程序員來「訓練」六星期。問題是「訓練」并不真的能產生一 致的結果,所以年輕的程序員就開始建立規則和流程希望產生更一致的結果。幾年下來規則 手冊愈來愈厚,不久就變成后一套叫做「方法論」的六冊巨書。過了幾年,當初的年輕程 序員現在己經成為巨大無能的IT顧問,帶著一本「方法論」和一堆盲從方法論的手下。即使 方法論行不通的時候這些人還是硬干,因為他們根本不知道其他方法。何況他們也并不是真 有才能的程序員,只是受過六星期訓練,好心的政治學科系畢業生而己。而這個新的巨大 無能IT顧問公司也開始陷入困境了。他們的客戶都很不高興。于是又出現另一個新興的天才 程序員把客戶都搶光,然后整個循環又重來一遍。
我不需要在這里指名道姓,這個循環己經發生過很多遍。所有IT服務公司都會貪心,希望成 長的速度能超過找到優秀人員的速度,于是發展一層又一層的規則和流程來,幫助制作出「一 致」但算不上一流的成果。
不過規則和流程只有在一切正常時行得通。前幾年到處都出現各種「數據庫(data-backed) 網站」顧問公司,拿些「建立數據庫網站的十四項須知」之類的東西教出一堆生手來填公司 職缺。(「小朋友,這個叫select敘述,去架個網站吧」)。不過現在網絡泡沫破滅,而高 階GUI程序設計和C++技術還有真正的計算機科學需求突然起來,這些口袋里只有select敘述 的小伙子就面臨嚴峻的學習曲線,完全無法跟上。不過他們還是一直照著第17章數據庫正 規化的方法在試,不過突然間這些方法己經不適合這個新世界了。這些公司出色的總V辦乂 應該都能適應新世界,畢竟他們都是有才能的計算機科學家,什么東西都學得會。不過他//7 展建立你公司是變不了的,因為公司用規則手冊取替了才能,而規則手冊無法適應新時代。
這個故事的教訓是?小心方法論。方法論可以讓每個人的表現都提升到不佳但可接受的程度, 不過同時也會產生很多約束而激怒更多的聰明人。就我而言,有才華的廚師顯然不會樂于在 麥當勞做漢堡,廢證正是麥當勞的規則。是否如此IT顧問才如此吹墟他們的方法論呢?(來 打我啊。)
這對Fog Creek有什么意義?嗯,我們從來沒有把成為大顧問公司視為目標。我們一開始就 把顧問工作視作一種手段,真正的長程目標是成為一直有利潤的軟件公司,而我們得做一些 顧問工作來補軟件收入的不足。經過幾年的經營,我們的軟件收益己經成長到相當程度,顧 問工作相對成為分心的低收益業務,所以現在只做對我們的軟件有直接幫助的顧問合約。 你也知道,軟件#常崩容易復制。每多一個人購買FogBUGZ,我們就不用花任何成本就能多 賺到一些錢。
更重要的是我們堅持雇用最好的人,如果找不到夠好的人,我們很樂意維持小局面(不過一 年有六周休假,找人似乎不構成問題)。而且在找進來的人還不足以成為教導新人之前,我 們拒絕再擴充。
- 第一部分 位與字節:編程實踐點滴
- 一、語言的選擇
- 二、深入底層
- 三、joel測試:改進代碼的12個步驟
- 四、每一位軟件開發人員必須、絕對要至少具備UNICODE 與字符集知識(沒有任何例外!)
- 五、輕松寫就功能規格說明書 - 第1節:為什么煩心?
- 六、輕松寫就功能規格說明書 - 第2節:什么是規格說明書?
- 七、輕松寫就功能規格說明書 - 第3節:但是……如何?
- 八、輕松寫就功能規格說明書 - 第4節:技巧
- 九、輕松制訂軟件進度表
- 十、每日連編是朋友
- 十一、難伺候的故障修復
- 十二、軟件開發中的5個世界
- 十三、稿紙原型開發
- 十四、不要被太空架構師所嚇倒
- 十五、開火與運動
- 十六、人員技能
- 十七、源于計算機學科的三個錯誤思想
- 十八、二元文化
- 十九、自動獲取用戶故障報表
- 第二部分 開發人員的管理
- 二十、面試游擊指南
- 二十一、重金激勵害多利少
- 二十、二不配備測試人員的五個首要(錯誤)原因
- 二十三、任務換人有害無益
- 二十四、絕不去做的事情,第一部
- 二十五、冰川下的秘密
- 二十六、漏洞抽象定律
- 二十七、程序設計界的LordPalmerston
- 二十八、評測
- 第三部分 Joel對常態問題的遐想
- 二十九、RickChapman解讀愚昧
- 三十、在這個國家狗是干什么的? 我們有多么天真?
- 三十一、作為哼哈二將,只管去做事
- 三十二、兩個故事
- 三十三、巨無霸麥當勞與天才廚師JamieOliver
- 三十四、沒有什么像IT看起來那么簡單
- 三十五、提防非自主開發綜合癥
- 三十六、策略I:BEN&JERRY公司與AMAZON
- 三十七、策略II:雞與蛋問題
- 三十八、策略III:讓我回去!
- 三十九、策略IV:大件與80/20神話
- 四十、策略V:公開源代碼的經濟因素
- 四十一、墨菲法則肆掠的禮拜
- 四十二、微軟公司是如何敗北API之戰的
- 第四部分 對.NET稍多的評說
- 四十三、微軟精神失常了
- 四十四、我們的.NET對策
- 四十五、請問,我可以使用連接程序嗎