ブロックチェーンを知るところからdApps開発までの学び方
ブロックチェーンやdApps開発について学びたいという方向けにdApps開発までの学習方法やオススメの本、サイトをまとめてみました。
私自身プログラミング未経験からdApps開発を目指しており、先日dAppsもリリースしました。どのように学んだか私の経験が参考になれば幸いです。
ブロックチェーンを学ぶ
まずはブロックチェーンを知るところから。
(既に知ってる方は飛ばしてください)
初級です。多分一番易しく書かれた本です。入門中の入門です。
中級です。ビットコインがどのように動いているか、ハッシュ関数やブロック生成方法など細かく分かりやすく書かれています。(値段も500円と安い)
ブロックチェーンが一体どのようにビジネス、経済を変えるか、様々な業界のユースケースが紹介されています。ビジネスモデル考えたい方にオススメ。
上級です。ビットコインのバイブル書です。コードや数式たくさんでエンジニア向けです。これ読めたらビットコインのこと知ってると自信持って良いと思います。
あとは少し古いですが、経済産業省がまとめている資料が分かりやすくなっており、オススメです。
Ethereum、Solidityを学ぶ
dAppsを開発するにあたり、今はEthereumを使うケースが多いです。他のブロックチェーンと比べて、Ethereumは開発者が多く、多くのプロダクトが生まれています。その為まずはEthereumを勉強するのがオススメです。
今出ている本の中で一番まとまっている本です。
前半はブロックチェーン、後半にEthereum、Solidityを使ったアプリケーション開発が載っています。
追記)
2019年1月30日に発売されました。先ほどの著書と同じ方々が執筆された本です。スマートコントラクトのコーディングやテスト手法、フロントエンドやミドルウェアを含めたアプリケーション提供のための包括的な手順が載っています。現時点でここにスマートコントラクトやdapps開発に関わる情報が集約されています。
EthereumはSolidityという言語を使用し、スマートコントラクトを書いていくのですが、その言語について学習できるサイトです。Progateのsolidity版みたいなものです。
dAppsを触る
dApps開発する前に、今のdAppsの現状を知っておいた方が良いです。
大抵のdAppsはMetaMaskに対応しているのでインストールしましょう。
そのアカウントにETHを送金することでdAppsを体験することが出来ます。
一番有名なdAppsがこのクリプトキティです。ネコを購入して、子猫を繁殖させるゲームです。レアなネコは数万円以上で取引されています。
ポケモンに似たイーサエモンも人気です。
dAppsを作る
dApps作るチュートリアルですが、ここから日本語がほとんどありません。英語が必須になるので、英語苦手な私は大分苦労しました。(今も苦労してます...)
udemyのこのコースがdApps開発の一歩にオススメです。
このあたりから公式ドキュメントの読み込みが必要になってきます。
Solidity
web3.js
OpenZeppelin
dApps Developer向けのリンク集作りましたので、詳しく知りたい方はこちら参考にしてみてください。
そして私が一番苦労したのは、フロントエンドとブロックチェーンを繋げる所です。知れば簡単なのですが、当時はまとまっているサイトがなく苦労しました。今はまとめているサイトも多いのでご紹介します。
オオキマキさんが作った「Ethereum dApps Quickstart」
そのハンズオンの解説
このあたりをやってみるとフロントエンドとブロックチェーンの繋げ方が理解出来ると思います。
そしてdAppsではトークン配布やトークンの使用のインセンティブ設計により、課題に対して効果的なアプローチをする事が可能になります。そのためにはプログラミング以外にも経済学の知識が必要です。
私もまだ勉強中なのですが、この本がオススメです。
コミュニティ
情報交換が出来るコミュニティに入るのもオススメです。
Hi-Ether
Ethereum 開発者向けのコミュニティです。
加入にはテストネットのETHが必要
https://qiita.com/amachino/items/605ff76209d7193dc92c
dApps開発者ギルド
dApps開発メインのコミュニティです。
https://discordapp.com/invite/3CH4CM
コミュニティはたくさんありますが、この2つが一番情報が集まっている感があります。
オススメのメディア
最後にブロックチェーンの情報を収集するために参考にしているメディアを紹介します。
GunosyさんのBlockchain Blog
幻冬社さんの新しい経済
個人ブログ
高妻さんの「ブロックチェーンエンジニアとして生きる」
Individua1 | Ethereum経済圏研究
OsukeさんのZOOM
最後に
ブロックチェーン界は、変化の激しい業界で毎日のように情報が更新されていきます。その情報を追いながらdAppsを作れると次のビジネスに繋がるかも知れません。黎明期の今だからこそやる価値があると思っています。
興味持たれた方は、是非作ってみてください!