最近部落格上面抱怨的文章寫得太多了，害 Teddy 的氣質變得越來越差。（路人甲：什麼，這個部落格從頭到尾有哪一篇不是在抱怨的，只是『怨念含量』多寡的差別而已。）連 Lililala2 學弟都發現『你的措詞越來越強烈了，學長 XD 』。既然 Teddy 是屬於那種 EQ 很低的人，那還是回頭寫點技術的文章好了，比較不會牽涉到『人』的問題。
今天要談的是 Christopher Alexander 所寫的另一本世界名著 Notes on the Synthesis of Form。這本書 Teddy 從 2003 年 5 月 30 日拿到手到今天，只看了不到一半的內容，而且很多都看不懂。不過這不是重點，重點是這真的是一本好書。（路人甲：我聽你在放..風箏，看不懂還推什麼薦。）這麼說好了，據江湖傳言看完這一本大概等於練到『含冰掌第九重』的效果，再往上已無更高法門了。不過因為 Teddy 只懵懵懂懂看了半本，所以對於上述說法無法證實。
時間有限，言歸正傳，本書算是 Alexander 嘗試以正規方法來闡述自己所提出的 patterns 方法 。Teddy 手邊這一本書是 2002 年再版第 17 版，書前面有 Alexander 重新寫的序言，以下內容便摘錄自其中。
Teddy 補充說明：
Alexander 在本書中以正規（理論）的方法來討論設計流程，據說在本書出版之後，引起一波『設計方法論』的研究風氣。但是 Alexander 在寫完本書之後重新檢視自己書中所提的設計流程，赫然發現 diagrams (也就是 patterns) 本身其實就具有『巨大的力量』。『 I found that the diagrams themselves had immense power』這句話讀起來平凡無奇，但是卻是很重要的一個觀點。Teddy 幫鄉民們複習一下，在 『就是這個光： Scrum + Lean + XP』文章中 Teddy 提到 Jack W. Reeves 所寫的 "What is Software Design?" 這篇文章。Reeves 在該文章說明，code (程式碼) 本身才是『軟體設計』的產出物，而不是文件 ，所以得到『source code is the design』這個結論。同樣的，Alexander 討論設計流程，到後來自己認為『產出物』（patterns）本身就是設計啊。
這是 Alexander 在 The Timeless Way of Building 中經常提到的 piecemeal growth，patterns，applying one pattern at a time，forces，context 等觀念的超級濃縮版。
以 Teddy 目前的工作，如果真的要『賴皮』的話，是可以『只出一張嘴』而不動手寫程式的，但是只要有機會 Teddy 還是會參與 coding 工作。每次 coding 都算是一種學習，透過實際的 coding，更能體會軟體目前所面臨到的真正問題，而不是靠一張嘴說：『做軟體，不就是改一改就可以了嗎？』很可惜 Teddy 的雜事太多，無法很專心的多多少少都參與到每一個模組的 coding，只參與了 30% 左右的 coding 工作。
把 source code 視為 design，coding 就是 design。好好耕耘 source code，Teddy 把 Alexander 的話修改一下：『 I found that the source code itself had immense power』。
友藏內心獨白：要讓普羅大眾相信『 the source code itself had immense power』還真是『他，螞... 蟻的』，不容易啊。
PS：還記得『600 多個 bugs 要怎麼修？』 不擁抱 source code，給你三輩子你也修不完。