今更ながらの記事になりますが、今回はWindows 11上でPrysmとGethを利用してBeacon Chainのテストネットである、Praterテストネットの環境を構築する手順を紹介する。今回記事に整理する経緯としては、2022/06/09の01:00ごろに無事にRopstenがThe Mergeに移…
今回はBeacon Chainのblock情報をinfura.ioを使って取得する方法について記事にする。twitterで話題になっている、reorgについて何が起きてるのかを調べるためにblockの情報を見てみたいなぁと思ったのがきっかけである。The Ethereum beacon chain experien…
今回も機械学習関連の記事である。 nltk.TreeのデータをPNG画像として出力したかったのですが、Docker環境で開発を行なっていた関係でちょっと手こずってしまった。 Docker環境でPNGを出力させる方法がなかなか見つからなかったので、記事としてまとめておく…
最近は自然言語学習モデルのBERTを活用した実験を行っている。その中で、Attentionで何が表現されているのか?について興味が出てきた。 とあるツテから以下の論文を紹介してもらったので、この論文の中に出てきているサンプルコードを動かしたいというのが…
今回もDeepLearningについての記事です。 HuggingfaceのTrainerで学習させたときに、学習途中のログをTensorboard用に出力する方法についてまとめます。huggingface.co Tensorboardのログ出力設定 Tensorboardのログを出力するために必要なライブラリ コマン…
今回は深層学習の自然言語モデルである、BERTについて色々触っていたのでその記録を簡単にまとめたいと思う。 ひょんなことから、BERTの事前学習からやらなければならなかったので、実際に用いたライブラリや環境、学習に必要な時間などについて書いていく。…
最近、機械学習をいろいろと触っている。その関係で家のゲーミングPCに機械学習の環境を構築はしたけど、知識不足でcuda(GPUを使うやつ)環境はインストールできていない。 以前に導入を試みた際は、Windows 10ではcuda on WSL2が正式サポートされておらず、W…
vasteelab.com の記事を参考に、BERTの事前学習を動かしてみたときの備忘録をまとめる。2021年12月現在では、tensorflowのバージョンが上がっていたりなどで、記事に書いてある手順通りではうまく動かなかった。自分が行った修正内容などを共有する目的で整…
前回の記事から引き続きgo-ethereumから大量データを取得するために、今回はGraphQLを用いる方法について試したことをまとめる。なお、前回の記事は以下を参照。 y-nakajo.hatenablog.com go-ethereumのGraphQLについて go-ethereumのGraphQLサーバを起動す…
ethereumのデータを分析する場合、大量のBlockHeaderやTransaction、Receiptを取得する必要がある。これらの膨大なデータをHTTPを介してJSON-RPCで取得しようとするとかなりの時間を要することとなる。 そのため、今回は大量データ処理をするために直接go-et…
今回は、go-ethereumのv1.10から追加されたコマンドである、`go-ethereum snapshot prune-state`を試してみたのでその結果を共有する記事となる。 このコマンドは、go-ethereumのfull nodeを維持すると溜まっていってしまうstate trieのゴミデータを削除(枝…
今回はgethのsyncingの全体的な処理の流れについてまとめる。前回のまでの記事はこちら。 その1 その2 syncの開始 remote peerのhandshakeとpeerSetへの登録 fetching処理 fetchHeadersについて idle peerとtask queueとprocessHeaders peerの取得 request…
前回の続きとして、今回は特にReceiptsの取得処理周りを見ていく。Receiptの取得処理はfast syncの時に呼ばれ、full syncでは呼ばれないというコメントがあるが、そこの動きがよくわかっていないので、該当コードがどうなっているかを解析する。 ReceiptsPac…
Ethereumのfull/fast/snap syncの違いについてより詳しく調べいたと思い、gethのソースを読み始めた。 が、なかなかにボリュームがあるのと、同期処理についてかなり複雑だったので、頭の整理のために解析中の内容をメモとして残しておく。 full/fast syncの…
つい最近、社内ハッカソンでGraphQLのライブラリである、ApolloのApollo Client(React版)を触ってみた。その時に、公式のGetting Startedを動かすのに少し手間取ったので、ここに手順をまとめておく。 最後に、GraphQLを触ってみたときの所感を簡単にまとめ…
つい最近、社内ハッカソンでFlutterを用いたアプリ開発を行いました。その時に、FlutterやReactなどにおける、State ManagementやApplication Architecture(というか設計手法?)について色々と議論しました。その中で、Flutterでよく使われているBlocパター…
Truffleでちょっと特殊(?)なテストを書こうとしたら思ったよりもハマってしまったので、備忘録的に残しておきます。 miner.stopしたら動かないテスト miner.stopするとsendTransactionでフリーズする理由 miner.stopでフリーズしないテスト まとめ
今回は、Solidityのv0.6.5で追加されたImmutable keywordについて紹介します。 なお、v0.6.5は2020/04/06にリリースされております。執筆時点での最新バージョンはv0.6.8となっています。Immutable keywordについての公式の説明はこちらのブログを参照くださ…
今回の記事では、DappsのUnit Testでweb3.jsをmockする方法について紹介します。 sinon.jsを用いた方法と、jestを用いた方法の2パターンを紹介します。本記事で紹介している内容のサンプルプロジェクトも作りましたので参考にしてください。 github.com テス…
今回はIstanbulアップデートで導入されたEIP-1344についてまとめたいと思います。EIP-1344の説明をする前にMeta-Transactionの仕組みとMeta-Transactionが抱える問題を簡単に説明します。その後に、EIP-1344で何が解決されたのかを説明します。EIPの原文はこ…
今回はEthereumで用いられている2つのデータエンコード方式、RLP(Recursive Length Prefix)とPatricia Tree(Trie)について説明します。 RLP(Recursive Length Prefix) 概要 接頭辞の種別 例 具体的な使用例 Merkle Patricia Tree(Trie) 概要 前提:基本的な…
1. Optimization techniques for EVM implementations 2. (e)WASM Code Golfing - Below Par with Nim 3. Yul, eWasm, Solidity: Progress and Future Plans 4. Wasm Precompiles for Eth 1.x 5. EVM Roundtable: Everything You Wanted to Ask, But Were Af…
1. Welcome Ceremony ~ key note sessions 2. Eth 1.x Explained 3. Eth 2.0 tldr 4. Ewasm: Past, Present, Future 5. Lightning Fast Light Clients for the Future of Ethereum 6. Eth 2.0 Light Clients: How Light is Light? 7. How Do We Make Dapps a…
0. Registration 1. State Channels Sumit: B10 2. An EVM-Based Formal Rules Language: B3 (だとおもう。。) 3. Japanese, Human-Readable Smart Contracts: B3 4. Building a Formally-Verified DApp with the Reach DSL, today!: B3 5. WASM and Rust: B…
今回も引き続き、福岡ブロックチェーン勉強会#29 エキスパートコースでQ&A形式で発表した、EIP-1679についてまとめていきます。 github.com本記事は連載記事となっております。よろしければ前回の記事もご覧ください。 y-nakajo.hatenablog.com y-nakajo.hat…
今回も引き続き、福岡ブロックチェーン勉強会#29 エキスパートコースでQ&A形式で発表した、EIP-1679についてまとめていきます。 github.com本記事は連載記事となっております。よろしければ前回の記事もご覧ください。 y-nakajo.hatenablog.com y-nakajo.hat…
今回も引き続き、福岡ブロックチェーン勉強会#29 エキスパートコースでQ&A形式で発表した、EIP-1679についてまとめていきます。 github.com本記事は連載記事となっております。よろしければ前回の記事もご覧ください。 y-nakajo.hatenablog.comこのEIP-1679…
今回は、先日の福岡ブロックチェーン勉強会#29 エキスパートコースでQ&A形式で発表した、EIP-1679についてまとめていきます。 github.comこのEIP-1679は次のEthereum1.0のアップデートであるIstanbulで導入されるEIPについてまとめたものです。EIP-1679は現…
今回は、次期updateの提案、EIP-1679 Hardfork Meta: Istanbulで導入候補に上がっている、EIP-615について解説します。 eips.ethereum.org
今回はDefiでおなじみのdydxのv2 protocolである、soloで遊ぶためにローカルでsoloを構築する手順を説明します。 dydx.exchangeマージントレード、デリバティブトレードとして有名なdydxですが、最近プロトコルがバージョンアップされv2 soloとなりv1 expoと…