まず、Web3とは何かについてご紹介します。
2014年、イーサリアムの共同創設者であるギャビンウッドは、インターネットに必要な過度の信頼の問題に対する解決策を提供する「Web3」の概念を最初に提案しました。
中央集権型ネットワークが、何十億人もの人々がインターネットに統合し、その上に安定した信頼性の高いインフラストラクチャを構築するのに役立ってきたことは否定できません。しかし、同時に、少数の中央集権的な巨人がインターネットをほぼ独占しており、好きなようにすることができます。Web3は、ブロックチェーン、暗号通貨、NFTを通じて、所有権という形でユーザーに力を返します。
Web3 は今や、刷新されたより良いインターネットのビジョンを表す包括的な用語になっています。Web3を厳密に定義することは困難ですが、一般的には次のような特徴があります。
「ミスター・ルヴの春秋年代記」という本には、「賢者は時代に応じて計画し、流れに従って行動する」と書かれています。これは、知的で先見の明のある個人が準備を整え、適切なタイミングで迅速に行動し、一般的な状況に基づいて判断と決定を下すことを意味します。
Web3は間違いなくトレンドだと思いますが、それが本当にいつ始まったのかについては議論があります。ビットコインの出現から始まったと言う人もいれば、イーサリアムのデビューだったと主張する人もいます。私はどちらにも完全には同意しません。ビットコインの出現はWeb3業界全体の始まりを示し、イーサリアムの出現はWeb3業界の基礎を築きました。しかし、Web3を真に「力」に押し上げたのは、2020年のDeFi業界の大規模な爆発であり、ブロックチェーンアプリケーションが金融シーンに持ち込まれたことだと思います。
DeFiの紹介については、以前の記事「メーカーDAOとUniswap:分散型金融の進化」を参照してください。
Web3業界全体のユーザーベースは、2020年から爆発的に拡大しました。弱気市場による2022年の開発の減速を除けば、ユーザー数は他の年でも上昇し続けています。2024年には、ビットコインが半減し、強気市場が到来することで、ユーザーベースは成長を続け、上昇傾向は止められないと思います。
実際、Web3に対する香港の姿勢も注目に値します。2023年以降、香港はWeb3に対して友好的なシグナルを頻繁に発表しています。
Web3は2020年からトレンドになっているので、Web3に参加するのに最適な時期は4年前で、次に良い時期は今です!
2020年にWeb3の探求を始め、2022年にWeb2からWeb3に移行したので、Web2開発者がWeb3を学ぶべき理由について、個人的な経験を共有したいと思います。
実は、この問いは「なぜAI以外の開発者がAIを学ばなければならないのか」ということと何ら変わりはありません。テクノロジー業界は急速に進化しており、変化に対応し、競争力を維持するために継続的な学習が必要であるため、開発者として、何よりもまず継続的な学習者である必要があると考えています。
学習には深さと幅の両方が含まれ、どちらも等しく重要です。技術的な詳細を掘り下げることによって得られるデプスは、あなたがあなたの分野の専門家になるのを助け、技術トレンドを追跡し、隣接分野について学ぶことによって達成される幅は、あなたがあなたの専門分野に新しいアイデアを導入し、あなたの仕事をより創造的にすることを可能にします。
学習AIとWeb3は、今や同じロジックに従っています。最先端のテクノロジーを学ぶことで、初期のモバイル開発を学ぶのと同じように、技術的な知識の幅を増やすことができます。しかし、Web3がこの2つと異なるのは、「転換点」がないことです。
iPhoneの登場はモバイル業界に革命をもたらし、モバイル開発の「転換点」となりました。ChatGPTの登場は、AIの想像力を解き放ち、AIの「転換点」となりました。しかし、Web3はまだそのような革命的なイノベーションを目の当たりにしていません。しかし、これはまた、Web3がより革新的な産業である可能性を秘めていることを意味します。Web2開発者が既存の技術と経験を組み合わせてWeb3上に構築することができれば、大きなイノベーションを育むことができるかもしれません。
Web2 開発者として Web3 を学ぶことには、将来 Web2 が陳腐化した場合に備えて、バックアップ計画を立てることができるという利点もあります。
Web3テクノロジースタックには、現在、統一された定義がありません。私はAlchemyのWeb3テクノロジースタックパノラマを採用しており、下から上に次のように構成されています。
Web3開発者になることを選択した場合は、自分のスキルがWeb3テクノロジースタックのどのレイヤーに役立つかを理解する必要があります。
ネットワークレイヤーにサービスを提供している場合は、一般的に研究所や財団に関連付けられているレイヤー1またはレイヤー2を開発する必要があることを意味します。必要なスキルは、暗号化、コンセンサスアルゴリズム、ストレージ、ネットワーク、言語、仮想マシンなど、大きく異なります。エンジニアリング スキルはチェーンのアーキテクチャとパフォーマンスに依存し、一部のチェーンは Cosmos SDK または OpStack を使用して迅速に構築されます。
ブロックチェーンインタラクションレイヤーを提供している場合は、通常、ノードサービス、データ分析サービス、インデックスサービスなどのインフラストラクチャサービスプロバイダーで作業します。このレイヤーは、Web2のインフラサービスプロバイダー(クラウドサービスなど)に似ており、フロントエンド、バックエンド、データ、テスト、運用などの役割があります。したがって、必要なスキルはほぼ同じです。おそらく、ブロックチェーンネットワークインターフェースに関する知識が必要です。
プレゼンテーション層を提供する場合は、開発者に開発ツールとライブラリを提供することになります (一般に "シャベルの販売" と呼ばれます)。具体的な開発スキルは、製品形態やサービスを利用する開発者のタイプによって異なります。たとえば、IDE の開発には、ユーザー インターフェイス、ローカル ネットワークの設定、コントラクトのコンパイル、およびコントラクトの展開が含まれます。
DAppsを提供している場合、Web3開発のニーズの大部分はDApps開発に集中しています。したがって、Web3開発について話すとき、主にDApps開発を指します。この点については、次項で詳しく紹介します。
誰もが、フロントエンド、バックエンド、データベースなど、従来のインターネットアプリケーションアーキテクチャに精通している必要があります。オンラインショッピングサイトを例にとると、ユーザーはまずブラウザを介してフロントエンドが提供するインターフェイスにアクセスし、ショッピング関連の操作を実行します。ユーザーが特定の製品キーワードを検索すると、バックエンドは対応するロジックの処理、つまりフロントエンドからの要求に応答し、データベースを取得した後に必要なデータをフロントエンドに返す責任があります。データベースは、すべての製品情報とユーザー関連情報(ショッピングカートの内容など)を含む、アプリケーションの安定したストレージを提供します。
ブロックチェーン上に構築されたDAppsと従来のアプリケーションの最大の違いは、バックエンドとデータベースの役割の変化です。スマートコントラクトは従来のバックエンドの役割を果たし、ブロックチェーンは従来のデータベースに取って代わり、分散型データストレージを提供します。スマートコントラクトとブロックチェーンの緊密な連携により、データの保存と取得が透明になり、改ざんが困難になります。
したがって、DApps開発のスキルは、主にフロントエンドとスマートコントラクトの開発にあります。習得する必要があるスキルは次のとおりです。
インターフェース開発Web開発の経験があるフロントエンドエンジニアは、インターフェース開発のスキルを転用できます。HTML、CSS、JavaScriptなどの基本的なスキルと、ReactやVueなどの最新のフロントエンドフレームワークの習得があります。
認証メカニズムとデータの読み取り/書き込み。DAppsでは、ユーザーの認証と管理はブロックチェーンウォレット(メタマスクなど)を介して実装されるため、ウォレットインターフェイスを統合する方法を学ぶ必要があります。データの読み取り/書き込みもオンチェーンAPIを介して行われます。Ethers.js などの JavaScript ライブラリを使用すると、認証メカニズムとデータの読み取り/書き込みを簡単に実装できます。
多くのDAppsは半分散化されているため、バックエンド開発の需要もあります。バックエンドエンジニアのスキルは移転可能ですが、オンチェーンデータの読み取り/書き込みを伴うため、ブロックチェーンSDKを統合する必要があります。Go、Rust、ノード.jsなどの開発言語を使用することをお勧めします。
EVMチェーンでのコントラクト開発では、Solidity言語の学習に主眼が置かれます。初心者は、WTFアカデミーなどのプラットフォームで学ぶことをお勧めします。非EVMチェーンでの受託開発では、チェーンに応じて特定の言語を学ぶ必要があります。たとえば、ソラナでスマートコントラクトを開発するにはRustを学ぶ必要があり、Suiでスマートコントラクトを開発するにはSui Moveを学ぶ必要があります。ただし、現在、学習リソースは限られているため、それぞれの公式Webサイトを参照する必要がある場合があります。
Web3を学ぶためのヒント
Web3は未来です。この分野を探求するWeb2開発者は、クライアントサイド、フロントエンド、バックエンドのいずれであっても、既存の技術的優位性を活用し、キャリアの視野を広げ、職場での創造性を高めることができます。
しかし、現在のWeb3業界は依然として非常に不安定です。多くの人が必死に追いかけ、積極的な投資をしていますが、それはしばしば不安につながる可能性があります。Web3開発者になろうと決意しているなら、気を散らす情報を意識的に遮断し、テクノロジー自体に集中し、ロング期的で価値のある取り組みに従事する必要があります。このアプローチは、あなたの成長をよりよく助けることができます。
まず、Web3とは何かについてご紹介します。
2014年、イーサリアムの共同創設者であるギャビンウッドは、インターネットに必要な過度の信頼の問題に対する解決策を提供する「Web3」の概念を最初に提案しました。
中央集権型ネットワークが、何十億人もの人々がインターネットに統合し、その上に安定した信頼性の高いインフラストラクチャを構築するのに役立ってきたことは否定できません。しかし、同時に、少数の中央集権的な巨人がインターネットをほぼ独占しており、好きなようにすることができます。Web3は、ブロックチェーン、暗号通貨、NFTを通じて、所有権という形でユーザーに力を返します。
Web3 は今や、刷新されたより良いインターネットのビジョンを表す包括的な用語になっています。Web3を厳密に定義することは困難ですが、一般的には次のような特徴があります。
「ミスター・ルヴの春秋年代記」という本には、「賢者は時代に応じて計画し、流れに従って行動する」と書かれています。これは、知的で先見の明のある個人が準備を整え、適切なタイミングで迅速に行動し、一般的な状況に基づいて判断と決定を下すことを意味します。
Web3は間違いなくトレンドだと思いますが、それが本当にいつ始まったのかについては議論があります。ビットコインの出現から始まったと言う人もいれば、イーサリアムのデビューだったと主張する人もいます。私はどちらにも完全には同意しません。ビットコインの出現はWeb3業界全体の始まりを示し、イーサリアムの出現はWeb3業界の基礎を築きました。しかし、Web3を真に「力」に押し上げたのは、2020年のDeFi業界の大規模な爆発であり、ブロックチェーンアプリケーションが金融シーンに持ち込まれたことだと思います。
DeFiの紹介については、以前の記事「メーカーDAOとUniswap:分散型金融の進化」を参照してください。
Web3業界全体のユーザーベースは、2020年から爆発的に拡大しました。弱気市場による2022年の開発の減速を除けば、ユーザー数は他の年でも上昇し続けています。2024年には、ビットコインが半減し、強気市場が到来することで、ユーザーベースは成長を続け、上昇傾向は止められないと思います。
実際、Web3に対する香港の姿勢も注目に値します。2023年以降、香港はWeb3に対して友好的なシグナルを頻繁に発表しています。
Web3は2020年からトレンドになっているので、Web3に参加するのに最適な時期は4年前で、次に良い時期は今です!
2020年にWeb3の探求を始め、2022年にWeb2からWeb3に移行したので、Web2開発者がWeb3を学ぶべき理由について、個人的な経験を共有したいと思います。
実は、この問いは「なぜAI以外の開発者がAIを学ばなければならないのか」ということと何ら変わりはありません。テクノロジー業界は急速に進化しており、変化に対応し、競争力を維持するために継続的な学習が必要であるため、開発者として、何よりもまず継続的な学習者である必要があると考えています。
学習には深さと幅の両方が含まれ、どちらも等しく重要です。技術的な詳細を掘り下げることによって得られるデプスは、あなたがあなたの分野の専門家になるのを助け、技術トレンドを追跡し、隣接分野について学ぶことによって達成される幅は、あなたがあなたの専門分野に新しいアイデアを導入し、あなたの仕事をより創造的にすることを可能にします。
学習AIとWeb3は、今や同じロジックに従っています。最先端のテクノロジーを学ぶことで、初期のモバイル開発を学ぶのと同じように、技術的な知識の幅を増やすことができます。しかし、Web3がこの2つと異なるのは、「転換点」がないことです。
iPhoneの登場はモバイル業界に革命をもたらし、モバイル開発の「転換点」となりました。ChatGPTの登場は、AIの想像力を解き放ち、AIの「転換点」となりました。しかし、Web3はまだそのような革命的なイノベーションを目の当たりにしていません。しかし、これはまた、Web3がより革新的な産業である可能性を秘めていることを意味します。Web2開発者が既存の技術と経験を組み合わせてWeb3上に構築することができれば、大きなイノベーションを育むことができるかもしれません。
Web2 開発者として Web3 を学ぶことには、将来 Web2 が陳腐化した場合に備えて、バックアップ計画を立てることができるという利点もあります。
Web3テクノロジースタックには、現在、統一された定義がありません。私はAlchemyのWeb3テクノロジースタックパノラマを採用しており、下から上に次のように構成されています。
Web3開発者になることを選択した場合は、自分のスキルがWeb3テクノロジースタックのどのレイヤーに役立つかを理解する必要があります。
ネットワークレイヤーにサービスを提供している場合は、一般的に研究所や財団に関連付けられているレイヤー1またはレイヤー2を開発する必要があることを意味します。必要なスキルは、暗号化、コンセンサスアルゴリズム、ストレージ、ネットワーク、言語、仮想マシンなど、大きく異なります。エンジニアリング スキルはチェーンのアーキテクチャとパフォーマンスに依存し、一部のチェーンは Cosmos SDK または OpStack を使用して迅速に構築されます。
ブロックチェーンインタラクションレイヤーを提供している場合は、通常、ノードサービス、データ分析サービス、インデックスサービスなどのインフラストラクチャサービスプロバイダーで作業します。このレイヤーは、Web2のインフラサービスプロバイダー(クラウドサービスなど)に似ており、フロントエンド、バックエンド、データ、テスト、運用などの役割があります。したがって、必要なスキルはほぼ同じです。おそらく、ブロックチェーンネットワークインターフェースに関する知識が必要です。
プレゼンテーション層を提供する場合は、開発者に開発ツールとライブラリを提供することになります (一般に "シャベルの販売" と呼ばれます)。具体的な開発スキルは、製品形態やサービスを利用する開発者のタイプによって異なります。たとえば、IDE の開発には、ユーザー インターフェイス、ローカル ネットワークの設定、コントラクトのコンパイル、およびコントラクトの展開が含まれます。
DAppsを提供している場合、Web3開発のニーズの大部分はDApps開発に集中しています。したがって、Web3開発について話すとき、主にDApps開発を指します。この点については、次項で詳しく紹介します。
誰もが、フロントエンド、バックエンド、データベースなど、従来のインターネットアプリケーションアーキテクチャに精通している必要があります。オンラインショッピングサイトを例にとると、ユーザーはまずブラウザを介してフロントエンドが提供するインターフェイスにアクセスし、ショッピング関連の操作を実行します。ユーザーが特定の製品キーワードを検索すると、バックエンドは対応するロジックの処理、つまりフロントエンドからの要求に応答し、データベースを取得した後に必要なデータをフロントエンドに返す責任があります。データベースは、すべての製品情報とユーザー関連情報(ショッピングカートの内容など)を含む、アプリケーションの安定したストレージを提供します。
ブロックチェーン上に構築されたDAppsと従来のアプリケーションの最大の違いは、バックエンドとデータベースの役割の変化です。スマートコントラクトは従来のバックエンドの役割を果たし、ブロックチェーンは従来のデータベースに取って代わり、分散型データストレージを提供します。スマートコントラクトとブロックチェーンの緊密な連携により、データの保存と取得が透明になり、改ざんが困難になります。
したがって、DApps開発のスキルは、主にフロントエンドとスマートコントラクトの開発にあります。習得する必要があるスキルは次のとおりです。
インターフェース開発Web開発の経験があるフロントエンドエンジニアは、インターフェース開発のスキルを転用できます。HTML、CSS、JavaScriptなどの基本的なスキルと、ReactやVueなどの最新のフロントエンドフレームワークの習得があります。
認証メカニズムとデータの読み取り/書き込み。DAppsでは、ユーザーの認証と管理はブロックチェーンウォレット(メタマスクなど)を介して実装されるため、ウォレットインターフェイスを統合する方法を学ぶ必要があります。データの読み取り/書き込みもオンチェーンAPIを介して行われます。Ethers.js などの JavaScript ライブラリを使用すると、認証メカニズムとデータの読み取り/書き込みを簡単に実装できます。
多くのDAppsは半分散化されているため、バックエンド開発の需要もあります。バックエンドエンジニアのスキルは移転可能ですが、オンチェーンデータの読み取り/書き込みを伴うため、ブロックチェーンSDKを統合する必要があります。Go、Rust、ノード.jsなどの開発言語を使用することをお勧めします。
EVMチェーンでのコントラクト開発では、Solidity言語の学習に主眼が置かれます。初心者は、WTFアカデミーなどのプラットフォームで学ぶことをお勧めします。非EVMチェーンでの受託開発では、チェーンに応じて特定の言語を学ぶ必要があります。たとえば、ソラナでスマートコントラクトを開発するにはRustを学ぶ必要があり、Suiでスマートコントラクトを開発するにはSui Moveを学ぶ必要があります。ただし、現在、学習リソースは限られているため、それぞれの公式Webサイトを参照する必要がある場合があります。
Web3を学ぶためのヒント
Web3は未来です。この分野を探求するWeb2開発者は、クライアントサイド、フロントエンド、バックエンドのいずれであっても、既存の技術的優位性を活用し、キャリアの視野を広げ、職場での創造性を高めることができます。
しかし、現在のWeb3業界は依然として非常に不安定です。多くの人が必死に追いかけ、積極的な投資をしていますが、それはしばしば不安につながる可能性があります。Web3開発者になろうと決意しているなら、気を散らす情報を意識的に遮断し、テクノロジー自体に集中し、ロング期的で価値のある取り組みに従事する必要があります。このアプローチは、あなたの成長をよりよく助けることができます。