首頁

2016年2月6日星期六

[Youtube 筆記] A/B Testing 的六個心得

A/B Testing 是網絡應用――尤其電子商務網站――常用的測試,目的是透過抽樣測試來獲得使用者數據,為採納何種系統改動的決策提供依據。系統改動可以是頁面排版設計、按鈕的顏色和描述文字,甚或購物流程的變更。其原理為利用測試工具隨機將部份使用者發配到不同的系統改動試版,再觀察各試版和原版的使用者行為,例如註冊比率,來比較改動的效果。
(錄像截圖)

這段錄像是Google Venture Startup Lab 2013 上一個題為"A/B testing done right"的演講。講者是網站分析工具Optimizely 的創辦人,過去曾於Google 和奧巴馬競選團隊工作。



演講上他以自己工作過的個案為例子,分享了採用A/B 測試進行系統改進的六個心得:

(錄像截圖)

1. 先釐清成功基準,而且是可量化的。


例如,改進目標是提升註冊人數,不加思索的話會以為要優化的是註冊表格,但將網站訪客轉換成註冊用戶的瓶頸,可能其實是由其他頁面跳到註冊頁面這個環節上。那麼要改進的應該是引導訪客註冊的按鈕,而量度指標就會是該按鈕的點擊率。
(錄像截圖)

2. 先探索再焠鍊


A/B 測試是一個篩選方案過程,故此測試應盡量探索各種改進的可能性供篩選,以免鑽牛角尖而錯過最佳方案。
source: https://blog.intercom.io/criticism-and-two-way-streets/


3. 削減選項 Less is more. 


過多選項會令人無所適從。減少選項更能引導使用者採取行動。
(錄像截圖)

4. 用詞很重要,尤其是Call To Action


那些呼籲使用者註冊、購買、捐獻的按鈕或連結的用詞,對使用者是會否行動非常關鍵。
(錄像截圖)

5. 失敗要早


那些我們以為會帶來改進的變更,並不一定都是正確的,有時候甚至會適得其反,尤其是變更有違使用者的習慣。採用A/B 測試能在正式採用前及早發現那些錯誤的變更。
(錄像截圖)

6. 今天就開始


越早採用A/B 測試越早受益。



2016年1月17日星期日

[Meetup 筆記] 如何繪畫別人看得懂的軟件架構圖?──Simon Brown 的C4 Model

作為軟件開發者,你試過看不懂別人的架構圖嗎?或是自己嘔心瀝血徹夜畫的架構圖,別人卻看不懂?

講題:The Art of Visualising Software Architecture
講者:Simon Brown (個人網站
主辦:Agile Hong Kong
時間:2016/01/15 晚上
場地:Odd-e 在上環的新辦公室


上星期五晚出席了一個關於軟件架構視覺化的講座。講者Simon Brown 多年從事系統架構的顧問和培訓工作,也會到世界各地演講,著作有Software Architecture for Developers 和The Art of Visualising Software Architecture 。其題為"The Conflict Between Agile and Architecture - Myth or Reality?" 的演講在Software Engineering Institute 主辦的SATURN Conference 2013中,獲參予者票選為"Architecture in Practice" Presentation Award 得主。

軟件開發者常要畫架構圖,但沒人看得懂……


講者Simon 首先提到敏捷開發有賴良好溝通,但在他工作和開辦工作坊的經驗中,發覺很多開發者無法有效地講解自己的構想,想傳達的資訊往往像卡在他們的腦袋裡。雖然開發者常畫圖來幫助講解,而軟件工程界也制訂了諸如UML 的建模語言和製圖規範,不過事實上大部分人都覺得UML太複雜所以很少用,尤其是高階的架構設計圖。

於是很多開發者以自己的方式畫了令人不明所以的系統架構圖。有些圖使用了意味不明的顏色和圖形(這個粉紅色的虛線想表示什麼?),有些則過多實作細節(User → UI → Calculation Engine → Data Reader → ……),有些將架構(Architecture)、運行(Execution)、部署(Deployment)等不同面向的內容混在同一幅圖裡(Import Service, cron, UNIX VM instance, …… )。結果這些「設計圖」徒令本來要說明的構想更難理解。

C4 Model - 地圖的類比


針對上述情況,Simon 認為"A common set of abstractions is more important than a common notation.",提倡C4 Model (Context, Container, Component, Class),將系統架構分成四個層級的抽象化。一個系統會有一個Context 以及各種使用者和其他外部系統,Context 由多個Container構成(例如web app, mobile client, database, etc.),每個Container 包括數個Component ,而Component 由class 組成。

2016年1月11日星期一

[電影] 《十年》觀後感


這是齣具明顯政治意圖的本地獨立電影。會去看一方面是因為它近來引起話題,一方面是受到所屬的意識形態的感召,就像耶教徒看福音電影一樣。

畢竟我們大部分人都欠缺想像力和表達能力,渴望有人代勞――頗典型的黃絲行為模式。

電影由五個單元劇組成,嘗試呈現十年後香港社會的想像,當中觸及港獨、洗腦、國安法、新移民、少數族裔、政治酬庸、政黑勾結、扼殺本土等等許多許多題材。意象雖既不新鮮也不大膽,多年來很多人都撰文或開咪討論過,但化為影象構成故事,恰如坐上時光機一下子跳躍到十年後幾個並行的時空,對缺乏想像力的人仍然比較有感染力。

有人或覺得情景略嫌荒誕或太戲劇性。我相信我們十年前看到近來書店店東被失蹤被報平安、雨傘運動、黑警橫行的話,也會抱相同感想。電影中的扭曲社會,不過是現實社會扭曲的延伸,《十年》不在未來而在當下。觀眾對情景的距離感,正反映自己對刻下扭曲的無視和毫無準備。他日身處電影世界,再沒有距離感恐怕是因為十年的習慣和麻木――若非甘之如飴的話。

數年來的習得無力感逐漸累積成焦慮。恰如單元劇《本地蛋》裡廖啟智說:「唔好慣呀!」。看,是要一再告誡自己:別去習慣。因為習慣原來不難,一河之隔就有十一億人和父祖輩習慣過來了。

我不懂評價以獨立製作來說這齣電影水準如何。不過以實現政治意途來說,它仍然跳不出一個普遍的框框。借用友人的講法:香港人現在並不欠缺警世預言,更需要的其實是行動的理想願景。

以下是各單元的簡單感想。(輕劇透)

單元一《浮瓜》
只求自己溫飽的邊緣小人物,為虎作倀,也終成虎口亡魂。情節最富戲劇性,雖然算不上出人意表。為什麽小混混是新移民?為什麽南亞裔會有印度可以返?

單元二《冬蟬》
瀰漫足以令觀眾界櫈離席的膠臭……

單元三《方言》
故事略嫌陳套無力,猶如故事主人翁。不過主人翁的無力感,也正是普遍港人感受。

單元四《自焚者》
呈現出現在和以後,抗爭理念路線的紛紜亂象。積極、條件反射、主動、被迫、激烈、和理非、犬儒、左膠,互相攻訐。人人很會抽水打嘴炮,行動沒幾個,我地繼續花幾十蚊睇場戲食花生肉緊一下。

單元五《本地蛋》
感受最深刻。本地人自然會在中青少三代幾個角色身上見到各種自己。那看似仍有一點點希望的結尾,其實相當絕望。

電影《十年》Facebook 專頁

《十年》電影官方預告片

2016年1月2日星期六

真係仲起?英國的廢棄鐵路與香港的超支高鐵

講到香港高鐵工程嚴重延誤超支,很多人的感覺係:「都掘左咁多啦,唔通唔起埋佢咩?」以為只要高鐵完工,撥款深潭就會見底,高鐵始終會成為帶來經濟和社會效益的基建,一直營運落去。

但放眼世界,因虧本而廢棄的鐵路比比皆是,英國1960年代大幅削減鐵路網的Beeching cuts 就是著名案例。

英國在十九世紀經歷鐵路狂熱的經濟泡沫,市場和政府對鐵路需求過份樂觀,大量熱錢流入過度投資擴建鐵路網。其後因國內道路網的完善,非常多的鐵路路線不敵來自道路運輸系統的競爭而連年虧本,最終被國營化變成政府的財政負擔。

為解決鐵路營運入不敷支,英國鐵路局遂於1963和1965年提出報告,建議大刀闊斧削減缺乏成本效益的鐵路服務,包括多達30%的路線和55%的車站。附圖展示「削鐵」前後的英國鐵路網。如今英國各地仍然能見到很多廢棄了的鐵路路段。



香港高鐵不但嚴重超支,亦被揭發效益不比已有鐵路高,回本無期之餘仲可能要蝕本營運。

──真係仲起埋佢?

「但停工的話掘左的地洞咪會嘥晒?」

其實地下空間唔一定造鐵路,工程師兼議員黎廣德就建議改建作公共社區和商業用途。


相關報導