Chainbase 開發(fā)者在本文中結(jié)合自身經(jīng)歷,分享一些關(guān)于 Web2 開發(fā)者如何更好地進(jìn)入 Web3 的經(jīng)驗。
(資料圖)
作者:lxcong,Chainbase 開發(fā)者
在進(jìn)入Web3之前,我先后在 Tencent 和 bilibili 工作了十多年;負(fù)責(zé)的業(yè)務(wù)線都是服務(wù)開發(fā)者的。2022年我正式轉(zhuǎn)入Web3,今天我想通過自身的經(jīng)歷,分享一些關(guān)于 Web2 開發(fā)者如何更好地進(jìn)入 Web3 的經(jīng)驗。
內(nèi)容會圍繞以下3個主題:
從 Web2 互聯(lián)網(wǎng)公司轉(zhuǎn)向 Web3,我的路徑和思考;Web3 開發(fā)者可能會遇到哪些問題;Chainbase 如何幫助開發(fā)者更好進(jìn)入 Web3;從 Web2 到 Web3
從觀望、到投機(jī)、再到參與
最初我也是作為用戶接觸到了 Web3,和很多人一樣是基于投機(jī)的心態(tài),有過收益也交過學(xué)費(fèi)。后來我逐漸意識到,在加密世界我們除了做一個普通用戶之外,應(yīng)該還可以從技術(shù)或者業(yè)務(wù)場景等角度去切入,參與到 Web3 的建設(shè)中去。
2021年底,Tencent 在 23周年紀(jì)念時給每一位員工空投了一個NFT,當(dāng)時有很多討論 Web3 的員工群都非常地活躍。這表明 Web2 的互聯(lián)網(wǎng)公司內(nèi)部已經(jīng)有了一些 Web3 氛圍,管理層也都看到了這個業(yè)務(wù)方向。但是由于各種主觀和客觀的原因,Web2 互聯(lián)網(wǎng)公司對 Web3 依然是非常保守的,最終很難在業(yè)務(wù)層面真正落地——這也是促使我最終離開 Web2 互聯(lián)網(wǎng)公司的原因之一。
當(dāng)我內(nèi)心已經(jīng)決定all in Web3 的時候,我還是回歸到程序員的角色去思考切入點(diǎn):
首先有些程序員會選擇作為科學(xué)家進(jìn)入Web3(類似黑客的定位但不一定是傳統(tǒng)的互聯(lián)網(wǎng)安全技術(shù)),因為科學(xué)家可以直接利用手中的技能做一些套利相關(guān)的事情。但我個人并不想以投機(jī)者的身份入場,放棄!由于 Web3 是基于區(qū)塊鏈技術(shù)的新一代互聯(lián)網(wǎng),所以也需要很多懂技術(shù)的布道者。但是敘事能力并不是我的強(qiáng)項,所以這也不是我最好的選擇。放棄!最終我還是務(wù)實地選擇繼續(xù)在 Web3 做一名開發(fā)者,發(fā)揮自己最大的特長和優(yōu)勢?;谖业倪^往經(jīng)驗和技術(shù)棧,以及對純金融屬性項目的抗拒,我加入了一家極具潛力的 Web3 基礎(chǔ)設(shè)施公司,這就是我和 Chainbase 的故事。如何打響 Web3 的第一槍
先找到生態(tài)位,然后補(bǔ)足技術(shù)棧。
開發(fā)者進(jìn)入Web3時,技術(shù)層面的專業(yè)技能并不是最大的障礙。很多技術(shù)棧是一致的或者是相通的,也有非常多的 Web3 開發(fā)者社區(qū)可以系統(tǒng)性學(xué)習(xí)。對于很多開發(fā)者,難點(diǎn)在于找到自己在 Web3 的生態(tài)位。例如個人以科學(xué)家或者科技寫手入圈(Vitalik最早也是這樣入圈的),或者直接加入一個 Web3 項目,無論是 toB 還是 toC。
在這里,我個人更加推薦直接加入一個 Web3 團(tuán)隊,這樣才能深度地參與進(jìn)來。如果你是自己創(chuàng)業(yè)或者加入了一家初創(chuàng)公司,那么帶著產(chǎn)品參加Web3 Hackathon 是完成冷啟動非常不錯的方式。它能夠讓你快速驗證產(chǎn)品、并獲得早期用戶。
當(dāng)你已經(jīng)找到了在 Web3 的生態(tài)位之后,自然會知道技術(shù)層面的專業(yè)知識有哪些欠缺,這時再針對性地學(xué)習(xí)就會非常高效。
Web3 開發(fā)者可能會遇到的一些挑戰(zhàn)
1. 首先要轉(zhuǎn)變理念,擁抱 Web3 的新范式
“理念”這個詞很抽象,我的理解是:“理念”是對于什么該做,什么不該做的一種共識。Web2 開發(fā)者進(jìn)入 Web3 時,遇到的第一個關(guān)于理念的挑戰(zhàn),可能是關(guān)于中心化與去中心化的取舍問題。
幾乎所有的 Web3 信仰者都會強(qiáng)調(diào)去中心化是區(qū)塊鏈的內(nèi)核之一。但是作為一款承載用戶需求和體驗的Web3產(chǎn)品,去中心化是一個必須的標(biāo)準(zhǔn)嗎?我認(rèn)為在不同的場景下,這至少不應(yīng)該是絕對的標(biāo)準(zhǔn)。例如,一款
絕對去中心化的產(chǎn)品,是否能夠達(dá)到工業(yè)級應(yīng)用的標(biāo)準(zhǔn)?我認(rèn)為現(xiàn)階段是很難的,因為工業(yè)級的應(yīng)用對于產(chǎn)品的效率和穩(wěn)定性都需要一個明確的承諾,這在去中心化的結(jié)構(gòu)下是很難保證的。另外大多數(shù)應(yīng)用還是需要鏈下數(shù)據(jù)的,即便使用預(yù)言機(jī)等相關(guān)技術(shù)解決鏈下數(shù)據(jù)與智能合約的交互,也很難說這是一個完全去中心化的結(jié)構(gòu)(預(yù)言機(jī)本身就有中心化的影子)。所以關(guān)于 Web3 應(yīng)用的去中心化,更多的是根據(jù)具體場景把握好程度。
類似理念上的挑戰(zhàn)還有很多,我建議大家在判斷的時候,多關(guān)注 Web3 的內(nèi)核和初心,多做獨(dú)立思考。當(dāng)理念真正被轉(zhuǎn)變,你才真正進(jìn)入了 Web3。
2. 考慮多鏈生態(tài)帶來的開發(fā)者成本
Web3 應(yīng)用首先是基于某一條或多條公鏈開發(fā)的,選擇公鏈需要項目方對不同公鏈的特性和生態(tài)都有比較深入的了解。目前公鏈生態(tài)百花齊放,這無疑增加了開發(fā)者選擇公鏈的成本(也會增加選定后的開發(fā)成本)。
由于區(qū)塊鏈不可能三角的存在(即去中心化、安全性、擴(kuò)展性三者無法同時滿足),不同的公鏈基本上都會選擇其中的兩個點(diǎn)作為突破的方向,這會導(dǎo)致不同公鏈的特性也不同。開發(fā)者選擇公鏈時,應(yīng)當(dāng)考慮產(chǎn)品的應(yīng)用場景是否與公鏈的特性匹配。
例如 Optimism(一條layer2公鏈),它可以支持很高的吞吐量。但是為了安全考慮,Optimism預(yù)留了一定數(shù)量的最新區(qū)塊,使之成為可以被挑戰(zhàn)的狀態(tài)。即滿足一定的條件下,已經(jīng)被打包的交易依然可以被打回。這意味著鏈上資產(chǎn)或者信息的確權(quán)會存在一定的延后性。這樣的特性對于例如實時支付類的應(yīng)用場景或許是不適用的。
多鏈生態(tài)一定會長期存在,包括 Web2 很多技術(shù)棧的發(fā)展歷史也可以印證這一點(diǎn)。所以了解多鏈特性、匹配使用場景對于 Web3 開發(fā)者會是一個長期的挑戰(zhàn)。
3. 單前端無法滿足 Web3 應(yīng)用的開發(fā)需求
單看Dapp的技術(shù)實現(xiàn)原理,似乎只需要有一個前端,能夠驅(qū)使智能合約執(zhí)行相應(yīng)邏輯,再將鏈上數(shù)據(jù)獲取回前端就可以了。但是在實際的開發(fā)過程中,很多Web3 應(yīng)用還是會在系統(tǒng)架構(gòu)里融入一個服務(wù)端。
雖然服務(wù)端的存在會被很多人詬病為過于中心化(我們剛才也討論過絕對中心化的問題),但是由于鏈上狀態(tài)存儲成本過高、可支持的吞吐量有限,以及考慮用戶的體驗感(如果每次交互都需要喚醒錢包簽名就會讓體驗感大打折扣)等等——Web3 應(yīng)用采用部分中心化的設(shè)計依然是最佳選擇。這類似于在區(qū)塊鏈與前端之間增加了一層緩存空間。
由于鏈上數(shù)據(jù)結(jié)構(gòu)的特殊性(即鏈表式結(jié)構(gòu)),鏈上數(shù)據(jù)的可讀性非常差。Web2 的很多常規(guī)操作如對數(shù)據(jù)的索引、排序、過濾、分頁和搜索等都非常難以執(zhí)行。所以如何更便捷地讀取鏈上數(shù)據(jù),也是 Web3 開發(fā)者會遇到的一個非常痛的點(diǎn)。
Chainbase 如何解決 Web3 開發(fā)者的痛點(diǎn)?
1. 過度的自建基礎(chǔ)設(shè)施可能會導(dǎo)致項目失敗
我們認(rèn)為長期一定會有更多開發(fā)者進(jìn)入 Web3 構(gòu)建各種極具創(chuàng)意的應(yīng)用。開發(fā)者不應(yīng)該把過多的研發(fā)資源浪費(fèi)在重復(fù)的自建節(jié)點(diǎn)、維護(hù)節(jié)點(diǎn)集群、解碼鏈上數(shù)據(jù)等等基礎(chǔ)設(shè)施層面,因為這些自建基礎(chǔ)設(shè)施對于業(yè)務(wù)本身幾乎起不到任何直接的推動作用。
未來的用戶不會被劃分為Web2用戶或者Web3用戶,他們不會因為某一個Web3應(yīng)用的自建節(jié)點(diǎn)非常穩(wěn)定而使用它,用戶只會關(guān)心你的應(yīng)用是否能夠解決他們的某項需求。Web3的項目團(tuán)隊?wèi)?yīng)該盡可能把有限的資源和精力聚焦在業(yè)務(wù)本身:例如產(chǎn)品功能、用戶體驗、經(jīng)濟(jì)模型、社區(qū)構(gòu)建等等。
某些基礎(chǔ)設(shè)施——例如搭建節(jié)點(diǎn)——即便實現(xiàn)自建也會有很多問題。例如長期的人力資源成本消耗、服務(wù)器消耗、運(yùn)維能力的考驗、穩(wěn)定性不足、安全性以及各種層出不窮的BUG等等。除非本身擁有極強(qiáng)的資源和技術(shù)能力,否則很難解決這些問題。
Web3 世界的周期非常短,用戶容易遺忘,資本容易失去耐心——項目能否成功往往只有幾個月的時間。在這樣的市場環(huán)境下,我們試想如果一個團(tuán)隊把寶貴的資源分配在基礎(chǔ)設(shè)施的構(gòu)建上,那么一定會降低項目成功的概率。
2. Chainbase 可以為 Web3 開發(fā)者提供哪些服務(wù)?
Chainbase 的定位是一個Web3開發(fā)者平臺。我們通過提供云化的API服務(wù),幫助開發(fā)者快速接入加密網(wǎng)絡(luò),輕松構(gòu)建 Web3 原生應(yīng)用。
現(xiàn)階段我們提供包括多鏈節(jié)點(diǎn)、數(shù)據(jù)索引、應(yīng)用監(jiān)控和調(diào)試等基礎(chǔ)設(shè)施服務(wù)。具體包括:
Chain API Service:? 這是一個安全穩(wěn)定的多鏈節(jié)點(diǎn) JSONRPC 集群,支持開發(fā)者輕松訪問多鏈?絡(luò)Web3 API Service:? 這是一個?持多種協(xié)議索引,快速?持業(yè)務(wù)應(yīng)?場景(如Token、NFT、DeFi、Domain...)數(shù)據(jù)查詢的API矩陣All-In-One Dashboard:開發(fā)者可以通過?站式控制臺完成創(chuàng)建、調(diào)試、監(jiān)控和運(yùn)維 Web3 應(yīng)?程序3. Chainbase 的 API 服務(wù)有哪些具體的使用場景?
首先是最基礎(chǔ)的 Chain API,支持它穩(wěn)定運(yùn)行的是我們搭建的多鏈節(jié)點(diǎn)集群。我們知道成為節(jié)點(diǎn)是實現(xiàn)與鏈交互最基礎(chǔ)的一步,這里我們?yōu)殚_發(fā)者搭建好了一個非常強(qiáng)大穩(wěn)定的節(jié)點(diǎn)集群,并且是支持多鏈的。(現(xiàn)階段已支持ETH、Polygon和BSC,并且正在逐步接入更多的公鏈)。開發(fā)者無需自建節(jié)點(diǎn),直接使用我們的API即可。
使用 Chain API,開發(fā)者可以輕松獲取譬如當(dāng)前區(qū)塊高度、當(dāng)前Gas費(fèi)、指定地址余額等等鏈上基礎(chǔ)數(shù)據(jù),也可以向區(qū)塊鏈網(wǎng)絡(luò)發(fā)送新的交易。
我們還提供可用性極強(qiáng)的 Web3 API,這是一組支持多種協(xié)議數(shù)據(jù)索引的 API,可快速支持大部分常見業(yè)務(wù)應(yīng)用場景中的數(shù)據(jù)查詢。
例如在 NFT 業(yè)務(wù)場景中,獲取指定賬戶擁有的 NFT 列表、指定 NFT 的交易記錄、指定 NFT 系列的地板價、指定 NFT 的歷史所有者等等。同樣我們也提供 Token、域名等其它常見的業(yè)務(wù)場景下的各種數(shù)據(jù)索引 API。
加上我們提供的 Dashboard,Web3 開發(fā)者就可以非常直觀的監(jiān)測和管理自己的各個數(shù)據(jù)接口的運(yùn)行狀態(tài),非常方便。
4. Chainbase 已準(zhǔn)備推出下一代鏈上數(shù)據(jù)索引產(chǎn)品
Chain API 提供了最基礎(chǔ)的節(jié)點(diǎn)服務(wù),Web3 API 提供了常見業(yè)務(wù)場景下,點(diǎn)對點(diǎn)的數(shù)據(jù)索引服務(wù)。但是我們認(rèn)為這并不是最好的解決方案,尤其是對于日益涌現(xiàn)的創(chuàng)新型應(yīng)用而言。
一款創(chuàng)新型應(yīng)用由于業(yè)務(wù)的獨(dú)特性、其數(shù)據(jù)索引需求可能千奇百怪,很顯然現(xiàn)有的 API 很難滿足這些需求。點(diǎn)對點(diǎn)的 API 服務(wù)雖然可以通過新增功能逐漸覆蓋更多主流業(yè)務(wù)場景,但是這種滯后于市場變化的迭代是永遠(yuǎn)趕不上應(yīng)用創(chuàng)新的速度的。
所以我們在設(shè)計新一代數(shù)據(jù)索引的產(chǎn)品時,拋棄了點(diǎn)對點(diǎn)的解決方案,采用了類似 Web2 數(shù)倉的概念——一個支持自定義SQL語句的鏈上數(shù)據(jù)云倉!鏈上數(shù)據(jù)云倉通過實時計算解碼鏈上數(shù)據(jù);開發(fā)者可以根據(jù)自己的需求、使用最主流的SQL語句對鏈上數(shù)據(jù)進(jìn)行自由索引。
更酷的是我們支持開發(fā)者將自己寫的SQL生成為一個可以源源不斷返回數(shù)據(jù)的API,這樣就相當(dāng)于任何創(chuàng)新型的數(shù)據(jù)索引需求都可以在第一時間被支持。
5. 暢想未來,專注 Web3 開發(fā)者服務(wù)
Chainbase 堅信 Web3 是能夠改變世界的互聯(lián)網(wǎng)新范式。技術(shù)的革新也將極大的推動商業(yè)發(fā)展,甚至影響社會的變革。在這場浪潮中,開發(fā)者正位于舞臺的中心,掀起巨大的創(chuàng)新風(fēng)暴。
Chainbase 的定位是一個 Web3 開發(fā)者平臺,解決“與鏈交互”的 API 服務(wù)是我們現(xiàn)階段的產(chǎn)品切口。未來我們會圍繞 Web3 開發(fā)者不同階段的痛點(diǎn),推出更多降低開發(fā)門檻,提高開發(fā)效率的產(chǎn)品和服務(wù)。
我們希望能夠幫助到更多的 Web3 項目度過開發(fā)、測試、落地和增長的各個階段,我們相信只要能夠幫助其中一個項目獲得成功,Chainbase 也就直接或者間接的改變了這個世界!
標(biāo)簽: