Pythonでブロックチェーン開発をしてみる

 

どうも、アドベントカレンダー9日目担当です。

 

アドベントカレンダーをなんでブログで書くかはまだよく分かりません。

 

そもそもアドベントカレンダーってなに?

アドベントカレンダーの起源は、19世紀初頭よりドイツルーテル派がクリスマス前の24日間を数えるために始めたとされる。ドアに毎日チョークで印をつけたことから始まったとすることもある。

 

おお、ルーデル派!

ルーデルってあの破壊王か!?

一気にやる気が出てきた。

 

f:id:ike_owl:20191210022130j:plain

https://gigazine.net/news/20080718_hans_ulrich_rudel/

 

 

やる気が出たところで、今回書く内容はタイトルの通り、

Pythonブロックチェーン開発をしてみる(ウォレットを作るまで)

をやってみたいと思います。

 

2016年くらいからビットコインとか、ブロックチェーンとか調べ始めたけど、

実際にコードで動かす機会は無いままでした。(めちゃめちゃ難しいイメージを持ってた)

 

そんな自分でもやってみようと思ったきっかけのコースがこちら。

現役シリコンバレーエンジニアが教える
Pythonで始めるスクラッチからのブロックチェーン開発入門

https://www.udemy.com/course/python-blockchain/

自分でビットコインのウォレットを作るセクションなどもあってそそられました。

 

が、自分にできるのか、、

いくらシリコンバレーのエンジニアでも、

ガチ文系には辛いんじゃないか、、

pythonって機械学習とかに使う、高等な数学の知識が必要なのでは。

 

分数でつまずいたのはもちろん、

おはじきとかも使い方がよく分からないうちに、算数初級が終わってたぞ。

 

f:id:ike_owl:20191210020830j:plain

 

前世一歩手前まで思い出したけど、やはり算数の記憶が曖昧。

もはや文系とか関係なく、算数やってない。

 

まぁ難しいこと考えると動けなくなってしまうので、

進めて行きましょう。

 

アドベントカレンダー9日目をサボるわけにはいかない。

 

まずは環境を整えます。(ローカル環境がごちゃってて、ここが一番詰まった)

必要なもの

変なエラーが出ても嫌なので、頑張って講師の方と一緒のバージョンにします。 

参考サイト

https://qiita.com/ms-rock/items/72b8f1abc661c539bb09

pythonのバージョン管理はpyenvを入れました。

 

 

そしてコースを進めて行きます。

 

よく聞いていた単語がどういう風に作られているのか分かり楽しい、

講師の方が爆速でコードを書いて、内容を早口で細かく説明してくれます。(udemyは動画の再生速度も調整できる)

 

今まで文献でしたか読んだことがなかった機能を実装しながら、ウォレット作成まで進めます。

正直、何度か詰まりましたが、

コース内で講師の方が書いたソースコードも配布されており、

動かなくなったら、diffとって

脳みそに汗を書きながらコピペしてたら、

一応にウォレットらしきものができました。パチパチ

 

f:id:ike_owl:20191210012448p:plain

 

今回学んだこと

  • ブロックチェーンの動きがソース上の動きだとどうなっているか。
  • ブロックチェーンを動かす為の知識(プログラミングの知識以外にも、API、セキュリティ、ネットワークなど)
  • udemyは二重価格なので、セールの時に購入するべし。(定期的に60%〜90%オフセールをやる)

感想

  • python初級をやってから再度進めた方が面白そう
  • 算数はあんまり関係なかった(さすが講師がシリコンバレーエンジニアなだけある)


実際のコースはこの後もまだまだ続くのですが、今回はこの辺で終わっておきましょう、ノシ

 

  

すみっコぐらし学習ドリル 小学1年のたしざん ひきざん

すみっコぐらし学習ドリル 小学1年のたしざん ひきざん

  • 作者: 
  • 出版社/メーカー: 主婦と生活社
  • 発売日: 2016/11/25
  • メディア: 大型本
 

 

p.s

低品質のアフィリ記事みたいになってしまったけど、大丈夫かな。