2017年的學習回顧與展望

測試

參加了兩個活動,分別是單元測試這樣玩就對了,與測試即學習;

單元測試這樣玩就對了

最大的收獲是突破了寫測試的心魔, 在那之前總覺得 TDD 只是口號, 或是烏托邦的開發理想.
雖然之前也有花大錢出外受訓, 或是公司內部的內訓.
手上也有一些前輩的測試代碼, 但是就是沒有「感覺」,

1
2
3
不過仍然感謝前幾年的自已有將資源花在測試上面,
累積了兩年的測試經驗,
融會貫通卻只是一瞬間的事

最主要是講者展現了實務上面的需求與改進,
過去寫的加法運算, 或是吊人遊戲,
雖然也是從無到,也是先寫測試,
但或許是太過強調 TDD 太過強調從無到有
總與實際開發經驗相違背,
講者在過程中一句 「不要管先寫測試還是程式」
反而更貼近真實,先寫程式,再想想怎麼測試?
為了測試, 再重構, 逐步分解的過程令我大開眼界.

過去曾與人討論過 TDD 的議題,
總會得到「實務與理論有差別」、「其背景與環境因素不能寫測試」
這類似是而非的回答,當下我也無法辯駁
現在想起來只能莞爾.

測試趨動開發不等於一定要先測試,
特別是習慣於先寫產品程式的人,
不仿先寫產品程式, 再寫測試而趨動重構
當寫習慣了,知道哪些耦合會帶來重構的代價時,
再寫一次就人性就會自動迴避這些不好的 Patten .

別管順序,但是記得寫測試.

測試即學習

梅老師的課也是很毀三觀的,
老實說我跟本不知道他在幹嘛,
塔羅牌拿出來的時候,
我真的以為是美江再現(那個時候Seafood還沒有業力引爆( ・ω・)( ・ω・)( ・ω・))
那堂課的目標族群應該是 QA,
不過這個時代不應自我設限,
複習一下梅老師的分享,

探索測試

  • 儘可能的發散
  • 摹仿別人看事情的角度
  • 有意識的學習(mindful learning)
    • 記錄
    • 總結
    • 歸納問題的核心
    • 給它起一個名字(沒有專有名詞的話)
    • 有意識的逃離第一印象
    • 小心不經意的盲區(inattentional blindness)
    • 數量 X 練習 X 思考 X 學習 = 提昇

對我來說,給它起一個名字真是超級有用的,
新認識的朋友就叫作「王大棰」, 新的技術就叫「起司包」, 新的概念就叫「黑盒子」等…
不要過於專研於名詞, 用自已能理解的名字去框那個新事物的範圍,
最後再把名字用大家通用的名字取代掉就好了.
看了很多的方法論,會發現其實觀念沒什麼改變,
只是新的名詞會一直冒出來,
唯物主義、馬基維利主義、不擇手段、實用主義
改善、KANBAN、敏捷、精實 balabala…

“没有时间”- 完美的借口

2017 年影響我最深的一篇 Blog,
2012 年的文章, 篇幅也不長,
觀念也很簡單, 作就對了, 作壞了就丟掉再作一次,
很多的書都要我們刻意練習,
但是我們的時間哪有那麼多呢?
長大了之後,才來 1 萬小時的修練是不是太晚了呢?

下半年公司開始推行測試,
基層的工程師們其實反彈的聲音一直都在,
雖然一直有教育訓練與培養種子,
不過大多淪為口號的狀態,
我也只能用這篇文章作為勉勵.

其實現在的版本控制系統已經非常便利,
要建立一個 Sandbox 的分支,
在裡面嘗試各種可能性是非常容易的,
作壞了丟掉分支就好了,
身為專業的工程人員,測試是必須的,失敗也是,
在沙箱內失敗,其實是摔不疼的,勇敢嘗試吧.

生產力

2016 年是時間記錄的一年,
那 2017 年就是把記錄的時間,
轉換成生產力的一年.
幾本影響比較多的書,不過或許我仍需要二讀至三讀以上

  • 最有生產力的一年 → 時間 X 精力 X 專注力 = 生產力
  • GTD → 下一步要作什麼?
  • 軟技能 → 自我營銷

新的一年重心會放在習慣上面,
因為讓習慣趨動行為,
比起刻意遵循某些方法要好得多,
「刻意」太浪費精神力了,
下一步會如何呢?
希望能翻轉自已

其它

順利的帶媽媽出國了,或許對一些人來說不算什麼成就吧,
新的一年有些機會,去日本、以色列、俄羅斯、馬來西亞,
雖然八字還沒有一撇, 但至少會去一個地方吧…
其他的地方就只能見機行事了.

新年快樂
(fin)

Please enable JavaScript to view the Gitalk. :D
Please enable JavaScript to view the LikeCoin. :P
Please enable JavaScript to view the LikeCoin. :P