about 9 years ago

Today I want to tell you a story about Growth Hacking

If you want to create a product—it doesn't matter whether you are creating a platform to sell some baubles or launch a training course. Never start off by making a foolish plunge into the project, as this is likely to get you failed. The reason for this is that you have no way of knowing:

1) If anyone is going to buy your product;
2) If you have the charisma to just put something on Facebook and make that thing sellable;
3) If spending a lot of time making the product will but make very little money.

MVP for Product Marketing Fit

It is better for you to create a Landing Page first. Do some mini promotions to see if there is any interest out there. When writing your landing page, you can also take the opportunity to work out the core values of the thing that you are going to sell.

If you can't even make a proper Landing Page, it is probably best if you throw in the towel at this point. You are just not suited to selling things. However good your product, if you can't make the selling process work, you are just wasting your time.

After that, you can decide your next step based on the feedback you have received from your Landing Page. This can be done via CTA (call to action), email collection or even pre-payment, depending on the nature of your business. Sometimes, collecting via email is not equal to someone is willing to pay you. You should note this.

On the Landing Page you can put up Qualaroo to ask some hypothetical questions to draw out answers, or you can put up Olark to make users feel at ease about asking questions. In short, you should do your best to make users willing to give you feedback. This is the Art of Asking. If you don't ask, you won't know what other people want to buy. And you must make it comfortable for other people to ask.

The next step is creating MVP based on feedbacks. Remember, it is OK just doing MVP; you won't have time to do too many other things. At this stage, you shouldn't think too much about having too many functions to pitch in front of VC . Creating too much functions is downright useless. VC only cares about your traction, which is your income, registration number, monthly activity rate, growth rate ... etc. If you don't grow, nothing matters.

You just don't need to do everything at once, otherwise you will spend up your money so quickly. I suggest 3 to 5 MVP functions are good enough. If you have too many functions, you don't know which is most important features you need to improve.

After Product Marketing Fit: Growth

After PMF. Or what ever, you should just put up some analysis tools and testing funnels. It is enough that you have one or two funnel indicators. Then, set the conversion rate of the funnels and use them to improve UX. This may also be a good time to introduce A/B Testing. I suggest you do A/B Testing for landing, copy-writing, buttons, shopping carts, etc. UI does not have to be beautiful but need to be useful. Without Conversion Rate, design is useless.

Another thing is to smooth out the Onboarding Process. Your initial users are people who "really like to use your product", so they are passionate about your product and would find a way to make it work. But other people --they are just not as passionate, and so you will need to fine-tune your product until even grandma know how to use it.

Once you have smoothed out Onboarding, you should look to referral. Referral is the key to organic growth. A good product is loved by everyone, but people must be able to share it easily and remember to share it. Offer people a reward for sharing.

Making Money

This depends on the nature of your business. A business is basically about selling things. Making money from the outset is unlikely to happen unless your product favours pre-empting Users, in which case, you should put your focus on pre-emption. You can receive money strategically: set different price ranges again and again to test out the actual fixed price.

Don't forget that Activation Rate comes first in importance; then followed by Retention, and then, Referral. Don't foolishly rush into acquisition; acquisition takes a lot of money. If your funnel keeps leaking , you are as good as throwing money into a fire pit.

No matter what improvement you do, you must first tie in Funnel. Use the funnel to test assumptions, establish an infrastructure, and use the infrastructure as a basis to put several ideas to A/B Testing. (But if your product is too common, copying best practices may directly lift your conversion rate several percent points).

After that, you should make it a priority to instill the concept of Growth in the mind of every member of your team, and make them willing to work for this. Otherwise, if one member of your staff is confused about the situation, just wants to act like a bureaucrat or yells clean code every day, then you are in trouble.

There are many books and articles you can read. Look for Landing Page, Copywriting, A/B Testing, Customer Development, Metrics Driven, Onboarding, Referral, Conversion.

Don't just search with the keyword "Growth Hack"; it will just get you much confused.

about 9 years ago

推薦給各位兩篇關於 Growth 的文章

這兩篇提到很有趣的一件事情,在 YC,所有 Startup 都被明確要求一件事:Growth。

一個好的 Growth Rate 是你的 Startup 每週成長 7%。如果你的 Startup 沒有到這個速度,每週只有 1%,那表示你的 Startup 可能哪裡做錯了。

這是一張 Growth 週 / 年的對照表。

YC 建議 Focus 在 Growth,其餘都不重要。因為當你的公司不成長,其餘都是白費力氣。同時,如果你把精力都放在成長,甚至問自己和整個團隊,我們這周要怎麼做才能成長 7%,那你的團隊就會上下同心。

因為製造一次的 Event,玩一次巨量成長很簡單,但如果條件是週週都成長 7%,你就無法這樣老是搞這招。這會促使你時時都會思考,長期與短期的成長策略是什麼,你就不會浪費時間在無謂的事情。


about 9 years ago

提到 Lean,恐怕大家只記得 Eric Ries 寫的那本 Lean Startup 。但老實說,雖然 Lean Startup 這本書名氣大,但內容卻是最乾最雞肋的一本。

Oreilly 後來有出了一整套 Lean 系列,如果你想創業或正在創業,我推薦讀者依順序讀這五本書。

1) 首先買 Running Lean,把你想做的點子「收斂」成「MVP」。別貪心,就是只做 MVP就好。

2) 接著買 Lean Customer Development ,將你的 MVP tune 的讓客戶越來越喜歡越容易衝動下手買。

3) 再來買 Lean Analytics,教你用數據做決策。

4) 買 Lean UX 配合數據與顛覆傳統設計工作方式去改善產品界面。

5) 最後買 Lean Marketing for Startups,教你配合數據做 Viral Growth。(這本不是 Lean 系列,只是書名有 Lean)

about 9 years ago

Davc McClure 曾經分享過一張關於 Marketing Channel 的難易度分析表

The Missing Trick : Referral

在這張表裡面,最簡單(綠色)的幾個技巧, 大家都耳熟能詳,也用的很熟練。

  • Email
  • Blog
  • SEO

唯獨 Referral,大概需要實際寫 code implement,所以比較少人討論。

但很少人知道,事實上 Referral 才真正是 startup 形成病毒傳播的必備武器。如果你觀察目前 YC 底下最值錢的兩大 Startup,可以發現他們剛好也是目前 Referral Program 做的最好的兩間 Startup: Airbnb 與 Dropbox。

事實上,目前事業擴產版圖越來越瘋狂的 Uber 也是愛用 Referral 一族。

How to Build Referral Program

Referral Program 主要有幾種玩法

  • 給 $10 折價卷
  • 給 10% off
  • 集滿十點免年費


如果你不熟悉怎樣建制一個 Referral Program,其實現在這個產業也成熟到發展成獨立的 SaaS 了,我知道主要最大的有兩間:

這兩間幾乎都把建一個 Referral Program 需要面對的挑戰與機制做好了。比如

  • Fraud Preventing
  • Referral Analytics
  • Referral Widget
  • Billing Intergration
  • Well-documented API

如果你懶得寫那麼多 code 的話,其實直接整合現有服務也可以。或者是不知道怎樣的 Referral 實務才是最好的。直接抄他們 Widget 的設計或者是看他們部落格分享的 Tips,因為這都已經是產業 Best Practices,人家賣的就是把 Best Practices 自動化的產品。

Referral Checklist

雖然 Referral 「看起來」只是一套推薦朋友送折價卷的系統而已。但其實這裡面有不少學問。我整理一些必備的「檢查表」在這裏。

1) 自動產生的 referral code 建議不要是亂數,而是要貼近這個人的名字(可以靠 Facebook Login 或者是姓名用演算法做),且要提供給 customer 可以修改 referral code 的機會。

像我的 referral code 就是 http://www.airbnb.com.tw/c/ycheng267?s=8

2) Referral 要有自己的 Landing Page。這樣被介紹的人連過去會有親切感,而不是一個冷冰冰的創造帳號頁面。(所以 Airbnb 推薦各位用 Facebook Login 是這個原因)

3) Referral 要有自己的 open graph image,這樣在 Facebook 上才有傳播效果。

4) Referral 遊戲規則。要清楚易懂,而不是藏在一堆 Terms 裡面。

5) Referral Everyhere, Account 頁面要做,Receipt 要做, newsletter 要做,最好是要有個客製化的專用 Footer。

比如 Airbnb 就會把它們 想要客戶最想要做的三件事 做成一個客制的 Footer,到處插洗腦新用戶。

6) 讓 Referral 變成任務 ( Gamification ),設立 dashboard,讓 customer 有「完成」的動機。比如說 Referral 做成 Give $100 , Get 100,而不是 Give $10, Get $10。

(Dropbox 會用火箭當進度)

當然還有更多其它技巧,比如說改善 Referral Landing on Mobile 到開啟帳號的流程等等一些細微的部分,不過這是最主要的幾點。


about 9 years ago

六月底會回台灣一趟,朋友盧我開一場講 Growth Hack。


時間:7/1 晚上 19:15 - 21:00
地點:CLBC 大船艦 / 台北市松山區八德路四段 123 號 3F

《 適合參加的對象》

  • 自己已有網站或者是 App 的開發者
  • 稍微懂一些技術的 Marketer
  • 對於用數據做 MVP & UX 有興趣的開發者

《 演講內容 》

這次演講大約 1 小時,會後交流約 45 分鐘。

  • What is Growth?
  • What is Growh Hack & How to do Growth Hack?
  • Measuring
  • A/B Testingu sing Optimizely
  • Metrics-Driven Marketing
  • Re-engaging Customer using Customer.io
  • Referral Best Pratices

《 費用 》

門票:2000 元 (含晚餐)。座位有限。


about 9 years ago

根據維基百科。「Growth Hack」的定義是「技術創業型團隊通過數據分析和量化指標來推廣產品時所使用的一種市場營運技術」。

坦白說,這一串看起來是中文,但是對於沒做過 Growth Hack 的人,看起來跟火星文一樣。

Growth Hack 場景

我換個 Growth Hack 場景會發生的事,讓讀者比較有點頭緒:

「今天一些訪客到你的網站點擊了『註冊』按鈕,開啟了一個帳號,你也『察覺』到了他們訪問了『Pricing』的頁面,但在『一周內』這些訪客竟然沒有升級。發現「轉換率」竟然超低,0.5 % 不到。

你想問問他們阻止他們進一步的行動在哪裡。從「有開信回覆」客戶,回應得知是 C/P 值不夠好,你想 A/B Tesing 策略『多送一個月會員』,『給 10% coupon』,試試看哪種策略見效。『沒開信』的客戶,直接再『送兩個月會員試用』。


這樣的場景,在傳統 Marketer 來說是完全無法想像的事

  1. 要如何追蹤一系列這樣的行為?
  2. 要如何全自動做到?
  3. 這樣的技術團隊要多貴?

所以多數的 Marketer 追求的是「曝光」追蹤,測試不同曝光手段不同文案的轉換率。但是在曝光以後的階段,他們完全無能為力。所以市面上絕大多數的 Marketing 都在談「曝光手段」的極致化。

但等等,Growth Hack 的定義是:「技術創業型團隊通過數據分析和量化指標來推廣產品時所使用的一種市場營運技術」。『創業』????




在做 Growth Hacking 時,一般人比較少用 Google Analytics,比較常用的是 Mixpanel

Mixpanel 做得更多是對用戶行為的「描繪」。做的方法是這樣的,開發者針對網站或 App 上所有「Click」,「Submit」,「Impression」的 Event 做埋 code 監聽。(這需要 JS / iOS / Android 技能)

當使用者觸發這些動作時,client 會將事件傳回去事件中心。所以透過 Mixpanel 這個工具,可以具體描繪出用戶在這個網站上的軌跡。


而使用者真正下單之後,對後端服務 submit order 後,網站之後也 submit 一個事件回去記錄使用者已經下單了,這次下單購買什麼。(工具都會提供 identify 這個動作,所以有辦法準確記錄前端的某個 session 是後端的某一個人)
收集了這些 Event 之後,以下這個敘述的場景就不難做到

「今天一些訪客到你的網站點擊了『註冊』按鈕,開啟了一個帳號,你也『察覺』到了他們訪問了『Pricing』的頁面,但在『一周內』這些訪客竟然沒有升級。發現「轉換率」竟然超低,0.5 % 不到。」

然而,我們也不會單只用 Mixpanel 這套工具。如今具體而言,Growth Hacker 都會使用 Segment.io 這套工具去蒐集 Event 。Segment.io 的優勢就是整合了很多服務,只要搜集一次資料,就可以一次同時倒入很多 Growth Hacking Tools。

搜集到了這些 Event 之後,會再利用類似 Customer.io 這種工具,將 Event 匯入建立描繪出個人 Profile。

如此一來,就可以利用 Customer.io 上的這套工具,精確瞄準出(用界面選單方式,精確 Select )出你要 Target的人。在「固定週期」內對這些猶豫不前的客戶進行臨門一腳的「推坑」。

Automated Targeted Email

以下這個敘述的場景在 Customer.io 上真的是可以實際做到的。

「你想問問他們阻止他們進一步的行動在哪裡。從「有開信回覆」客戶,回應得知是 C/P 值不夠好,你想 A/B Tesing 策略『多送一個月會員』,『給 10% coupon』,試試看哪種策略見效。『沒開信』的客戶,直接再『送兩個月會員試用』。」


  1. 針對那些每次只買一件的人,推送買一送一訊息。
  2. 請那些「常客」,推薦其他朋友來買,送他 credit。
  3. 地區性限時打折。
  4. 挽回那些很少再回來的客人。

Growth 其實就是 增加 Conversion ,降低 Churn。

以上講的不是 Growth Hack 的「全部」,只是 Growth Hack 中的小小一個場景。

Growth 其實就是 增加 Conversion ,降低 Churn。當然 Growth Hack 還是需要一些「技術」才能做的 Marketing(這就是為什麼 Growth Hacker 比較稀有,同時要懂技術,營運,與行銷)。只是這些技術並不再是專門養一堆「大數據」技術團隊才能做到的事。


about 9 years ago

國內媒體寫過幾篇 GrowthHacker 的文章,但是對 Growth Hack 技巧的文章幾乎沒有。這一陣子都在玩這個題目,有一些心得,所以決定寫一個初級一點的懶人包,以後跟人解釋時好有個基礎概念。

相信很多人都知道 GrowthHacker 是什麼(幫忙公司巨幅成長的人),但是對 How to Growth Hack 可說是很陌生。甚至對於 Growth Hack 的印象都只停留在「衝 PV」或是「衝下載數」。事實上,Growth Hack 遠不只如此,Growth Hack 是一整套 Marketing 成長引擎。

Customer Lifecycle

要入門 Growth Hack 前,我認為想學這套技術的人應該要從 Customer Lifecycle 這個主題切入。

  • Acquisition : 從多個管道曝光
  • Activation : 註冊帳號使用第一次
  • Retention : 留住客戶繼續用很多次
  • Referral : 介紹朋友也一起用這個 Service
  • Revenue : 從客戶上賺到錢。

了解 Customer 有這五個時期,去 increase 這五個時期的 conversion rate 才叫 Growth & Hack。值得注意的是所謂的 Conversion rate 並不是單指 Revenue,而是 A => B , B => C 中間動作轉換的機率都叫 Conversion Rate。


大多數人對於增進 Acquisition 的想法是下廣告,或者 SEO。這叫 Acquisition。

增強 Acquisition 的手法不外乎是經營粉絲團,下 FB 廣告,寫很好的 FB 廣告或一般廣告流量,改善 open graph 上的標題與資訊,搜尋引擎上的文案。

不過這些效果其實有限。因為讓使用者踏入你的生意第一步最重要的是「 Activation 」。讓使用者願意開一個帳戶,體驗你的生意帶給他的 "Ah-Ha" moment。


增進 Activation 最常用的手段是設計一個 Landing Page。


  1. 消費者不知道你提供什麼服務,不願意註冊
  2. 消費者不懂 How it works,不願意註冊
  3. 消費者有一些疑問,不知道怎麼樣繼續詢問下去,就不願意註冊
  4. 消費者不知道你的來歷,註冊了帳號卻不願意把信用卡資料填上去。

這就是設計一個 Landing Page 的重要性。Landing Page 是「使用者著陸的第一個頁面」。它可以是首頁,或者是 Referral 頁面,或者是搜尋引擎給到的第一個頁面。

好的 Landing 頁面是 Acquisition => Activation 的重要關鍵。因為它能幫你很好的介紹自己。同時在使用者介紹給朋友用的時候,幫你的使用者再一次很好的做了自我推銷。

值得注意的是很多 Mobile App 因為大家都會互相抄襲對方上線的設計,所以很自然的幾乎所有 Mobile App 都有一個很好的 Landing Page。但是大多數的網站服務很少意識到自己也需要一個。

( 之後有空我會繼續談如何作一個 Landing Page )


Activation 之後你會想要讓使用者繼續來你的網站,這叫 Retention。Retention 分兩塊。一個是帳號的 Retention,一個是付錢的 Retention。

有時候你註冊外國網站 SaaS,幾天後 Founder 有時候會親自寫信給你。(或者機器偽裝 Founder 寫信給你)。


付錢的 Retention,則是比如說提供 Daily new deal promo,或者是 Loyalty program....etc.作一些互惠的活動,來保持使用者繼續回訪。


Referral 是讓使用者願意且希望自己的朋友們也來用。拓展使用者 Base。

Referral Program 當然不只有設計 Referral Code 這麼膚淺。好的 Referral 如 Airbnb 與 Dropbox 都有相當好的循環獎勵設計。這也是位什麼他們的 user base 瘋狂成長。

比如說 Airbnb 在 Referral Landing, 獎勵, 與介紹就做的相當好。Dropbox 則是擅長辦競賽以及 online quest。


最後是 Revenue,Revenue 談的是如何 increase revenene。包括 long-time customer revenue, increase customer basket size, customer re-engagement.

圍繞這五個主題的增進 "Coversion Rate"的技巧,稱之為 Growth Hack。


知道了這五個主題,接下來用這五個主題一一去檢視自己的網站,就有很多點可以去作改善。比如說要怎樣設計 Landing Page,怎麼樣設計 Tagline,怎麼樣設計 Call to Action 流程。怎麼樣設計好第一次的 onboarding experience。怎麼樣做好 Customer Service。怎麼樣 Build Referral Engine。如何增加 Customer Re-engagement 的機會。

光是用這些關鍵字,接下來就可以找到很多文章。而且會更讓你吃驚的是,國外在 Growth Hack 這個主題上,其實已經相當成熟,幾乎你要作什麼 improvement,都有相對應的 SaaS 軟體幫助你做到更好。

在這裡也提供一個連結 http://growthhackers.com,這裡是 GrowthHacker 的 Hackernews,在上面可以找到不少資源。

希望大家 Happy Growth Hacking,有什麼想法也歡迎交流。

about 9 years ago

續前作:用 EC2 上的 Windows 玩 GTA 5

前一篇主要是在講怎樣用 Steam 的 Stream 玩 Steam 上有的遊戲。這篇是在講如何如何玩 Steam Library 以外的遊戲。

Steam 的 Stream 技術

用 Ctrl - ESC 逃獄 (不可行)

在可以玩 Steam 上的遊戲後,感到非常興奮,讓我想要去實驗嘗試更多種不同的遊戲。我發現 Steam 的客戶端有點像是桌面傳輸工具,就在想可不可以跳脫遊戲之後去玩其他遊戲。不過跳脫遊戲要用 Alt-Tab,這個指令送不出去,後來改用 Ctrl-ESC 可以順利逃獄。(我開 Tomb Raider 這類輕量的 DOSBOX 遊戲當 Bridge)

但雖然可以回到桌面。但是跑去執行其他遊戲,遊戲更新畫面送不回來。看起來一定還是要透過 Steam 本身的 Client 傳輸畫面回來。


用內建的功能可以把有在 Start Menu 上的遊戲掛上去

但是像在 Origin 上的遊戲如模擬市民 3 ,紅色警戒 3 。

就只能用 exe 的方式掛上去

再把 Origin 從 Game 裡面關掉


Happy Gaming






我強烈建議喜歡模擬市民 3 的人,絕對要用這個方法去玩。

在 EC2 上跑模擬市民 3 竟然比我在家用頂標 2013 iMac (一台快台幣十萬,32GB 記憶體,SSD) 還要順暢 10 倍之多。過場不 lag,存檔不 lag。有股從此幹嘛花錢買厲害硬體的感想 Q_Q

about 9 years ago

今天早上看到 Victor 在 FB 上分享了一篇文章 Run your own high-end cloud gaming service on EC2。大意是如何惡搞 EC2 在上面玩 GTA5。看了看覺得很新鮮,加上這個方法要是成功了,Steam 上的 Windows 遊戲 幾乎就可以玩了,所以動手實驗看看。




  • EC2 上提供了 Windows 2012 R2 的 Server,而 g2.2xlarge 的機器上面有 NVIDIA GRID K520 graphics card。
  • Steam 提供了同區網可以 Stream 遊玩的功能
  • 買一台可以打 GTAV 或 Cities Skylines 的 PC 要台幣 30000 - 40000 不等。而用這招惡搞的方式,一個小時成本大概在台幣 15 元,可以當租台機器在網咖打。(特別是方便我們這種只有 Mac 的人)(如果租到 Spot Instance 大概一小時台幣 3 元...)

所以要克服的主要的點,就是如何讓遊戲可以跑在 EC2 的顯卡上,然後穿牆 VPN 同網段,用 Mac 開 Stream 模式開來玩。

設定 EC2 機器

  • 上 EC2 租 g2.2xlarge 的機器(儘量找離自己近一點的 zone)。

  • EBS 開大一點,至少 150 GB 掛上去。(因為 Windows 本身就 30GB,GTAV 至少 60GB)。
  • Security Group 開 All traffic。
  • 記得要產生 key pair,這是拿來取得 Windows 密碼用的。

一但機器開好了,用 Mac 上的 Microsoft Remote Desktop 連進去,然後架 VNC Server。




設定 VNC

這邊值得注意的是,如果上 RDP 是玩不動 Steam 的,所以 RDP 只是讓你進去裝 VNC 的。VNC 我是用 UltraVNC。(因為跑了 RealVNC,TightVNC,Service Mode 的密碼都設不上去...)

記得 UltraVNC 要開 Service mode 跑成常註。

然後到 Admin Properties 裡面去設定 VNC 密碼。


當初 EC2 的 Allow Anywhere 雖然有開。但是 Windows 自己裡面還有 Firewall。記得要去 Security 那邊加 rules allow 5900 Inbound / Outbound 流量都可以過。

設定 VPN

我是直接跑商用的 Hamachi 點對點直接做 Private Network。

做法是建立一個 network,EC2 與 Macbook 都連到這個 Network 進來。

我完全不建議裝 OpenVPN ,是因為表面上省錢,其實浪費一堆時間,因為 OpenVPN debug 實在太困難....。(我燒掉一堆無謂的時間,最後生氣了就直接裝Hamachi,一年 29 美金而已。)

設定 Steam

打開 Steam 的帳號設定,加入 Beta Program,然後重開

(因為加入 Beta Program 才可以玩串流遊戲)





  • 安裝 GTAV。(這邊沒什麼技巧,不過當初硬碟真的要留大一點...,不夠的話 EBS 是還能再追加,只是要重開機)
  • 安裝 Windows Media Foundation

實際安裝完 GTAV 並登入後,GTAV 會出現一個錯誤

"Dependency MFREADWRITE.DLL is missing. Please reinstall the game." errors on GTAV for PC"
官方有提出解法,不過這是給家用 Windows 7/8 用的。沒有 Windows 2012 Server 用的。最後 google 了超久才試到怎樣在 Server 上裝上去

到 Server Manager

Add Roles and features

裝 Media Foundation


Happy Gaming

然後基本上之後,只要 VNC 進去

  • 打開 VPN
  • 打開 Steam,確認兩檯機器連線
  • 在 Mac 上執行 Stream,接著就可以玩了。


我在 100M 的 Comcast 上面玩 1280x960的大概有 50fps 左右。




如何租便宜的 Spot 機器

有朋友反映,不知道怎樣把 root volume 掛到 Spot 機器上。我是用 on-demand 的機器先裝好環境,然後對該檯機器做一個 AMI出來,然後再用該 AMI 跑去租 Spot。一小時才 0.1X 美金而已。(租一個小時台幣不到 5 元...)

over 9 years ago


現在我的想法轉變成:我認為不應該導入,而是應該導入 MDD ( Money Driven Development ) 。


重看我當年的那篇文章,我想我寫那篇文章時犯下跟很多程式師,以前從來沒想過的一個問題:對 startup 定義錯誤。



Startup 是有一個點子,你認為可行,於是你想要嘗試這個商業模式,或者是將你想像的概念轉換成商業模式。


而 Company 是你有一個已經稍有形狀的商業模式了,你想固定下來,以一個商業組織的形體去營運。

程式設計師加入多半的是 Company 不是 Startup

絕大多數的程式設計師都是加入 Company(因為 Company 才有錢付給工程師去每天專心優化塑形商業模式),而不是 Startup。只是很多大家以為的 Company 根本連商業模式沒有,天真的以為程式寫出來,交付正確的 Spec ,消費者就會自動買單。

Startup 需要的是不斷探索什麼行為是真的可以賣錢的。為了達到這件事,未必需要寫程式,可以是放需求表單,可以是用露天拍賣,可以是用 FB 訊息交易,可以是用 FB 養觀眾。


所以程式設計師通常本質上加入的是一個 company,只有已經確定要做什麼了,程式設計師拿到「確定的需求與模式」,將之塑形。



首先,他們會任命一個不懂生意也不懂技術的人,其實是一個跑腿人物,負責「跟老闆或 BD搜集需求」再「寫 Spec」再「請工程師完成」,擔任一個翻譯的工作。這個職位叫 PM。這也是大部分專案完蛋的原因。

既然是「翻譯」,那中間的那個人兩邊的語言都不會說,你覺得會發生什麼事情?當然是交付錯誤(與 BD 所要的的解決方案不同)。程式設計師為了解決「翻譯者」能力低落的問題,主張中間應該不需有翻譯。所以開始主張 BDD。


1) 誰會使用這個軟體
2) 使用者在操作時會產生什麼情境。
3) 基本邏輯
4) 什麼是必要的,什麼是應該可以有的,什麼是完全不能做的。
5) 以 Story 敘述,而不是 Spec。


好了。回到 Startup 與 Company 的話題。這套手法在 Company 行得通,也必須。因為中間需要經過太多的合作人員,所以我們要透過這樣的手段,盡量減少「翻譯」Cost。

Startup 本來就不是規模化自動化的階段

但是 Startup 需要 BDD 嗎?Startup 都沒人沒錢沒時間耗一天到晚在實驗新需求了,怎麼會是需要用到 BDD 這樣的技巧。Startup 所需要的是 Money Driven Development。只做賺錢必須的功能,找到幾個有錢賺的模式,能 Scale 需 Scale,那時候大家才有興致談 BDD 。

所以 Startup 前期應不應該導入 TDD / BDD?我現在認為這兩個名詞根本不是可以放在一起討論的東西。

就跟我覺得 Startup 跑 Scrum 是奇怪的做法一樣。

(我不是反 Scrum,Scrum 的一些手段對於釐清時程,Story ,權重。不管是專案大小都很有幫助。但是不是每個團隊都可以導入或適合這套流程的。)