Crosslink Recap —— Design pattern: build your first profitable DApp and smart contract

MinakoKojima
Taipei Ethereum Meetup
8 min readOct 21, 2019

上文 里說到,這幾天我在 Crosslink 作為文字組的志願者,此次我負責這個議程的記錄,裡面非常多的 insight,我聽了非常感動。

會後,陳品來和我說,這次有一點遺憾是自己選擇使用英文,但是自己的英文並不足夠流利,使得大概只是介紹 slide 內容本身,如果用中文的話,就可以捕捉到更多的信息了。但是我覺得現在的版本就已經足夠好,會議當天臺下也有很多 foreigners,這種偶爾選擇走出自己舒適區的方法也是非常值得鼓勵!

陳品和我同是 TPE 的演講者,同時又都在去年成立了自己的 Dapp Startup,我們之間 share 著許多共同的觀點,這一次能夠記錄這個議程,也可以從側面描述一些從我的視角出發的補充論據。這里順便吐槽一下,剛從大阪 Devcon 回來,去了北京 Dragonfly,為了參加 Crosslink,中間不得不又回到日本,差點沒累個半死 …

參考資料

挑戰

回到當天的議程。首先陳品介紹了 Dapp 開發者所面臨的挑戰,他將一個 Dapp 的生命周期,劃分為三個階段:

  • Bootstrap 冷啟動
  • Value Capturing 價值捕獲
  • Sustainability 可持續發展

其中最難的也是最核心的是第二個階段,Remember what has been told by Felix?

緊接著,陳品類比擴容悖論(Scalability Trilemma) 提出了 Dapp 悖論 (Dapp Dilemma)。開發一個 Dapp 非常容易,但是要開發一款可持續盈利的 Dapp 卻非常困難。究其原因,就是 Dapp 合約在默認情況下應當是開源的,而開源則意味著任何人都可以 fork ,然後將手續費設置成更低甚至是免費的版本。然而開源,或者說 「可分叉性」 ,這柄高懸在開發者頭頂的達摩克利斯之劍,又恰恰是她最迷人的地方。開源、自治、可持續,是每一個 Dapp 開發者所追求的極致的目標。

如同擴容悖論 (Scalability Trilemma) 只是 hard to achive 一樣,Dapp 悖論 (Dapp Dilemma) 也並非無解。

月前 Shell Xu 在 Linux Story 群里有一次 關於開源盈利模式的討論。Btw, 我之前在 Github x 平安雲的活動上, 還有幸聽了 Shell 的一節課

Shell 認為開源的盈利模式,有很多種,其中包括:

緊接著我提到,發幣其實也是一種。這一點最好的文章是 Naval 14 年寫下的那篇著名的 《比特幣眾籌模式》。這個觀點 Shell Xu 也非常認同,並且他還特別指出發幣事實上是很成功的一種手段。另外,最後我的觀點,我後來也專門寫了一篇文章, from open source to self hosting … 這是一個 Self hosting 的例子。

案例

EasyDAI

接下來陳品開始分析一些實際的案例,首先從自己的作品開始。

使用者將以太幣存入後,便會透過智慧合約自動執行,將以太幣兌換為美元穩定幣 DAI,隨後把 DAI 存入 Compound 借貸放款平臺,經由智慧合約去中心化地放款給其他有融資需求的用戶來獲得利息。
——
EasyDAI

我們看到 EasyDAI 的一筆交易中,會同時調用經過多個智能合約,這種互通性(Interoperability),也是 DeFi 項目的魅力之一。參見 InstaDApp, Bridge Protocols

Bancor VS Uniswap

剛才說到,發幣也是一種商業模式。談及 ICO,雖然我们都知道 Linux 那句著名的 Talk is Cheap,Show me the code,但在區塊鏈的世界,通常的作法則是 You reap, before you sow。但是並不是說,發幣就是解決所有的問題銀彈,可以參見 Gitcoin 的那篇,而一個多餘的 Token 帶來的後果很可能是災難性的。

“你這個問題,發幣就能解決“

Why Gitcoin Didn’t Launch With A Token

比較 Bancor 和 Uniswap,Uniswap 勝出已成公論,原因很多。首先 Uniswap 不會被 Bancor 代幣尋租(之前 Bancor 的運營人員有聯絡到我們希望幫我們的 EOS 代幣上 Bancor 交易所,當然代價是 5000 usdt。。。)。

然後更致命的原因 Bancor 的流動性是死的,而 Uniswap 協議的流動性足夠靈活,可以隨著市場的變化,動態調整。

最後 Bancor 協議的前提,假設 cw 是定值看起來也很沒道理。而所有這些原因,導致的結果就是會是 Bancor 錨定的代幣,缺少脫鉤的機制。關於這個論點,我之前在 Dapp Review 專門寫過文章: 重新審視 Bancor 演算法,為什麼 cw 是失效的設計

Kybey

接下來列舉了一個中庸的例子,Kybey。他依靠著 offchain 的設計,避免自己過早的遭遇分叉,從而也成功的積累了網路效應。

Raiden Network

而作為失敗例子的代表,相比於 Lightning,Raiden 網路發行了自己的代幣,並且類似以太坊那樣將這種代幣作為手續費,但是這種做法並沒有捕獲到 Layer2 的價值,從而導致項目的失敗。

MakerDAO

最後陳品舉了一個正面的價值捕獲的例子 — MakerDAO,這個觀點也和此前 X-Orde 群里 Tina 的看法一致。

結論

Given that all of the code that powers crypto networks is open-source, the only source of defensibility is network effects.

While there are many ways to bootstrap network effects for layer 1 assets, in the long run, we will see consolidation as price volatility between chains is ultimately value-destructive. Layer 2 assets, on the other hand, don’t need to defend themselves against 51% attacks. Instead, they build network effects through the value of the state they contain.
——
On Value Capture at Layers 1 and 2

回到 Dapp Dilemma,因為 Smart Contract 默認你就是需要開源的,所以所有開源軟體會遇到的問題,你大概也都會遇到,而解決這一問題的唯一方法,陳品在 slide 里也進行了總結,就是 在被分叉之前,捕獲足夠的價值,從而積累出足夠的網路效應作為你的壁壘

QA

Q: 如何實現閉源。
A: 不要在 etherscan 里 verify source code 就可以了。 這里我還有一個小的疑問,因為實際上我們所有的 bytecode 已經上 EVM 了,這里是否有可能被逆向工程?@陳品

Q: 閉源真的有用戶來用嗎?
A: Of course。

Q: How about PollTogether?
A: 這是一個價值捕獲的好的例子,等到他們開源的時候,合約里已經有足夠吸引力的 deposit 了。

--

--