Alchemy Universityやってみた
2025/07/05 公開
はじめに
Web3 関連技術を体系的に学び、スマートコントラクト開発の知識を深めたいと考え、Alchemy Universityのブートキャンプを受講し始めました。現在はWeek6の途中ですが、ここまでの学習内容や気づきなどをまとめて共有します。
https://www.alchemy.com/university
Alchemy Universityとは?
Alchemyが提供しているオンライン・ブートキャンプです。無料で会員登録するだけで誰でも受講でき、ブラウザ上ですぐに学習を開始できます。暗号学の基礎からDAppのフルスタック開発の流れの体験までを7週間で学ぶカリキュラムで、各週にはコード課題と自動テストが用意されています。修了時にはNFT形式の修了証が発行され、活発なDiscordコミュニティで疑問をすぐに解消できる環境が整っています。
始めた理由
ポートフォリオ用にスマートコントラクトの実装実績を貯めたいという思いが大前提にありました。また、勢いで投票 DApp を作成した際、AI にかなり頼りすぎてしまい、「自分の手にスキルが残っていない」という感覚が強く残ったことも動機の一つです。さらに、かつて取り組んだ CryptoZombiesは内容が古くて結局最新のドキュメントを調べ直すことが多く、より実践的で無料な教材を探した結果、Alchemy Universityに行き着きました。
カリキュラム全体の流れ
Week1 - 暗号学の基礎
ハッシュ関数や公開鍵・秘密鍵の仕組みを学び、なぜそれらがブロックチェーンで重要なのかを実装を通して理解します。
Week2 - データ構造と残高管理
ブロックチェーンのデータ構造として、Merkle TreeやPatricia Trieといったツリー構造を学びます。BitcoinのUTXOモデルとEthereumのアカウントベースモデルの違いを比較し、残高管理の仕組みを理解します。
Week3 - Ethereum JSON‑RP
これまでの基礎を踏まえて Ethereumに注目し、読み取りトランザクションと書き込みトランザクションの違いを学びます。JSON-RPC インターフェースを使い、ノードとどのように通信するかを実習します。
Week4 - Solidity基礎
Solidityを用いたスマートコントラクト開発の基本を学びます。可視性修飾子やイベント、エラー処理といった基礎機能を実装し、Hardhatでユニットテストを作成します。
Week5 - Solidity応用
Solidityのさらなる習熟を目指し、payable、fallback/receive、カスタムエラーなど実践的な機能を掘り下げます。
Week6 - セキュリティ & 最適化
アップグレード可能なコントラクトや再入金攻撃、ガス最適化など、より高度なSolidityの概念とセキュリティパターンを学びます。
Week7 - DApp構築
最終週では、これまでの学びを統合し、自分自身の DApp を設計・構築します。AaveやUniswap、Chainlinkなどの実際のユースケースを参考にしながら、フルスタック開発の流れを体験し、最終課題であるEVMチェーン認証向けプロジェクトの準備を進めます。
Week1〜6を振り返って
今振り返ると、ブロックチェーンの根っこで利用しているハッシュ関数やMerkle Treeなどの概念は思ったより身近なデータ構造の応用でした。
Solidityの修飾子が多すぎて「どれがexternalでどれがpublicだっけ?」、mappingと配列はどう使い分けたらいいんだ?と迷う場面も多々ありました。それでも演習課題をこなすうちに、各キーワードや構文の意味と用途が徐々に腑に落ち、だいぶ使い分けられるようになってきた気がします。
すべて英語で提供されている点も大きなハードルでしたが、Immersive Translate というgoogle拡張機能を活用して動画字幕やテキストを即時翻訳し、何とか学習を継続できました。原文の下に日本語が出るので一旦英語を読んで、この単語は日本語でこういう意味なのかとすぐ確認できるので便利です。
やってみてよかったこと
まず、暗号学の概念整理からDApp実装までを段階的に学べた点が非常に有益でした。かつて一部の人しか利用できなかった学習プログラムが、現在は誰でも会員登録後に無償でアクセス可能になっていることにも感動しました。
特に、課題ごとに自動テストが組まれているため、書いたコードが即フィードバックされるところが良かったです。
悪かったところ
教材のほとんどが3年前に最終更新されており、演習で指定されるウォレットやテストネットがサービス終了しているケースが多く見受けられました。たとえば、Apex Walletの開発終了やGoerliテストネットの廃止などで課題をそのまま再現できず、手順を自前で置き換える必要がありました。(Apex WalletはMetamaskに置き換え、 GoerliテストネットはSepoliaをテストネットを利用することで対処しました)
https://github.com/ethereum/ethereum-org-website/issues/12741
https://www.alchemy.com/blog/ethereum-goerli-testnet-deprecation
おわりに
残りのWeek6とWeek7を終えたら、最終課題(最終プロジェクト提出+英語プレゼン)に挑戦します。初めての英語発表ですが、良い機会と思って全力で取り組む予定です。
ここまでを通して、EVMの内部挙動やSolidityの基礎をしっかり理解できた手応えがあります。ここまででEVMの内部挙動とSolidityの基礎はかなり腹落ちしたので、最終課題をクリアしてポートフォリオとして堂々と提示できるレベルに引き上げるつもりです。
ここまで読んでいただきありがとうございました。