Jasonmel Online

Jasonmel Blog - Page 51

Testing & Refactoring Workshop

2013/06/20 (Thu.)

上了三天的 Testing & Refactoring Workshop,藉由大量的 coding 來體會之前一直很沒有感覺的 TDD (Test-Driven Development)。基本上就是先寫 test case,再寫對應邏輯的 code,然後三不五時測一下以確保程式還維持在正確的狀態。由於有 100% 的 coverage rate,中間可以放心地配合 refactoring 來把不好的 code smells 改好。而為了減少測試成本,test case 都盡量是 microtesting,甚至遇到 I/O 或 loading 重的部份也盡量改用 mocking 來模擬,除了成本考量,也減少測試上的 dependency。

這種感覺有點熟悉,原來在 design thinking 或是 scrum 也都是類似的想法。Design thinking 裡面先從 empathy 開始,user 的感受就是一個 idea 的 test case,經由發散收斂產生出許多 ideas,透過快速的 prototyping 以及 user 實際操作得到的 feedback 來驗證這個 idea。Scrum 也有同樣的 pattern,planning meeting 定下來的照理說不能再更動的 tasks 就是之後要驗證的 test case,daily sync-up meeting 算是每天都小小測試一下目前做的方向對不對,retrospective meeting 則是一個 sprint 下來的整體總測試。大致上都是把一個很大的項目切成小塊各個擊破,除了可以迅速調整方向,避免不必要的錯誤投資,也讓整個大項目較為模組化,提供許多彈性、擴充性、以及可維護性。

TDD 原來是這麼一回事啊!

iPhone 5 第一拍

2013/06/09 (Sun.)

公司配的 iPhone 5 第一拍,獻給爸爸帶隊的高雄港遊港半日遊。搭乘遊艇,一路經過造船廠、軍事碼頭、前導船碼頭、漁港、維修碼頭、貨櫃碼頭、散貨碼頭、以及愛河口的遊艇碼頭,聽完有種身為高雄人竟然不知道高雄港有這麼多故事的震撼,同時也因為更了解高雄港而為高雄人感到驕傲。

要是那位大叔可以往後退一點點就好了...要是那位大叔可以往後退一點點就好了...

海鮮的美味輓歌(Bottomfeeder)

2013/06/02 (Sun.)

太久沒看書,面目可憎!先來幾本沈重的,再來幾本歡樂的。

《海鮮的美味輓歌(Bottomfeeder)》,藉由一場全球性的海鮮探索之旅,揭發人類是如何過度捕撈海洋生物,甚至嚴重破壞海洋生態平衡。70 億人口對於海鮮的龐大需求,導致漁民用盡各種方式捕撈、養殖盡可能多的海洋生物。其中包含足以將海底像刮鬍刀一刀刀鏟平的底拖網,珊瑚、海扇、海綿以及一些存活百年的脆弱生物,就這樣被刮掉,原本的海底叢林,也瞬間變成海底沙漠。養殖漁業方面,就跟養雞場或養鴨場面臨一樣的問題,要在最短的時間讓牠們長大,勢必得使用一些禁藥,同時大批魚蝦擠在狹小的空間內,也造成水質不佳以及傳染病散播等問題。當然,最後這些問題終究會回到人類身上,要不是海洋生物逐漸瀕臨絕種最後貴到人類無法負擔,就是吃下在惡劣環境下服用一堆禁藥長大的養殖海鮮。最後作者也建議大家多食用一些生物鏈底層的海鮮,像是水母、牡蠣、烏魚、鯡魚、沙丁魚、魷魚等,除了含汞量較少之外,食用底層海鮮也比較不會影響整體生物鏈。

《醫院不肯說的抗癌真相(The Secret History of the War on Cancer)》,也算是人類自食惡果的一部詳實記錄,大致描述了人類工業化以來,製造了許多化學、輻射線、電磁波相關產品,在既得利益者的主導下,相關致癌研究大都受到埋沒,這些研究使用基因與人類相似程度及高的白老鼠作為實驗對象,也多半能證實這些外在影響與罹癌的相關性。可惜的是,最後還是只能經由大量人體實驗統計,也就是有夠多的人在接受到類似的化學、輻射線、電磁波環境下罹癌死去,這樣的傷害才逐漸會受到重視。透過作者的揭露,除了讓我們了解現實的醜陋面外,也要提醒自己對於已知危險的致癌化學產品要多加留意,如苯、鉛、石棉、氯乙烯、甲醛、香煙產生的焦油等,同時也盡量避免購買生產過程中會散發出這些化學物質的產品,如某些化妝水、清潔劑之類的,畢竟方便我們使用的代價,就是製造工人的罹癌死亡,慎之!慎之!

《白袍醫師的黑心履歷》,是不願具名的藥師作者,在經歷大醫院、診所、藥局的歷練後,將其中不為人知的醜陋面揭發出來。說穿了,藥師們在現行制度下,為了生存、為了面子,不得不採取一些黑心手段。大眾們還是得作點功課,才不會花了冤枉錢,甚至吃錯藥、打錯針,壞了自己的健康。

《我在 MIT 燃燒物理魂(For the Love of Physics)》,不多說,看看 Professor Walter Lewin 的線上物理課吧!這就是物理魂阿!

《為什麼 E=mc2?》,生動地描述當初推導 E=mc2 的來龍去脈。一切都從 Maxwell 的電磁波方程式開始,在光速恆定的前提下,相對運動中的兩個物體必須在時空上產生扭曲,才能維持數學上的正確性。這大概是讀這本書獲得的最大收獲了吧!畢竟後來的一些公式已經超越自己能理解的範圍了,更不用說後來提到的希格斯粒子。總之,能用淺顯的方式了解困難的東西,是很令人開心的一件事。

《賈伯斯的信件匣(Letters to Steve)》,收錄了許多人和 Steve Jobs 往返的信件,透過側面多了解這位科技聖人私底下的一面。

《設計的法則(Universal Principles of Design)》,收錄了 125 則設計上常用的原則,圖文並茂,算是一本不錯的設計參考書。

矽谷出差

2013/05/05 (Sun.) - 17 (Fri.)

對一個電腦人來說,一輩子一定要去的地方之一,大概非矽谷莫屬了吧。很幸運地,剛進公司不久就獲得到總部接受新人訓練的機會,也因此得以踏上這塊頂尖人才集散聖地,大口呼吸充滿創新活力的灣區空氣。

Yahoo! HQ 到此一遊!Yahoo! HQ 到此一遊!

這間公司和前幾間公司有個很不一樣的地方,就是不管任何活動或是內部資料,都會在一開始的地方聲明 "This information is confidential. No forwarding or copying. No online copying." 之類的警語,讓人不得不時時警惕自己的發言。也因此這趟旅程中許多公司方面有趣的見聞,就只能留在腦中以及分享給同事們了。

雖然不像 Google Mountain View campus 有二三十棟辦公室那麼囂張,不過有七棟辦公室的 Yahoo! Sunnyvale campus 也算頗氣派的了。雖然不像 Google Mountain View campus 有二三十棟辦公室那麼囂張,不過有七棟辦公室的 Yahoo! Sunnyvale campus 也算頗氣派的了。

和 Marissa Mayer 合照,大概會是這輩子所能合照的對象裡最大咖的人物了吧!和 Marissa Mayer 合照,大概會是這輩子所能合照的對象裡最大咖的人物了吧!

撇開公司見聞不談,難得到矽谷一趟,總是要到處朝聖一下的。

長得很像資料庫的 Oracle HQ!長得很像資料庫的 Oracle HQ!

其實招牌背面是 Sun 的 Facebook HQ!其實招牌背面是 Sun 的 Facebook HQ!

超大一片逛不完的 Google HQ!超大一片逛不完的 Google HQ!

離 Google 不遠的 Linkedin HQ!離 Google 不遠的 Linkedin HQ!

地址是無窮迴圈 1 號 (1 Infinite Loop) 的 Apple HQ!地址是無窮迴圈 1 號 (1 Infinite Loop) 的 Apple HQ!

Steve Jobs 車庫,Apple 的搖籃!Steve Jobs 車庫,Apple 的搖籃!

聰明又有錢才能念的學校 - Stanford University!聰明又有錢才能念的學校 - Stanford University!

除了朝聖,週六的舊金山一日遊,感謝在當地念書的小 k 帶路。

漁人碼頭 - Pier 39!漁人碼頭 - Pier 39!

起大霧的金門大橋!起大霧的金門大橋!

週日則是 Vacaville Outlet + Napa 酒莊一日遊。

Vacaville Outlet!Vacaville Outlet!

Castello di Amorosa!Castello di Amorosa!

朝聖、觀光行程雖然已經很充實了,不過個人認為這次旅程最大的收穫部分,卻是在這些硬體背後的矽谷文化。課堂中,有俄羅斯人、墨西哥人、印度人、華人等不同背景的同學,茶餘飯後以不同口音聊著各自家鄉的情況。課堂外,有來自台灣的美國同事熱情招待和聚餐,讓我們有機會認識彼此,並了解當地的生活狀況。在參訪 Apple 時,也聽帶路的嘉宏兄談了許多矽谷的創業風氣和環境,或許只有在這種所有人都有共識並傾全力在創新的環境下,矽谷才能成為矽谷吧。反觀一些政府、企業,光是要搞政治、搞內鬥、搞利益分配就已經精疲力竭了,哪有多餘的精神和時間去創新、去研發、去做真正有價值的東西呢?

能有這麼棒的新人禮物,要感謝的人實在太多了,希望未來能將這些有形無形的經歷,化作有用的貢獻,才不會辜負大家的一片用心。

在趨勢的最後一天

2013/04/14 (Sun.)

今天是我在 T 社的最後一天。咦?其實是原本預期在畢業前結束的游牧民「脈絡訪查 (Contextual Inquiry) 工作坊」part 2,因故延到這週,所以又出現在熟悉的 901,帶著訪客證。

一定要用「狠黏」便利貼...一定要用「狠黏」便利貼...

「脈絡訪查」講白話,就是跟著使用者一起實際操作,並藉由問答對話來獲得行為背後的動機。這裡有兩個重點:1. 比起單純的 interview 對談老半天,跟著使用者一起實際操作讓問答裝方都更有臨場感,甚至能捕捉到許多 interview 沒辦法套出來的細節。2. 相較於蔡志浩最愛的偷窺觀察法,藉由臨場的問答,我們更能在第一時間掌握使用者當下的思維,獲得表面行為底下的思考邏輯。這裡有個值得思索的地方,探測使用者行為和動機之間的取捨,有點像是物理裡面的「測不準原理」,使用者的真實表現就像位置,使用者的內心世界的思考邏輯就像動量。當我們想多了解使用者真實的表現,最好的方式可能是找徵信社,從很遠的地方用大砲攝影機來偷拍,這樣一來我們可以多得到一些像是挖鼻屎來吃、在游泳池裡面偷尿尿之類,他不可能在面對 researcher 的時候表現出來的行為。但這樣我們就不知道他當下挖鼻屎來吃的背後動機到底是什麼;反之,當我們想多了解受訪者內心世界的思考邏輯,勢必就得藉由詢問的方式引導出來,但這樣他可能會因為我們的介入,想要維護社會觀感或是保護個人隱私而有所保留。也就是說,要同時準確地測量真實表現和內心思考邏輯這兩件事,似乎是不太可能達成的。

第四組傑作...第四組傑作...

除了兩天課程,這次工作坊由一項實作作業「改善賣場體驗」所貫穿。首先,藉由每個人的實際賣場訪查,小組針對每位訪查結果進行 Brain Dump,留下值得記錄的重點以及可能很重要卻沒問到的疑點,並透過 Affinity Diagram,將諸多重點由事實往抽象依序整理收斂為 inquiry, behavior, value, key concept 四層。接著,藉由 Wall Walking 及 Idea Fusion 來發散並收斂解法,透過 Chain Storytelling 讓不錯的想法透過大家的想像來跑一次,利用 Vision Consolidation 來列出 story 中的優缺點並針對缺點提出改善作法。整體來說,算是符合 IDEO 骨架 Empathize, Define, Ideate, Prototype, Test 的實踐方式之一。

小弟拙作-第四組之創意特價商品迴轉壽司。小弟拙作-第四組之創意特價商品迴轉壽司。

UX 實在是一門相當有趣的領域啊!

P.S., 游牧民在最後問答時間有推薦一個 IDEO 開放出來的 tool kit - HCD Connect,也推薦給有興趣的大家。