見出し画像

最終日 - イーサリアム学ぶ夏休みのまとめ

31日目。いやー、1ヶ月ちゃんと継続できた!
楽しかった!振り返りましょう。

この記事は、タイトルの通り「イーサリアムを学んで過ごした1ヶ月の夏休みのまとめ」です。ゆっくりしていってね。

まず、学習に使った書籍やサイトのまとめが役に立つかも知れない。これをそっと置いておこう。


↑ファイルの最後に、

学習前/学習後でどう進歩したかのイメージを添えた。学習前がひどいですね。今回の学びを通して、ちゃんと人間になれたとは思う(笑)

振り返りの本題ですが、「経緯(と現状確認)」「学習方法のふりかえり」、「特に学んでよかったこと」、そして「次にやること」を書いていこうと思います。

経緯

自分自身振り返って読み直すかもしれないのでやり始めた理由を書きます。このマガジンは概ね100名ほどの方々に見ていただいてるようなので、ついでと言ってはなんですが、役に立てば良いな。

まず、自分の現状確認ですが、

自分は、個人事業主の職業ソフトウェア(システム)エンジニアです。国内の4年制大学でソフトウェア工学を学んでストレートで卒業後、職業エンジニアとして12年程実践経験があり、開業したのは5年前になります。

↓の自己紹介ページには、自分がどのような経験をしてきたのか本当にざっくりとした、ガントチャートを載せています。国内の都心部で環境を転々とし、エンジニアとして出入りした現場の数はすでに両手にあまり、多少の苦戦苦闘をした思い出があるのは間違いありません。つらいことは忘れるのではっきりと覚えてはいませんが。

AWSを使ったシステムの構築などをよく行っていました。

そして、ソフトウェアエンジニアらしく、プログラミングが無意識に好きなのだと思います。

---

この、イーサリアムを学ぶノートは

つまり

「エンジニアとして、イーサリアムブロックチェーンと取り巻く動向を知って実践し、理解しよう」

というものです。

学びだした理由は3つありました。

※大前提としてすこし休息を取ろうと言う考えがあり。それを除いて書いていきます。

「1.ブロックチェーンとWeb3のトレンド進行状況から、自律分散型インターネットの世界にきちんと入門したいと思った」そして「2.ブロックチェーンを活用するシステムは、なにやらエンジニアとしての醍醐味というか、楽しそうな匂いがするぞ」

3つ目は学習と自習に関することなので「学習方法のふりかえり」で書いておこうと思います。

とにかく、そういう感じの動機でこのノートを始めました。

※以下、なんだか長い経緯がつづきます。TL;DR

ノートの内容は、そういう動機からか最終的にはブロックチェーンの歴史や未解決問題、或いは、セキュリティなど渋い(けど大切)な話題も学びの範囲に入りました。ぶっちゃけ、1ヶ月学びをやりきって、その結果次どうするか考えが浮かべば成功とも思っており、このノートの記事はほぼサボり防止用に書いています。文章がつたないのはそのせいです。

あとこのノートに、あまりエンジニアらしい内容は書いてはいません。つまり、データ構造やアルゴリズム、アーキテクチャ、エンジニアが使うエコシステム、Web開発などは関心の対象ですが、目的に忠実に取り組んだ結果、それらに触れていません(少なくともノートの上ではあまり触れられない結果)

※これは、「自分が現役のエンジニアなのであえて学ばずとも無意識に分かる部分でもあり記載に至らない」、そして、「他にもっと優れた記事がたくさんあるので読むことに徹した」という感じの理由です。無意識的に最初の学習の範囲を広げて、深掘りすることを抑える抵抗力を働かせているかもしれません。良くも悪くも。ITが教養として見なされる時代で、仕事上理解する必要のある事情や範囲も拡大しているからそう自然に動いてしまうのかもしれないと思いました。深堀りすることを拒否しているわけでなく使い分けることを覚えたと前向きに捉えています。

ところで、自分がブロックチェーンについて学ぶのは、多分今回で2回目です(学生の時に知った気もするのでとにかく初見ではありません)。最初に学ぼうと思ったのは、確か2016年頃でした。当時はイーサリアムではなく、ビットコインと分散管理台帳技術に注目。しかし、1回目の学習は本は読んだものの、実質断念しました。

1回目の学習で深く追求するのを実質断念した理由は2つ。「1.金融と経済に関する、一人ですぐにはどうにもできない程大いなる、理解不足」と、「2.日本で職業エンジニアとして振る舞うなら、ブロックチェーンにコミットするより、もっと他に学ぶべきことが自分にはありそうという認識(それに精一杯だったこと)」です。前者は、金融・経済的なリテラシーがもう少し高ければ、今少し早く行動に移せたかもしれない。そして後者は、ブロックチェーンという仕組みは、暗号化やハッシュ関数、P2Pネットワークなどの応用で、情報処理技術者にとっては基本とも言える要素の集合。だからそのように考えたのだと記憶しています。

いかにも自分は凡庸です。ただ、今回このノートで学習に向かえるのは、開業してからの期間の経験によって不安が晴れたからだと肯定的に思っています。

学習方法のふりかえり

イーサリアムとブロックチェーンについて学ぶ学習方法について。これは、結局自習にしました。CSの学位もあるしやればできる、はず..?

とはいえ、事情に詳しくない入門者である自分。自習をする上で、頼りにしてよい情報の見立て、そして、学びの方向性に手応えというか納得感が出るまでは大変だった。終わってから参考にした書籍とサイトを俯瞰してみるともっと簡単なやり方があったんじゃないかという印象はでかい(それぞれ学んだ次の日とかにイロイロ気づくこともあったのは内緒)

振り返ってみると、すこし前に不安視していた「自習力」の確認と点検を兼ねていたとも言えそうです。実は、このノートを始めた一番の動機はそれじゃないのかと内心分析しています。

解くべき(学ぶべき)問題を、自分のチカラで探り当てたり、歪んだ解釈をしたりせず進むことが出来るか。どの程度の学習が自分自身で行えるのか。それを検査をしたかったのだと思いました。最初から考えていたわけではなく、あくまで終わった後の考察です。

ブロックチェーンの有識者や先人たちのいる組織に属して、仕事を通じて学べるという人たちはなんとも羨ましい。

余談ですが、時勢的に、学び直しとか停滞感を、課題に感じて取り組む人は、おそら大勢いるのではないかと思います。自分もずいぶん前から課題に感じています。

学習方法のふりかえりみたいな話題、そういった話ができるコミュニティあったら嬉しいな。ひとくちに学びといっても事情が異なるのでなかなか難しいのかな。あったら入りたい。

ひょっとして、かの有名な「42Tokyo」はこのような懸念を晴らしてくれる養成機関では?と思ったのですが、実際はどうでしょう。参加してみなければわかりませんが、そうだといいな。

まぁとにかく、自分の至らない点=伸びしろがたくさんあるとわかってよかった。しかし、今度似たような状態で学ぶときは、概論くらいは、大学などの講義に頼ろうと思いました。いくら自習力があっても、独学はあまりにもリスク(方向性や理解の仕方を誤るリスク)は大きく、ほんとうに学びたいことに関しては、懸念を払拭していくコストがでかい(笑)そういう考えの中で、MicroMastersが気になったので備忘録として残しておく。

いろんな方が利用して学習されてる模様です。自分も次は候補として真剣に考えます。

ここで、特に学んでよかったこと3つ上げておきます。1ヶ月分あるので、3つに絞ります。

特に学んでよかったこと① ブロックチェーンの歴史

ブロックチェーンを牽引する方々の顔ぶれを確認し、ブロックチェーンがこの10年あまりで、どのように世の中に広まってきたのかのきっかけを知る。牽引する方々の顔ぶれと考え、業界の動向などを確認するという時間。風説に惑わされない為にも、もっと早く叩き込むべきだった。あと、学んでみるとしらないことが出てくる。ブロックチェーンの歴史なんてあえてここで学ぶのソレ要る?に近いこと途中まで思っていて、最後の最後に学ぶことになったのはナイショ。気づくのが遅くて本当にスマン。

特に学んでよかったこと② CryptozombiesでのSolidity学習

業界の通説通り。やってよかった。作っていただいている方には感謝。Solidityは現在から2年以上前のバージョンを前提にしているので、それを前提に楽しく稽古できた。

特に学んでよかったこと③ 安心の日本語書籍で学習→学習中間まとめ

マスタリングイーサリアムとゼロ知識証明入門の2冊。1−2週間程度。読んで学んではネットで検索。そしてまとめる時間。Solidityの基礎構文もここで把握。安心して学べる日本語の書籍に助けられて、なんとか基本を理解。

ゼロ知識証明入門は後から買ってよかった良書
色々あるが、読まなければ、範囲のゼロ知識証明(zk-Bulletproof)は存在すら知らないまま見落とすところだったのでは(汗)



現場からは以上です。


次にやること

自由研究としては継続してやりたいことが2つ↓あります。あと、それとは別にいつまでも休んでないで仕事復帰しましょう(だれかお仕事ください)

自由に研究するするのは、もくもくと続けます。適当なタイトルをつけておこう

1.Rust入門していくノート

Rustを学んでいこうと思います。ブロックチェーンを織り混ぜて。

2.おとなのブロックチェーン自由研究,アーキとアプリとアルゴリズムデータ構造学びながら研究してくヤツ


まとめると

よし。

全体像はちゃんと理解できた!SolidityでERC721のスマートコントラクト開発も実践した!プロダクトを世の中に出す経験までには至らないが、まぁまぁ頑張った!

画像1

後悔しない夏休みだった。学習開始時点と比べれば上々だ。

来月からまた頑張ろう。以上!


この記事が気に入ったらサポートをしてみませんか?