martin fowler
martin fowler
Martin Fowler是國際著名的面向對象分析設計、UML、模式等方面的專家,敏捷開發方法的創始人之一,現為ThoughtWorks公司的首席科學家。
他改變了人類開發軟體的模式,他被開發者們尊為“教父”,他從不與媒體談論技術以外的事情。這個謎一樣的科學家Martin Fowler,終於首次敞開心扉,講述自己的故事。
從上個世紀80年代開始,Martin Fowler就一直從事軟體開發工作。說起走上這條路的原因,他的回答卻很簡單:“其實這是個意外。我在學校學的是計算機專業,我覺得很感興趣,就繼續從事這個工作。”
上個世紀80年代中期,正是軟體行業蓬勃發展的時期,Martin對面向對象開發這個新領域發生了興趣。他開始把面向對象的思想應用到商業信息系統的開發中去,並很快成了這方面的專家。而正是這個興趣,讓Martin遇到了對他產生終身影響的人。
“他叫Jim Odell,也是一個技術專家。”Martin說。那時候,Martin在當時美國最大的一家諮詢公司工作,負責軟體開發技術方面的工作,而Odell作為一個獨立的軟體諮詢師,恰巧跟Martin在同一個工作組,共同從事一些面向對象開發的研究。
“當時我們一起做概念建模,還有驅動開發。我非常享受跟他一起工作。”說起這些,Martin的眼光從深邃開始變得閃爍,似乎陷入了深深的回憶之中。
隨後,在Jim Odell的鼓勵下,Martin也開始寫書。他的思想,從面向對象開發到重構,從UML建模到XP開發(極限開發),開始越來越多地被人了解,他成了開發人員心中的大師。
2001年2月,17名像Martin Fowler這樣、在軟體開發各領域有所建樹的大師們,匯聚在猶他州Wasatch山脈中的一處滑雪場內,用3天的時間放鬆、討論。他們想改變傳統的以文檔為驅動的、笨重的軟體開發模式。
於是,在這個非正式的集會上,誕生了一個在軟體開發歷史上具有里程碑意義的“文件”,這就是被廣為稱頌的《敏捷軟體開發宣言》,而“出生在英國的Martin Fowler,則讓全美國人學會了‘Agile(敏捷)’這個詞的發音”。《敏捷軟體開發宣言》的網站上這樣記載Martin。
傳統的軟體開發,開發者得先研究清楚用戶所有的需求,再開發出一套完整的方案。這不僅使得開發周期長,而且整套方案中決不允許有任何紕漏,否則用戶的需求就無法滿足,而對開發者來說,更改也非常困難。而敏捷開發則是從用戶核心需求入手,在短時間內拿出一個原型,然後根據用戶的其他需求增加模塊,同時修改和完善,屬於“可以讓汽車一邊跑,一邊換輪子”的開發方式,非常適合對開發周期要求越來越短的商業軟體開發。
敏捷開發徹底改變了人類開發軟體的模式。
事業上的巨大成就,讓Martin Fowler被技術人員奉為膜拜的對象,但他卻低調得讓人難以捉摸。
照理說,“教父”級的人物應該遊走在全球各大城市之間,頻繁地參加各種學術交流和演講。而被技術開發人員視為全球最受歡迎的演講者之一,Martin Fowler卻很少參加這類活動。Martin說: “我覺得人們給我的關注太多了,我不喜歡被關注。我就是一個普通的人,住在普通的房子里,開普通的車,吃普通的飯,有時間就去騎騎自行車,或者和我的妻子去郊遊。”
就連“教父”這個稱呼,他給出的惟一評價也只有兩個字——奇怪。“這個名字是別人給的,我談不上喜歡,也說不上不喜歡。就是有點奇怪,因為教父在電影和小說里,都是強盜那樣的人。”
相比之下,每每在做自我介紹時,Martin Fowler更願意稱自己為“作家和諮詢師”,而他最喜歡的工作,則是現在的狀態——每天主要的精力都用來寫書和鑽研自己感興趣的軟體技術。“寫書是我最大的享受,這樣的生活很自由。”
的確,Martin是一個不折不扣的自由主義者,他做事的理由永遠很簡單,就是感興趣。也因為如此,Martin做了很多年的獨立軟體諮詢師,為的就是“獨立工作的公正性和創造性”。直到1999年,他開始為ThoughtWorks做一些諮詢工作。
ThoughtWorks完全開放的工作空間讓Martin感到驚訝,他發現在這裡工作,溝通是完全平等的。而更重要的一點就是,Martin發現,ThoughtWorks的工程師都有很強的技術能力,有些甚至不比自己差,只是不如自己有名。而且他們離商業軟體開發非常近。
因此,Martin最終決定接受ThoughtWorks的加盟聘書,而且無論多忙,都會特意去各個項目組走走,給別人一些意見,也從別人那裡了解商業軟體開發的最新動向。
在採訪中,Martin給自己下了這樣一個定義,“一個喋喋不休的人”。
第一眼見到Martin的時候,他剛跟技術人員結束討論,原定上午10點開始的採訪,因此推遲了15分鐘。進入採訪的會議室,這個絡腮鬍的男人還沉浸在剛才的興奮中,很用力地握了握記者的手。
但當得知記者此次採訪的目的並沒有太多地關注技術時,我在他臉上看到了很明顯的失望,淺淺地說了一句: “噢,好吧。我喜歡說技術,不喜歡說自己的事情,所以我看情況,能說多少就說多少吧。”正如Martin自己所說,他不喜歡被太多地關注,所以採訪開始得並不順利。
儘管如此,Martin還是很認真地配合著採訪,比如,當在提到一些書籍、人名時,他都會非常仔細地寫下來,就像對待軟體開發一樣,盡量做到嚴謹。
而這些小細節,也透露出這個軟體開發大師身上的一些特質。當問題一旦與技術相關,Martin的話雖然不是太多,但可以很明顯地感受到他的目光會變得炯炯有神,手勢也會比以前多起來。如果問題和技術沒什麼關係,比如他事業中的一些經歷,或者家人、朋友時,他就會很認真地想一想,但談的就很少。
“在Martin的頭腦中,興奮點似乎只有技術。”ThoughtWorks的員工告訴記者。“Martin很不喜歡接受採訪,除非純談技術,否則對他來說簡直是受罪。”
福勒(Martin Fowler),在面向對象分析設計、UML、模式、軟體開發方法學、XP、重構等方面,都是世界頂級的專家,現為Thought Works公司的首席科學家。Thought Works是一家從事企業應用開發和集成的公司。早在20世紀80年代,Fowler就是使用對象技術構建多層企業應用的倡導者,他著有幾本經典書籍:《分析模式》、《UML精粹》和《重構》等。