香港政府近日以發展「智慧城市」為由,積極推行包含人臉辨識功能的「多功能智慧燈柱」,收集大量公眾數據。這邊廂「智能城市」技術剛要起步之際,美國加州奧蘭多省議會不久前則宣布禁止政府機構及警隊使用臉部辨識技術。理由是認為臉部辨識技術爭議太多,並不適合警方用於「起底」用途:

Face recognition technology runs the risk …


“10 Things I Regret About Node.js” — Ryan Dahl

「養不教,父之過」- Node.js founder Ryan Dahl 在 JSconf 2018 點評了十個在設計和更新 Node.js 時犯下的錯誤。

發現中文圈子還沒有太多關於這資訊的整理,在這裡輕輕的寫一下。

2008年 Chrome 才剛剛出現(現在已經更新到v66.0了);而 Node.js 也其實也是至十年冒起的代表 - 它只是200 …


As a company founded by developers, we created an office that would naturally attract other passionate geeks to join us. But as we hired designers, and then business team members, we realized our new team members didn’t always understand us.

Hence we’ve prepared a general guide to help you communicating…


Airbnb 在 VelocityConf NY 2014 中講到一個很有趣的題目,叫做:「Scaling Things That Don’t Scale」

強行中譯的話,好像會變得很別扭,大意就是:擴展那些不能擴展的東西(?)

但如果要非得要翻譯出來的話,我會這樣講:

「由零到一之後,怎樣由一到十」

YC 的 Startup 心法提過,做Startup就是首先要:「Do things that don’t scale」。一開始千萬不要把心機放到 Scaling 之上,而是集中火力盡快把產品做出來。

一旦業務成功而要面對擴充需求,當然是一件值得慶賀的事,但代表接下來經營者要準備迎接更多複雜的問題。

然而其實這已經是一個Happy problem,因為當要考慮到「擴展」時,就代表產品在市場上已經找到合適的落腳點。就是我們常說的由「0」來到了「1」

MVP 一開始就不是為「Scale」

Often MVP doesn’t scale

一件MVP 本身就是為了趕上時機而建造的。做MVP的過程中著重的是能最快捷起好的架構、最簡單的解決方式。所以大多數時間,都是去考慮如何減功能、用最低技術資源去實行。

這些方向往往跟完善的「自動化」完全拉不上關係;反而通常是用無盡的勞力去補完。就算生意多麼成功,這類方案的重點是:很快、很有效,但是沒有擴展性(It doesn’t scale.)

Airbnb 剛成立時,他們需要大量的旅館照片和資料,令到網頁有一定數量的旅館存庫。

那時候,他們選擇了用最耗人手(但最有效)的方式-派人逐一去城市裏數百家旅館探訪和拍照。這「貼地」的做法,讓他們極速獲得第一手最齊全的資料,為開始業務做了最佳的準備。

當然,當業務成功後,Airbnb 開始擴展到世界各地的不同城市,後期已不能夠單靠無限添加人手,去應付搜集全球其他城市旅館資料的工作量。這就是「Something that doesn’t scale」的好例子。


Photo by Andre Benz on Unsplash

The idea of Skypad came from my colleague, Howa. He threw out one of his random ideas in our office chats, “Why don’t you write Skypad like Firepad?”

Firepad is associated with Firebase, which is a serverless solution just like my company’s. After checking it out, I said, “That’s a…


Photo by Julie Macey via Unsplash

When my colleague threw out a random idea to create “Skypad” as our company’s own version of Firebase’s Firepad, I tried to do an MVP that night and put it on Hacker News at 1am just for kicks. The crazy thing was this 2-hour MVP app the first page!

It…


Managing user content without writing backend code.

Photo by Hans Vivek via Unplash

Disclosure: In this tutorial, we’re using Skygear, our company’s open source backend-as-a-service (BaaS), to help developers build serverless apps. Skygear includes essential features such as push notifications, cloud database, and user authentication.


A spreadsheet-based API for building MVPs.

Photo by Dimitri Tyan via Unsplash

What do you do if you have a site you want to update once in a while? It’s not a blog, so you don’t want Wordpress. It’s also not worth building a customized backend. …


And how the original Pizza-as-a-Service illustration is wrong.

Photo by Cathal Mac an Bheatha via Unsplash

The Pizza-as-a-Service metaphor was firstly introduced by Albert Barron in 2014 as a visualization of the differences between Infrastructure-as-a-service (IaaS), Platform-as-a-service (PaaS) and Software-as-a-service (SaaS). At first sight it looks brilliant — but if you look in depth, it falls apart. This diagram wants to illustrate that you need to…


It becomes a place where people steal.

I fancy the sticker feature in Telegram a lot. That’s actually how I pitched groups of my friends migrated from other WhatsApp to Telegram — just solely because Telegram supports attractive stickers.

Of course, Telegram is actually a fast and secure instant messenger app with an insanely smooth user interface…

David Ng

Software Engineer | Previously Growth @ SCMP | davidng.hk | Love hiking and camping.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store