本篇是關於這次鐵人賽涵括三個系列文完賽的總感想,關於系列文可參見:
第 10 屆 iT 邦幫忙鐵人賽終於完賽了。
我選擇開賽的日期恰是我生日當天,所以鐵人賽可以說是我今歲第一個挑戰,也很榮幸的能夠完賽。成功戰勝了這項比賽後,我想我會更有自信的繼續接受未來更多的挑戰。
去年年底的第 9 屆比賽我也是有參加的,那時候抱著想要每天寫出完美的文章,充滿著理想的開始了比賽,結果因為太過於追求完美的關係,導致後繼無力,堅持到第五天後就開始欠發文債了,最後當然是不了了之。這就宛如明明是要跑馬拉松,卻用短跑的速度在一開始就衝刺,結果在前幾公里就體力耗盡跑不下去了。
後來開始就職,就這樣經過近一年的歷練,新一屆的鐵人賽要開始了。今年多了 Agile 主題,是讓我歷經去年慘敗卻仍躍躍欲試的主因。經過這一年的經驗,對於軟體開發有更深一層的見解,也開始熟悉敏捷精神,所以就鼓起勇氣再次報名了這屆的鐵人賽,想挑戰自己,也與大家分享自己這一年所學。
沒想到在一開始卻誤報到 Software Development 主題,而且還不能取消報名!縱然跑去補報了 Agile 主題,但是 Software Development 卻也不甘就此放棄,所以也就改了個標題,打算用比較閑散心情去寫。後來,又發現 Modern Web 主題完賽有加成獎勵,貪心如我抱著「嘗試不用成本,總之先報再說」的心態,就不自量力地跑去報名了。這大概就是我今年為什麼有「勇氣」報名三個主題的背後原因,其實還滿好笑的。
既然都報名了三個主題,加上上一屆失敗的經驗,我知道我還是得有取捨。我原本是想以 Agile 主題為主,Software Development 次之,Modern Web 居末,若是撐不住就先從後面的系列文開始放棄。每天寫文也是先從 Agile 開始寫起,最後才寫 Modern Web。沒想到默默地 30 天就過去了,三個主題竟然全都完賽了。
30 天,每天發三篇文,這一個月竟然也寫了 90 篇文,現在想想還真不可思議。比較去年的狀況,這對我來說的確是足以自豪成就。既然僥倖完成了這項競賽,也就在這邊順帶分享一下我的寫文方式,希望能給為來想要參賽的朋友一點幫助。
有別於去年瀑布流式的寫文風格(苦笑),今年不在一開始就把大綱列出來,而是當天才想題目,會這麼做也確實是取自去年失敗的經驗。
去年訂完題目後,才發現一個題目可以寫得太多,結果最後 Issue Description 就寫了一萬字左右,然後拆成 4 天去發,完全無法完成預期每天一個題目的計畫。要估算一個題目需要寫多少、花多少時間寫實在太難了,也就發生了類似瀑布流一般計畫完美,卻出現各種變數,導致全盤崩壞的情況。
而今年改成當天才想題目的好處是,我可以針對當天的狀況去挑選最順手的題目去寫,或是直接延續昨天留下的伏筆去開新一篇。這樣只要想到想寫的題目,就可以很快的把靈感轉變成文章,而不像去年必須配合題目去思考。
也為了必須有耐力的跑完全程,我必須限制我每天寫的字數,避免因為影響到正事,或是耗盡心力而無法撐下去,所以我也嘗試先在前幾天記錄我寫文的時間,大概得知如果能全力輸出的話,半小時內大概可以完成千字左右的文章,一天要寫三篇文,如果加上緩衝時間希望能在兩小時內結束,也就決定把每天編寫的字數大概限制在千字上下。
前幾天我都是用早上的時間去寫,在比較沒壓力的情境下去紀錄我寫的時間。但在確定了時間盒後,我決定改成每天固定晚上十點寫,確確實實地把時間限制在兩小時,只要這兩小時沒寫完,就真的會失敗。如此也能避免帕金森定律,確實控制每天的輸出量。況且眾所皆知的,越接近死線產能會越高(笑)。
每天晚上十點寫文前,我會盡量小瞇一下作為一種儀式,告訴自己等等就要開始寫文了。也藉著這一點休息,讓我能夠將心靜下來,等待十點一到就專注在鐵人賽上。就像是運動競賽選手賽前幾天會稍微休息,也如我自己在考試時,瀏覽過考卷後會先閉目養神幾分鐘,我認為這樣有助於接下來的發揮。
除了上述的這些小技巧外,能完成鐵人賽果然還是要感謝身邊的人。如果不是他們包容我每天晚上會有一段時間消失,甚至犧牲與他們相處的時間,我也無法堅持 30 天。每天晚上九點,我都得和家人告知我要去書房寫文了,他們也很支持我進行這個挑戰;在借宿或與朋友聚會時,也得捨棄交流的時間,提早回家或是躲進不受打擾的地方。很感謝這 30 天鼓勵、包容我的親友。
在參賽前半期其實算是輕鬆的,因為靈感還夠用,想表達得還很多。但越到後期,尤其是 Software Development 的主題,就有點江郎才盡了。每天用在想題目的時間越來越多、越來痛苦。絞盡腦汁地想一個和軟體開發有關的主題,然後再用剩餘的時間趕緊寫出一篇千字左右的文章。這大概是我認為整場競賽中最讓我心累的部分了,也是源自於系列風格的限制以及自身經歷還不夠多的關係,但很高興最後還是過了這道坎。
在這 30 天,也有令我意外的一件事情,就是 Software Development 主題比起我真正想寫的 Agile 主題還受關注,訂閱數雖然只有 10 人餘,但卻也多過於 Agile 的 2、3 人,這真的是讓我始料未及,且感到無心插柳的事。也滿高興有人喜歡這系列的,也因為這樣確立的該系列文保持和一開始相同的風格:單純討論軟體開發的概念、細節,但絲毫不展示一點程式碼,就像是我鍾愛的 《Clean Coder》和《Specification by example》兩書一樣。
將這一年學習到的敏捷相關的精神融進發文上,也是個很有趣的嘗試。像是前面所說的沒那麼瀑布流、讓每天像個迭代一樣,固定時間進行產出、追求的是可以閱讀的文章,而不是雖然完美卻只寫到一半的半成品。雖然講可能有點牽強,但還是覺得這樣類比挺有意思的。
受限於每天的產出是固定時間,也有朋友說感覺文章好像剛要開始就要結束了,原本以為會多寫一點正反例證,結果卻沒有。我這次寫文的目的是希望先將每個概念都淺述一次,畢竟為了有辦法持續 30 天,每天沒辦法花費太多時間與產能在寫文上,以免影響到其他日常事務以及寫文的續航力。我今年不與部落格同步發文的原因,也在於我知道這種情況能講的概念不會太完整,所以想說於打算貼到部落格時再重新組織系列,以及內文的補充、校閱。
也就是說,鐵人賽雖然結束了,但卻也是另一個開始。之後要再嘗試在這接下來的一年內將這些文章論述完整,有了這次鐵人賽成功作為好的開始,我想這個目標也很適合作為延續繼續挑戰。
最後,感謝大家的閱讀。
也歡迎交個朋友,有機會多多交流囉。
恭喜若虛大大完賽!
一次三組,太猛啦
謝謝 =D
Allen 大能從第三屆參加到現在也很令人欽佩 <(_ _)>
歲月啊•-• 沒有白廢就好,還有點事可做