首先,讓我們介紹一下 Web3 是什麼。
2014年,以太坊聯合創始人加文·伍德(Gavin Wood)首次提出了“Web3”的概念,為互聯網所要求的過度信任問題提供了解決方案。
不可否認,中心化網路已經幫助數十億人融入互聯網,並在互聯網上建立了穩定可靠的基礎設施。然而,與此同時,少數中心化的巨頭幾乎壟斷了互聯網,可以為所欲為。Web3 通過區塊鏈、加密貨幣和 NFT,以擁有權的形式將權力歸還給使用者。
Web3 現在已成為一個包羅萬象的術語,代表了對更新和更好的互聯網的願景。儘管很難提供 Web3 的嚴格定義,但它通常具有以下特徵:
《呂先生春秋年鑒》一書中說:“智者按時計,順勢而為。這意味著聰明和有遠見的人將做好準備,並在正確的時間迅速採取行動,根據當時的情況做出判斷和決定。
我相信 Web3 無疑是一種趨勢,但關於它真正開始的時間存在爭議。有人說這是從比特幣的出現開始的,而另一些人則認為這是以太坊的首次亮相。我也不完全同意。比特幣的出現標誌著整個Web3產業的開始,而以太坊的出現則為Web3產業奠定了基礎。然而,我認為真正推動 Web3 成為一股“力量”的是 2020 年去中心化金融行業的大規模爆發,它將區塊鏈應用帶入了金融領域。
有關去中心化金融的介紹,您可以參考我之前的文章“maker協議 &; Uniswap:去中心化金融的演變”。
從 2020 年開始,整個 Web3 行業的使用者群出現了爆炸性擴張。除了 2022 年由於熊市導致開發放緩外,其他年份的用戶數量繼續漲。相信2024年,隨著比特幣減半和牛市場的到來,使用者群將繼續增長,上升趨勢勢不可擋。
事實上,香港對Web3的態度也值得注意。自 2023 年以來,香港頻繁發佈對 Web3 的友好信號:
由於 Web3 自 2020 年以來一直很流行,因此加入 Web3 的最佳時間是四年前,下一個最佳時間是現在!
當我在 2020 年開始探索 Web3 並在 2022 年從 Web2 過渡到 Web3 時,我想分享一些關於為什麼 Web2 開發人員應該學習 Web3 的個人經驗。
實際上,這個問題與“為什麼非AI開發人員應該學習AI”沒有什麼不同。我相信,作為開發人員,我們首先必須不斷學習,因為技術行業發展迅速,需要不斷學習以跟上變化並保持我們的競爭力。
學習涉及深度和廣度,兩者同等重要。通過深入研究技術細節獲得的深度可以説明您成為您所在領域的專家,而通過跟蹤技術趨勢和瞭解相鄰領域實現的廣度可讓您將新想法引入您的專業領域,使您的工作更具創造力。
學習 AI 和 Web3 現在遵循相同的邏輯。通過學習尖端技術,您可以增加技術知識的廣度,類似於早期學習移動開發。然而,Web3 與這兩者的不同之處在於沒有「臨界點」。。
iPhone的出現徹底改變了移動行業,使其成為移動發展的“引爆點”。ChatGPT的出現釋放了AI的想像力,使其成為AI的“引爆點”。然而,Web3 尚未見證如此革命性的創新。但這也意味著 Web3 是一個更具創新潛力的行業。如果 Web2 開發人員可以結合他們現有的技術和經驗在 Web3 上構建,他們可能能夠培育出偉大的創新。
作為 Web3 開發人員學習 Web2 還有另一個優勢:如果 Web2 將來過時,您將有一個備份計劃。
Web3 技術棧目前缺乏統一的定義。我採用 Alchemy 的 Web3 技術堆疊全景圖,從下到上的結構如下:
當您選擇成為 Web3 開發人員時,您需要瞭解您的技能服務於 Web3 技術堆疊的哪一層。
如果您為網絡層服務,這意味著您需要開發第 1 層或第 2 層,它們通常與實驗室或基金會相關聯。所需的技能差異很大,包括加密、共識演演演算法、存儲、網路、語言和虛擬機。工程技能取決於鏈的架構和性能,有些鏈是使用 Cosmos SDK 或 OpStack 快速構建的。
如果您為區塊鏈交互層提供服務,則通常為基礎架構服務提供者工作,例如節點服務、數據分析服務和索引服務。該層類似於 Web2 中的基礎設施服務提供者(例如雲服務),角色包括前端、後端、數據、測試和運營。因此,所需的技能大致相似。可能,它需要一些關於區塊鏈網路介面的知識。
如果您為表示層提供服務,您正在為開發人員提供開發工具和庫,通常稱為“銷售鏟子”。具體的開發技能取決於產品形式和使用服務的開發人員類型。例如,開發 IDE 涉及使用者介面、本地網路設置、協定編譯和協定部署。
如果你服務於 DApp,絕大多數 Web3 開發需求都集中在DApp開發上。所以當我們談論 Web3 開發時,我們主要指的是DApp開發。我將在下一節中詳細介紹這一點。
每個人都應該熟悉傳統的互聯網應用架構,包括前端、後端和資料庫。以某網購網站為例,使用者首先通過瀏覽器訪問前端提供的介面,進行與購物相關的操作。如果使用者搜索某個產品關鍵字,後端將負責處理相應的邏輯,即回應來自前端的請求,並在檢索資料庫后將必要的數據返回給前端。資料庫為應用程式提供穩定的存儲,包括所有產品資訊和使用者相關信息(如購物車內容)。
建立在區塊鏈上的DApp與傳統應用的最大區別在於後端和資料庫角色的變化。智慧合約扮演傳統後端的角色,區塊鏈取代傳統資料庫,提供去中心化的數據存儲。智能合約和區塊鏈之間的密切合作使得數據的存儲和檢索透明且難以篡改。
因此,DApp開發的技能主要在於前端和智能合約的開發。需要掌握的技能如下:
介面開發。對於具有Web開發經驗的前端工程師,介面開發技能是可以轉移的。有基本的技能,如HTML,CSS和JavaScript,以及掌握現代前端框架,如React和Vue;
身份驗證機制和數據讀/寫。在DApps中,使用者認證和管理是通過區塊鏈錢包(例如小狐狸錢包)實現的,因此您需要學習如何集成錢包介面。數據讀/寫也是通過鏈上 API 完成的。使用 Ethers.js 等 JavaScript 庫可以輕鬆實現身份驗證機制和數據讀/寫。
因為很多DApp都是半去中心化的,所以也有後端開發的需求。雖然後端工程師技能是可以轉移的,但由於它涉及鏈上數據讀/寫,因此您需要集成區塊鏈 SDK。最好使用Go,Rust或計算機節點.js等開發語言。
對於以太坊虛擬機(EVM)鏈上的合約開發,主要重點是學習Solidity語言。建議初學者在WTF學院等平台上學習。對於非以太坊虛擬機(EVM)鏈上的合約開發,您需要根據鏈學習特定的語言。例如,在Solana上開發智能合約需要學習 Rust,在 Sui 上開發智能合約需要學習 Sui Move。但是,學習資源目前有限,可能需要查閱相應的官方網站。
學習 Web3 的提示
Web3 是未來。探索這一領域的 Web2 開發人員,無論是在用戶端、前端還是後端,都可以利用他們現有的技術優勢,擴大他們的職業視野,並增強他們在工作中的創造力。
然而,目前的Web3行業仍然非常不穩定。許多人瘋狂地追逐它,進行積極的投資,這往往會導致焦慮。如果您決心成為一名 Web3 開發人員,您必須有意識地遮罩一些分散注意力的資訊,專注於技術本身,並從事多有價值的努力。這種方法可以更好地説明您成長。
分享
目錄
首先,讓我們介紹一下 Web3 是什麼。
2014年,以太坊聯合創始人加文·伍德(Gavin Wood)首次提出了“Web3”的概念,為互聯網所要求的過度信任問題提供了解決方案。
不可否認,中心化網路已經幫助數十億人融入互聯網,並在互聯網上建立了穩定可靠的基礎設施。然而,與此同時,少數中心化的巨頭幾乎壟斷了互聯網,可以為所欲為。Web3 通過區塊鏈、加密貨幣和 NFT,以擁有權的形式將權力歸還給使用者。
Web3 現在已成為一個包羅萬象的術語,代表了對更新和更好的互聯網的願景。儘管很難提供 Web3 的嚴格定義,但它通常具有以下特徵:
《呂先生春秋年鑒》一書中說:“智者按時計,順勢而為。這意味著聰明和有遠見的人將做好準備,並在正確的時間迅速採取行動,根據當時的情況做出判斷和決定。
我相信 Web3 無疑是一種趨勢,但關於它真正開始的時間存在爭議。有人說這是從比特幣的出現開始的,而另一些人則認為這是以太坊的首次亮相。我也不完全同意。比特幣的出現標誌著整個Web3產業的開始,而以太坊的出現則為Web3產業奠定了基礎。然而,我認為真正推動 Web3 成為一股“力量”的是 2020 年去中心化金融行業的大規模爆發,它將區塊鏈應用帶入了金融領域。
有關去中心化金融的介紹,您可以參考我之前的文章“maker協議 &; Uniswap:去中心化金融的演變”。
從 2020 年開始,整個 Web3 行業的使用者群出現了爆炸性擴張。除了 2022 年由於熊市導致開發放緩外,其他年份的用戶數量繼續漲。相信2024年,隨著比特幣減半和牛市場的到來,使用者群將繼續增長,上升趨勢勢不可擋。
事實上,香港對Web3的態度也值得注意。自 2023 年以來,香港頻繁發佈對 Web3 的友好信號:
由於 Web3 自 2020 年以來一直很流行,因此加入 Web3 的最佳時間是四年前,下一個最佳時間是現在!
當我在 2020 年開始探索 Web3 並在 2022 年從 Web2 過渡到 Web3 時,我想分享一些關於為什麼 Web2 開發人員應該學習 Web3 的個人經驗。
實際上,這個問題與“為什麼非AI開發人員應該學習AI”沒有什麼不同。我相信,作為開發人員,我們首先必須不斷學習,因為技術行業發展迅速,需要不斷學習以跟上變化並保持我們的競爭力。
學習涉及深度和廣度,兩者同等重要。通過深入研究技術細節獲得的深度可以説明您成為您所在領域的專家,而通過跟蹤技術趨勢和瞭解相鄰領域實現的廣度可讓您將新想法引入您的專業領域,使您的工作更具創造力。
學習 AI 和 Web3 現在遵循相同的邏輯。通過學習尖端技術,您可以增加技術知識的廣度,類似於早期學習移動開發。然而,Web3 與這兩者的不同之處在於沒有「臨界點」。。
iPhone的出現徹底改變了移動行業,使其成為移動發展的“引爆點”。ChatGPT的出現釋放了AI的想像力,使其成為AI的“引爆點”。然而,Web3 尚未見證如此革命性的創新。但這也意味著 Web3 是一個更具創新潛力的行業。如果 Web2 開發人員可以結合他們現有的技術和經驗在 Web3 上構建,他們可能能夠培育出偉大的創新。
作為 Web3 開發人員學習 Web2 還有另一個優勢:如果 Web2 將來過時,您將有一個備份計劃。
Web3 技術棧目前缺乏統一的定義。我採用 Alchemy 的 Web3 技術堆疊全景圖,從下到上的結構如下:
當您選擇成為 Web3 開發人員時,您需要瞭解您的技能服務於 Web3 技術堆疊的哪一層。
如果您為網絡層服務,這意味著您需要開發第 1 層或第 2 層,它們通常與實驗室或基金會相關聯。所需的技能差異很大,包括加密、共識演演演算法、存儲、網路、語言和虛擬機。工程技能取決於鏈的架構和性能,有些鏈是使用 Cosmos SDK 或 OpStack 快速構建的。
如果您為區塊鏈交互層提供服務,則通常為基礎架構服務提供者工作,例如節點服務、數據分析服務和索引服務。該層類似於 Web2 中的基礎設施服務提供者(例如雲服務),角色包括前端、後端、數據、測試和運營。因此,所需的技能大致相似。可能,它需要一些關於區塊鏈網路介面的知識。
如果您為表示層提供服務,您正在為開發人員提供開發工具和庫,通常稱為“銷售鏟子”。具體的開發技能取決於產品形式和使用服務的開發人員類型。例如,開發 IDE 涉及使用者介面、本地網路設置、協定編譯和協定部署。
如果你服務於 DApp,絕大多數 Web3 開發需求都集中在DApp開發上。所以當我們談論 Web3 開發時,我們主要指的是DApp開發。我將在下一節中詳細介紹這一點。
每個人都應該熟悉傳統的互聯網應用架構,包括前端、後端和資料庫。以某網購網站為例,使用者首先通過瀏覽器訪問前端提供的介面,進行與購物相關的操作。如果使用者搜索某個產品關鍵字,後端將負責處理相應的邏輯,即回應來自前端的請求,並在檢索資料庫后將必要的數據返回給前端。資料庫為應用程式提供穩定的存儲,包括所有產品資訊和使用者相關信息(如購物車內容)。
建立在區塊鏈上的DApp與傳統應用的最大區別在於後端和資料庫角色的變化。智慧合約扮演傳統後端的角色,區塊鏈取代傳統資料庫,提供去中心化的數據存儲。智能合約和區塊鏈之間的密切合作使得數據的存儲和檢索透明且難以篡改。
因此,DApp開發的技能主要在於前端和智能合約的開發。需要掌握的技能如下:
介面開發。對於具有Web開發經驗的前端工程師,介面開發技能是可以轉移的。有基本的技能,如HTML,CSS和JavaScript,以及掌握現代前端框架,如React和Vue;
身份驗證機制和數據讀/寫。在DApps中,使用者認證和管理是通過區塊鏈錢包(例如小狐狸錢包)實現的,因此您需要學習如何集成錢包介面。數據讀/寫也是通過鏈上 API 完成的。使用 Ethers.js 等 JavaScript 庫可以輕鬆實現身份驗證機制和數據讀/寫。
因為很多DApp都是半去中心化的,所以也有後端開發的需求。雖然後端工程師技能是可以轉移的,但由於它涉及鏈上數據讀/寫,因此您需要集成區塊鏈 SDK。最好使用Go,Rust或計算機節點.js等開發語言。
對於以太坊虛擬機(EVM)鏈上的合約開發,主要重點是學習Solidity語言。建議初學者在WTF學院等平台上學習。對於非以太坊虛擬機(EVM)鏈上的合約開發,您需要根據鏈學習特定的語言。例如,在Solana上開發智能合約需要學習 Rust,在 Sui 上開發智能合約需要學習 Sui Move。但是,學習資源目前有限,可能需要查閱相應的官方網站。
學習 Web3 的提示
Web3 是未來。探索這一領域的 Web2 開發人員,無論是在用戶端、前端還是後端,都可以利用他們現有的技術優勢,擴大他們的職業視野,並增強他們在工作中的創造力。
然而,目前的Web3行業仍然非常不穩定。許多人瘋狂地追逐它,進行積極的投資,這往往會導致焦慮。如果您決心成為一名 Web3 開發人員,您必須有意識地遮罩一些分散注意力的資訊,專注於技術本身,並從事多有價值的努力。這種方法可以更好地説明您成長。