コンテンツにスキップ

2022

ERCを読んでみよう

そもそも

2014年に Block Chain(もとい Bitcoin) の概念に初めて触れて、特別難解なアルゴリズムではなく基礎的な要素技術の組み合わせで実現される Proof Of Work の仕組み等に感動したものの、当時の業務に活きるソリューションではないと自分の中で結論づけて放置してみたらおよそ8年も経ってしまっていた。

その間、 Block Chain を核とした新たなプロダクトやサービスの拡大・進展が凄まじく、今や無視できないものとなってしまったのでいよいよちゃんと勉強しようということで、もはや人口に膾炙した感もある「トークン」や「NFT」を実現する技術を理解すべく、現時点ではその界隈の雄である Ethereum の仕様を読んでみようと思い立ったのである。

そこで ERC

なんだか「トークン」とか「NFT」という言葉が流行りすぎているせいでググっても生煮えの記事ばかり出てくる。そういう時は原典に当たりましょうということで、Ethereum の仕様たる ERC を読んでみたいと思う。

インターネットの仕様を記述したものは Request For Comments で RFC。Ethereum の仕様は Ethereum Request for Comments で ERC。

Ethereum の仕様策定に際して起こっていることをざっくり把握するにはこのポストを見ればざっくり掴めそう。

オフィシャルな ERC はこのページ のものを見れば良さそうなので ERC20 とか ERC721 あたりから読んで行こうかと思います。

ちなみに

NFTの教科書 という本を買って読んでみたものの、期待していた内容ではなかった。

前半は2020年後半から2021年半ばにかけての NFT 関連サービスやそれらが乗っている Chain の紹介(いわゆるメタバース系の事例も紹介されている)で後半が法律の解説。

前半は「そういうサービスや Chain もあるんだ〜」くらいには楽しめるものの、それぞれが特別深く掘り下げられるわけではないので時間があれば「NFT サービス」とかでググるだけでもても同じ体験が得られそう。

正直後半は接客、販売、エンターテイメント領域に携わっていれば基本的に勉強する内容で、それらの法律をもってトークンや NFT という新しい概念がどう解釈されるかに関しては「事例がないからまだわからない」的な結論が多く、残念だった。

GCEのインスタンスからGCSまたはBigQueryにデータを送る方法

この投稿は

GCPのドキュメントをよく探ればちゃんと書いてあるけどすぐに見つけられないときのための備忘録。

to GCS

ライブラリのインストール

インスタンスの状態によって諸々違うでしょうが自分がやった手順のメモ。

Python 使う前提。

sudo apt-get install -y python3-pip
sudo pip3 install --upgrade google-cloud-storage

cf: https://cloud.google.com/storage/docs/reference/libraries

サンプルコードをパクる

ここ を見れば良いだけ。

Python ならそのまま使えるコードがここにある。

destication_blob_name には bucket 名以下の path(に見えるもの)を指定すれば良い。

to BigQuery

ライブラリのインストール

sudo pip3 install google-cloud-bigquery

※ちなみにこのライブラリのインストール完了まで結構時間がかかる。 grpcio のライブラリのビルドに時間がかかるようなのでこれだけ別途落としてくると時間短縮できそうだが1時間もかからないので放置でもOK。

サンプルコードをパクる

Python でそのまま使えるサンプルコードはここ

アップロードもとのファイル形式を変えたり job config いじるときは公式のドキュメントを見る。

JSON ファイルからアップロードしたい場合は

job_config = bigquery.LoadJobConfig(
    source_format=bigquery.SourceFormat.NEWLINE_DELIMITED_JSON, autodetect=True,
)

とかしておけば良い。

参照

to GCS

to BigQuery

VuePressでブログを再開するよ

びっくりすることに最後にこのブログに投稿してから4年以上が経過している。

どうやらその間にもブログをいじろうとした形跡が見つかったが何かしらの理由で断念したらしい。

おそらくその当時の自分と似たような動機(Octopressから移行したい)で Hugo に移行させようと GitHub から clone してきたら VuePress に移行しようとした痕跡が残っていて VuePress というものの存在を思い出し、Vue ベースなら扱いやすそうだと昔の自分に乗っかることにした。

VuePress は v2 の時代

今は VuePress v2 なるものがあるらしい。特に気づいてなかったけどセットアップを進めていたら最新版の 2.0.0-beta.35 をインストールしていた。

まぁとにかく ガイド が分かりやすいので読んでいけばなんとかなる。昔の自分が何にハマったのかよくわからん。

Archive ページを作るのがちょっと面倒い

ここ に VuePress 向けの theme がまとまっているけどいまいちイケてるのがない。

というかデフォルトの theme が Vue 感強くて結構良い感じなのでそのまま使う。

ただ VuePress は別にブログに特化してるわけではないので過去の記事一覧みたいなページをサクッと設定できない。

なので自分でサクッと書いてみようと思いきやしれっと「$site.pages はもう使えないよ」って書いてあって戦意を失う。

For scalability concern, $site.pages is not available any more.

そんなわけで vuepress-plugin-use-pages を使わせていただきました。

今後は

久々にブログをいじったら色々分かりやすく便利になっていて楽しくなったのでちょくちょく投稿するかも。

あとはタグを収集できる機能が欲しいから時間があったら見てみようかな。

昔の記事をちょろっと見ると恥ずかしいこと書いてるのでこの記事もいずれ恥ずかしい記事になるでしょう。