Web3設計的第一原則:建立變革的世界,而不是工具

Leonardo
2022-05-20 17:24:53
收藏
最成功的產品都學會了比他們的前輩更方便地滿足人類的欲望,因此,工具所處的世界才是對用戶有持續價值的地方。

作者:Leonardo

原文標題:《Designing for web3: thoughts from first principles

編譯:老雅痞

在推特上每天都有很多關於這個建立在所有權和去中心化前提下的新數字世界的討論內容。我進入加密貨幣有一段時間了,每個人都在熱情地推動這個宏偉的願景讓我感到驚奇。但是,通過我們正在構建的產品對這一願景的體驗,是相當不理想的。

要說在前面的是:我沒有任何諷刺或懷疑的意思,但我是認真的。

糟糕的用戶體驗和相當混亂的 Web3 產品太常見了,甚至忽略了基本的最佳實踐。為什麼會這樣?

是因為有一些基本的技術限制,需要更大的表面複雜性,還是因為我們沒有努力去思考新的觀點?或者更糟糕的是:是不是因為 Web3 的建設者不只是對過去的經驗教訓感興趣?

我知道打破舊的標準是 Web3 基因的核心,但是我們真的確定所有的東西都應該是「革命性」的重新設計的候選者嗎?底層技術可能能夠做到以前從未想像過的事情,但普通用戶並不完全明白,更不用說使用它了。

我相信,這些都不是顯而易見的問題。這個問題之所以不明顯,是因為一段時間以來,我們第一次在互聯網上與一類新的人打交道。這不僅僅是技術問題,也是行為、意識形態和身份問題。為具有兩極化本性的人設計東西,本質上是很難的。

我想寫一篇文章,從設計的角度來了解這個新的技術和產品浪潮的本質。從那裡,我試圖推導出一些簡單、清晰、易懂的首要原則,希望這些原則可以作為未來的基本原則為他人服務。

這篇文章可能是那很容易引起異議。然而,它是一種嘗試,就像保羅 - 格雷厄姆所說的一篇文章,要去理解一件值得探索的事情。

這是一個雄心勃勃的目標,所以讓我們從基礎開始:什麼是「Web3」,它有什麼根本性的新特點?

Web3------ 一個前提

讓我們說,Web3 是對「加密」的一個有點模糊的重塑。

一般的定義似乎是,Web1(我們說的是 90 年代和 00 年代初)是開放協議的互聯網時代。TCP/IP 用於數據傳輸,HTTP 用於超鏈接,SMTP 用於電子郵件,RSS 用於網絡內容聚合,等等。一切都是去中心化和社區管理的。

這些共享協議產生了不可估量的價值,但其中大部分被下一代公司(Facebook、Twitter、谷歌、亞馬遜和今天的大多數科技巨頭)捕獲並在應用層「重新聚合」。而這段始於 2002 年左右的時間,被稱為 Web2。

最後,Web3 是互聯網演變的最新階段。在這個階段,一切應該通過開放協議和社區運行的網絡再次變得分散,結合 Web1 的開放基礎設施和 Web2 的公眾參與。

激動人心嗎?是的,但也是模糊的。

因此,讓我們更深入地了解一下。什麼是使這一波新技術從根本上不同於以前的一切的核心要素?

在我看來,答案有兩個不同的方面。有一個技術上的原因和一個道德上的原因。

技術上的差異

Web3 促進了一種新的互聯網應用(dapp:去中心化的應用),其前提是去中心化的計算。它們不依賴來自單一中心位置的計算能力,而是由一個點對點的計算機網絡提供動力,稱為區塊鏈。

從表面上看,Web3 分布式應用沒有什麼特別的不同:它們只是正常的反應網站。事實上,這些去中心化的應用程序(我想到的是 OpenSea、Rarible 和數百個類似的市場)絕大多數都將其前端架構托管在谷歌雲或 AWS 等中心化的雲供應商上,而且往往由於性能和可擴展性的原因,他們有「配套」的鏈外組件。(這將是後面的一个重要观点!)

分布式指的是狀態和更新狀態的業務邏輯,在區塊鏈上而不是在「中心化的」數據庫中。

這意味著,實際上你不需要前端的核心功能來保持完整,而且任何人都可以製作自己的前端。

這實際上是可能的,因為這塊被稱為區塊鏈的底層技術,也是它為什麼特殊的屬性之一。

  • 公開性:公共區塊鏈中的每個人都可以看到其成立以來的交易歷史。一切都是透明的。
  • 不可更改:系統中的每個節點都有一份數字賬本的副本。要添加一個交易,每個節點都需要檢查其有效性。如果大多數人認為它是有效的,那麼它就被添加到账本中。
  • 無需信任:它擺脫了對主權機構的需求 -- 沒有人可以為了自己的利益簡單地改變網絡的任何特性。
  • 去中心化:網絡是去中心化的,這意味著它沒有任何管理機構或一個人看管這個框架。相反,只有一組計算機節點維持網絡的運行。
  • 還有一個經常被忽視的屬性:可組合性。這些 dapp 依賴於開放的後端,這一屬性從根本上打亂了不同軟件之間的交互方式。

今天,你可以讓 Stripe 與 Shopify 或任何其他使用其 API 的應用程序對話。如果不同的應用程序同意相同的合約和相同的條款(限制費率、訪問、權限等),就可以建立一種關係。但這裡有一個問題:這種關係是通過一個(脆弱的)相互依賴關係來表達的,隨著更多的應用程序的參與和底層複雜性的增加,這種關係隨時都可能中斷。

相反,當應用程序的後端在一個共享的區塊鏈上活動時,你可以編寫程序,與上面的其他程序進行原生對接。一個 Solidity 程序可以在任何時候調用另一個程序,而且不同應用程序之間沒有交叉依賴。

這就為什麼它容易在所有類型的協議和 DeFi 應用程序之間實現打包、路由和管道信貸和借貸的原因。就像它使我們能夠通過社會門控和 NFTs 輕鬆地創建可互操作的社會機制和可組合的社區商業體驗的原因一樣。

道德差異

許多人說,比特幣的概念是在 2008 年構思的,作為對大衰退和金融界對銀行作為金融交易中介的依賴的回應。這是不準確的,但也不是完全錯誤。

金融危機不是產生比特幣的原因(中本聰早在 2007 年就開始研究它),但它肯定是一個促進因素。

創建這個健全的數字現金系統的目的,是為了去除傳統上數字貨幣轉移所需的第三方中介。作為貨幣獨立的手段,去中心化是主要動機。

直到 2015 年,隨著以太坊和第一個「可編程」鏈上環境的出現,加密貨幣作為非主流的金融行為的其他選擇 ------ 去中心化力量的用例,才開始發展。

以太坊打開了通向新世界的大門,而開發者也踏入了這個世界。

在這個世界裡,協議(特別是智能合約)可以以一種無信任和透明的方式利用共識和基於激勵的機制來「編程」和「執行」。

很明顯,加密網絡可以解決上一代互聯網公司造成的許多中心化問題。以代幣的形式對開發者、維護者和其他網絡參與者進行經濟激勵,可以使網絡參與者朝著一個共同的目標 ------ 網絡的發展和代幣的升值 ------ 共同努力。

正是在這個階段,去中心化的意識形態演變成了其他一些東西。為了實現更透明的決策方式,不僅僅出現了貨幣的獨立性,還有去中心化的結構;以及納入多個利益承擔者,想要為共同的問題找到基於共識的解決方案。

Web3 和設計

理解 Web3 的技術和道德差異是很重要的,因為它們定義了這個新世界的物理定律;如果我們想塑造它的居住者的經驗,這是一個先決條件。

第一部分:「不要相信我;相信區塊鏈」

從根本上說,加密貨幣是一種行為,就像它是一種技術一樣。這種行為有很多方面,但它是從密碼學開始的;而且它從一個核心信念開始:用戶相信他們認為是真實的東西;而且如果它在區塊鏈上,他們就相信它是真實的。

正如我們之前所說,區塊鏈不僅僅是開源,也是開放的國家實體。換句話說,用戶的狀態(例如,誰擁有什麼,誰花了什麼,誰投了什麼,等等)以及決定解決這些狀態的條件的成文協議,都是開放的,每個人都可以訪問。

人們可以簡化地說,所有的去中心化應用(DeFi、錢包客戶端、NFT 市場、交易所等)都是前端,而區塊鏈是後端 ------ 但事情從這裡開始變得棘手。不是每個去中心化的應用程序都以相同的方式與底層區塊鏈互動。

一些去中心化的應用程序是區塊鏈的一對一代理。基本上,用戶在應用層能做的大部分事情都完全反映在底層區塊鏈上。

其他去中心化的應用程序是鏈上和鏈下代碼的混合。低級別的邏輯和關鍵性的組件是在鏈上的,而邊緣的、不那麼重要的、對應用程序的運行並不關鍵的功能則被保留在鏈外。

例如:想象一下你想建立一個去中心化的 Twitter 替代品。註冊表(用戶可以申請一個獨特的 @用戶名)是網絡中唯一真正需要在區塊鏈上同步的部分。所有其他行動,如用戶存儲他們的社交數據的地方,為平台提供動力的各種算法(例如,趨勢,排名,推薦等),或者,嚴格來說,任何其他類型的需要大量計算和存儲的東西,都可以安全地發生在鏈外。如果沒有前端應用程序,你會喪失一些功能,但這些功能都不會妨礙你在自己(或第三方)的客戶端下使用服務。

而且,最終,還有第三類去中心化的應用程序。這些應用程序只有一小部分的邏輯在鏈上。大部分的代碼存活在一個中央數據庫中,該數據庫位於一個私人的基礎設施上。我想到的是某些只在結算層與區塊鏈互動的交易所,或者某些向用戶提供代幣的應用程序,但產品本身並沒有真正開放。

因此,回到前提,如果我們同意「用戶信任他們認為的就是真實的東西;如果是在區塊鏈上,他們認為是真實的,」------ 我們也必須同意,一個值得信賴的 Web3 產品不應該以任何方式模糊、混淆或混淆其數據的「來源」。

這個想法有很多含義,所以讓我們來解讀一下。

1.1 明確的數據證明

正如我們剛剛看到的,在 dapp 中,有 2 種數據:應用數據和區塊鏈數據。應用數據是在伺服器上計算的鏈外數據。這些數據通常不與區塊鏈互動,如果有,也只是通過甲骨文服務(如 Chainlink)互動。另一方面,區塊鏈數據持久地存在於網絡的每個節點上運行的分布式賬本上。

這裡需要理解的重要原則是,這是兩類不同的數據。一個是安全和可驗證的,一個是不安全的。因此,讓用戶「猜測」數據的來源不能被認為是一種常規的設計做法。而且最重要的是,它不能讓用戶假設看到的所有數據都存儲在區塊鏈中,因為事實證明,很少是這樣的情況。

當用戶開始行動並試圖通過簽署交易或調用智能合約功能來改變這些數據時,承認這種區別就變得更加重要。

在我見過的大多數去中心化的應用程序中,只會告訴用戶「嘿,你要在區塊鏈層永久地修改一些東西」,指的是錢包客戶端的互動,它用本地私鑰簽收哈希值。

僅就這方面的設計思路而言,就有很多東西可以寫,但以下是我的一些思考。

  • 改變顏色或字體的 CSS 樣式,以區分區塊鏈和應用數據
  • 上下文工具提示,以便在懸停或點擊區塊鏈數據點時,可以提供一個上下文區域,提供更多關於數據來源的信息。

1.2 詞彙的一致性

很多基於研究的學術論文建議,未來,錢包客戶端應該模仿傳統支付系統的功能,並避免特定的術語,如下注,交換,挖幣等。

我明白,讓普通用戶更容易接受加密貨幣是一個至關重要的話題,但加密貨幣也需要自我認同,淡化詞彙是要付出代價的。

如果想讓用戶信任你的產品,你需要說行話,而加密貨幣的行話是最奇特的。當你註冊一個 Web3 產品時,它就開始了,而且是以這些詞開始。「連接錢包」。不是「註冊賬號」,不是「創建賬戶」,當然也不是其他像「登錄」或「開始」的花哨說法。

對普通用戶來說,「連接錢包」這四個字可能想象到的最可怕的簽約方式,但對加密貨幣用戶來說,是常規操作而已。

用丹科的話說,對加密貨幣用戶來說,「連接錢包」是另一種融入更廣泛的加密貨幣人群的公民的方式。「連接錢包」使他們興奮,「註冊創建賬戶」使他們喪失興趣。

1.3 用戶的期望管理

計算的歷史告訴我們,新的屬性往往伴隨著權衡。在區塊鏈世界中,對用戶做出可驗證的長期承諾,是以犧牲部分性能和可擴展性作為代價的。

性能問題是因為任何一種鏈上計算都是緩慢和昂貴的。想想看,執行代碼就像 AWS Lambda 的一個殘缺的、極其昂貴的版本。還有可擴展性問題,因為以太坊網絡每秒鐘只能處理 15 個交易。隨著更多的去中心化應用程序被建立在網絡上,交易的數量增加,gas 費用也會增加。

簡而言之:在鏈外計算的東西是快速的,有可能接近實時;在鏈上計算的東西是緩慢的,而且是很難同步的。

我知道這聽起來有點可笑,但這種交互速度的雙重性會造成用戶期望的分歧。想一想,使用一個產品,有時感覺很快,很敏捷,有時又很麻煩,慢得不合理。你會有什麼感覺?

可能是挫敗感?甚至更多負面情緒。回到我們之前的觀點,當行話不普及,你不知道你看到的術語是否真的是你認為的意思。

這些問題可能可以通過一些方式來緩解。我正在考慮進度指標、多步驟進度條、ETA 和延遲建議等方法。

第二部分:加密貨幣的知識差距

加密貨幣吸引了兩極化的用戶:權力用戶和邊緣化的用戶。一邊是相信技術價值及其意識形態基礎的加密貨幣愛好者,另一邊是為其不穩定的經濟環境尋找可行替代方案的人。然後,如果我們真的相信加密貨幣是具有大眾市場潛力的東西,那麼在兩者之間一定還有其他各種可能的人。

你如何為這樣一個多樣化的用戶群構思一個產品,怎麼避免出現讓一些人興奮的東西卻會讓另一些人害怕的情況?你如何填補知識上的空白?你又如何修復情感上的差距?

實際上,這些都是複雜而艱難的挑戰,但有一點 ------ 這都不是什么新困難。我們在軟件革命中也遇到過類似的問題,包括個人電腦、早期瀏覽器、在線支付,然後是社交網絡、手機等等。我們如何利用這塊技術使其為更多的人所接受,這一直是一個問題。

UIE 的 Jared Spool 有一個有趣的方式來談論如何建立產品和填補知識空白。

假設你想建立一個產品,有三類假設的用戶:(A)Cypherpunks,(B)hodlers,和(C)newbies。Cypherpunks 是主題專家不用說,hodlers 是精通密碼的人也不用說,新手缺只是擁有好奇心的那些人,他們對這個生態系統感興趣,但可能連最簡單的操作都不適應。

想象一下一个光谱,你會把所有這些用戶排成一排。在左邊,我們會把那些完全不知道如何使用我們產品界面的人成為一組。在右邊,我們將把那些知道所有關於設計的知識的人放在一起。

image

我們將按照用戶知道的多少來組織沿牆的所有用戶。如果他們只知道一點點,他們就會站在更靠近左邊的位置。他們知道的越多,我們就把他們放在越靠近右邊的位置。

現在讓我們在這面牆上再加一個點:目標知識點。這個點代表用戶需要知道多少知識來完成他們的目標。用戶的知識和目標知識之間的距離就是「差距」;而這「差距」就是設計發生的地方。

image

我們不需要在當前知識點的左邊進行設計,因為這都是用戶已經知道的東西。我們也不需要在目標知識點的右邊設計東西,因為用戶不需要這些信息(至少對於這個任務)。我們只需要為當前知識和目標知識之間的空間設計界面。

任何給定任務的用戶界面的目標都是確保這兩個維度盡可能地接近,因為只有當前知識等於目標知識時,用戶可以完成他們的目標。

我們要如何實現這個目標呢?

仔細想想,只有兩種可能的方式來實現這一目標。要麼增加用戶的知識,直到他們知道他們需要知道的一切,要麼減少使用產品所需的知識量,直到目標知識只需要用戶已經擁有的信息。

設計未來的問題就變成了一個更明確的問題:你是教育你的用戶還是減少學習的必要?

這裡的關鍵不是為普通人設計東西,而是給每個人他自己想要的經驗。換句話說,給定一個具體的任務,處於低端的用戶要麼需要一些培訓來完成這個任務,要麼需要一些抽象凝練的東西,使其在沒有額外知識的情況下也可以相對容易地完成任務。

設計 Web3 產品的一個合理的好方法是將用戶群和他們的預期知識水平與手頭的任務和所需的知識水平進行對比。一旦明確了差距,就會突然間更容易理解如何實際地使經驗多樣化。

例如,為了增加新手的知識,你可以考慮各種將教育融入產品體驗的事情。

想想看。

  • Blitzcourses:Flash 課程,應用程序本身激勵用戶學習加密貨幣的基礎知識
  • 評估測驗:像新聞用戶的測驗,以了解他們的流利程度,並在設置和應用內的使用過程中,通過或多或少的指導,對體驗進行相應編程
  • 上下文彈出式或像「每日提示」這樣的東西,以鼓勵漸進式學習

相反,如果你喜歡減少新手完成特定任務所需的知識量,你可以考慮抽象的複雜性層。

對於這個問題,你可以考慮一下集中辦法。

  • 避免使用加密貨幣專用詞彙
  • 挖掘用戶已經從成熟的金融技術或一般烘焙應用中熟悉的流程和用戶體驗
  • 提供一個「沙盒」,讓用戶可以模擬任務,從感知經驗中學習,而沒有做不安全事情的風險。

第三部分:建立變革的世界,而不是工具

在這篇文章的開頭,我從技術和道德的角度談論了 Web3 的區別。這個想法的初衷是好的,但如果我們把加密貨幣或一般的技術當作一個終結者,而不是為用戶服務並獲得結果的角色,那麼這個想法從根本上是有缺陷的。

加密貨幣釋放了哪些行為,哪些體驗?更重要的是,哪些人類的欲望會因此而更容易實現?

image

人們對工具並不感興趣。他們實際上從來沒有感興趣過。

我們使用互聯網是因為它讓事情更方便,而不是因為我們認為它是一項有趣的技術。互聯網是一個巨大的機器,它消除了我們和我們想要的東西之間的摩擦。

image

作為人類,我們想要我們一直想要的東西。我們想要愛情、地位和金錢。我們想影響和創造事物,並有一種歸屬感和重要性。我們想擁有自信和自我實現,我們想要答案和解決方案,我們都想要。

如果仔細想想,我們就會發現,互聯網上最成功的產品都學會了比他們的前輩更方便地滿足同一組欲望。

因此,最根本的是,我們要少關注工具和技術基礎,而多關注這些工具所處的環境。工具所處的世界才是對用戶有持續價值的地方。

image

什麼是值得創造的世界?它們如何將用戶帶到新的層面?而用戶在這些世界裡究竟能做什麼?從視覺藝術和音樂到代碼、設計和知識或教育,這裡的機會是製作新的、非凡的體驗,並使一系列新的人類行為更容易實現。

image

結論

正如我們所看到的,加密貨幣市場可以是非常不穩定的,其周期似乎是混亂的。從事加密貨幣一段時間的人很清楚這種交替出現的欣喜和投機期以及所謂的「加密貨幣的冬天」到底是怎麼回事兒。

但重要的一點是,投機是安裝的動機。如果沒有誰猜測這個東西的規模,它就不會有一個價格。沒有它的價格,它就不可能被當作貨幣。它沒有被當作錢,人們就不會有新的想法,也就不可能有這些新興的項目和應用程序。

image

同樣地,在 21 世紀初網絡公司崩潰後,許多人質疑之前幾年建立的所有帶寬的必要性。讓電子郵件更快一點的意義何在?在 2000 年代中期,由於這種創新,像 YouTube 這樣的應用程序成為可能,為互聯網企業家開啟了一個新時代。

Crypto 正處於尋找其目的的過程中,區塊鏈也可能處於類似的位置,對於那些願意玩長線的人來說,突破即將到來。

並非所有處理加密貨幣的應用都是去中心化的應用。有很多像 Coinbase 這樣的中心化應用,它們依賴於私人或雲(就 Coinbase 而言,是 AWS)伺服器。

這裡我主要指的是以太坊區塊鏈。一般來說,我在這裡說的一切都適用於可編程的、多用途的區塊鏈,而不是例如比特幣區塊鏈,後者主要用於交換和存儲價值。

這些問題都有解決方案,但在以太坊 2.0 推出之前,將延遲視為理所當然。

關聯標籤
鏈捕手ChainCatcher提醒,請廣大讀者理性看待區塊鏈,切實提高風險意識,警惕各類虛擬代幣發行與炒作,站內所有內容僅係市場信息或相關方觀點,不構成任何形式投資建議。如發現站內內容含敏感信息,可點擊“舉報”,我們會及時處理。
ChainCatcher 與創新者共建Web3世界