敏捷史話(五):敏捷已逝 —— Dave Thomas

敏捷開發社群發表於2021-02-05

 

“ 敏捷已逝,但敏捷精神長存。因為所謂的敏捷專家賣給你的是方法論,而不是價值。”當多數人都在從“敏捷”身上榨取利益時, Dave Thomas 成為了一位逆行者。在敏捷實踐中他不斷嘗試,以尋找敏捷最務實的價值。 

 

“敏捷是什麼”

 

早在2001年春,Dave 參加了釋出《敏捷宣言》的雪鳥會議,成為了《敏捷宣言》的17個作者之一。雖然 Dave 對敏捷本身的價值毫不存疑,但之後由於很多出於不同目的的人,將無限多的內容加到了“敏捷”中,導致“敏捷”越來越違背敏捷的實質。此時的“敏捷"已非彼"敏捷",Dave 不願再背上“敏捷”的標籤,開始追求真正的敏捷性。

 

十幾年的敏捷實踐,帶給 Dave 的不僅是專案效率的提升,也讓他明白了目前敏捷的誤區有多大。直到2014年,Dave 在一次大會上撕碎了敏捷被很多自稱敏捷專家的人賦予的華麗外衣:“敏捷已逝,但敏捷精神長存。因為所謂的敏捷專家賣給你的是方法論,而不是價值。”

Dave 告訴大家,他沒有 CSM、CSP、CSXX 等認證,但依然可以在自己的專案上很好地運用著敏捷。顯然,與市面上大量的敏捷認證及方法論相比,Dave 更專注於個體對敏捷實踐的思考,而不是照搬敏捷專家的說法。

 

在 Dave 看來,敏捷不是一個產品。敏捷的產生,是因為當初他們有過一些犯錯的經驗,所以才總結出4條價值觀,希望減少後來人試錯的時間。但現在很多人只強調敏捷可以讓軟體成本更低、交付更快、質量更高,卻沒有強調敏捷還需要嚴格的紀律來約束團隊,這需要與時俱進。

 

對於敏捷,Dave 總結了三個特點:非常簡單,無需複雜的流程,也無需各種“敏捷”專家。由此,他還提到一萬小時理論: 要成為某領域的專家,要花一萬個小時去實踐操作,這樣此領域的知識在腦海中有一個根深蒂固的概念,大腦會自動去做這件事,才有可能成為這個領域的專家。

 

同樣,敏捷實踐也需要多操練、因時而變, 讓敏捷成為一種習慣和不用思考的東西,這樣敏捷才會真正給我們帶來價值。

 

“I am a programmer”

 

Dave 是敏捷圈裡的一股清流,他對敏捷始終保持著清醒的認知。在很多活動上,他的自我介紹,也僅僅是以“ I am a programmer”作為開始。談到程式設計師的身份,還要從 Dave 高中時期談起。

Dave Thomas 出生於1956年,他最早接觸程式設計是在高中時期。當時,Dave 在學業之餘報名了程式設計課,課上學的是 Basic 語言,只需要將程式碼敲到紙帶上,再通過一臺調變解調器將資料傳到大型機器上,機器就可以執行了。

 

儘管過程稍顯繁瑣,但長時間摸索下來,Dave 發現程式設計十分符合他的大腦邏輯,這種極具創造性和精確性的體驗,讓 Dave 自此一發不可收拾地愛上了程式設計。

 

大學時期,Dave 在倫敦的帝國理工學院進修電腦科學,正式敲開了程式設計世界的大門。

 

經歷了多個程式設計專案, Dave 擁有了豐富的經驗與發散思維。在一次專案中,Dave 認識了 Andy Hunt,兩人在專案中經常給很多程式設計師建議,像在部署前對軟體要進行測試等。諸如此類的建議不僅得到了很多程式設計師的肯定,也確實令開發過程得到了有效改進。為了把這些敏捷實踐過程中的建議與技巧整理下來,他們辭掉了當時的工作,花費了一年半左右的時間整理成了一本書。1999年前後,兩人合著的《程式設計師修煉之道》出版了,並獲得了 Jolt 效能大獎。 

 

“不要讓自己成為一個標籤”

 

在2012年全球軟體開發大會上,Dave 提到了標籤理論。他認為標籤是一個名詞,只是表明你是做什麼的,而限制了你如何去做。尤其是作為一名程式設計師,Dave不希望在這個職業前面加上任何的標籤去修飾。比如他熱愛 Ruby,但不想說自己就是一個 Ruby 程式設計師,可以說是使用 Ruby 來解決問題的。

就這樣, Dave 常常把一個標籤改成一種解決方案,也就為自己創造了更多的可能性。 

 

在2003年,Dave 跟 Andy Hunt 一起創辦了“The Pragmatic Bookshelf”出版公司。兩人還一起合著出版了其他十多種作品,其中包括 Ruby 語言類。

 

Dave 是一個 Ruby 語言的熱心推行者,寫了《Programming Ruby》等相關書籍,每天寫 Ruby 指令碼是他生活中的一大享受。在剛開始接觸時,儘管 Ruby 社群人很少,但 Dave 抱著交朋友的心態經常參加 Ruby 大會,並樂在其中。在 Ruby 的開源社群,Dave 提交過幾千行的程式碼和文件,他認為在開源社群這樣做不僅能幫助別人,也能讓提升自己在社群中的名譽和聲望。

 

2009年,Dave 在敏捷中國大會上,帶來了一場“ 程式設計師修煉之道·十年”主題演講。十年間,軟體行業發生了翻天覆地的變化,《程式設計師修煉之道》作為十年前的出版書籍,雖然案例看起來古老了一些,但背後的概念仍然具有很多現實意義。比如“DRY(Don’t Repeat Yourself)”、 “Code Kata ”等原則,這些方法在現今仍然很適用。大會上,Dave 對書中提出的建議進行了反思與修正,也為 下一個十年(2019年)中,《程式設計師修煉之道》第2版的面世做好了鋪墊。

改變世界的人看似擁有比常人多出一倍的時間。生活中的 Dave,記性很差,但凡生活中能夠用自動化解決的事物,無一例外都被他用 Ruby 成功打造,這個生活習慣也被 Dave 運用在工作中。

 

作為出版商,Dave 團隊的工作能力非常出色,很多出版商釋出一本新書,往往需要提前一兩天開始準備,而 Dave 利用自動化的線上裝置只需要花費5秒鐘。公司的高度自動化讓團隊有了更多空餘時間,他們沒有固定的辦公室,大家都在家裡工作。Dave 每天起床後查查郵件、遛遛狗、瞭解新的科技、繼續探索……在晴朗的天氣下,邊曬太陽邊開始一天的工作。儘管每天的工作時間多於8小時,但由於生活與工作分佈在各個時間段裡,Dave 以享受生活的方式享受著工作。

 

當然,在各個角色的行進過程中,不是一路的繁花似錦。Dave 也會跟人分享:“我也常常會有感到艱難的時候,但每次考驗過去之後,你的技藝都將更上一層樓。所有值得做的事情都是困難的,但克服這些挑戰不僅會讓你更強大,還會讓你變得更加投入。”

 

由此可見, 能夠改變世界的人,首先改變的是自己。讓自己不只是具備廣泛的能力,還能將不同的技術結合起來創造價值。改變自己,你準備好了嗎?

相關文章