tktechblog

日々の開発学習の進捗確認とテクノロジーに関して考えたことをまとめます(ブロックチェーン学習中)

デプロイ&クライアント部分

geth/parity/infuraそれぞれの使用はなるべく詳しく知っておいた方が良いなあと感じた。またtruffleも頻度高く使うのでより細かく理愛できるようにする。solidityも同様。

懸念ポイント

今日はなんかgas uint8 overflow solidityとかいうエラーが出てきたけど結局解決できなかった。f:id:doobiedo222:20180817194409p:plain

Rinkeby Transaction 0x2b7234e880a09bcc57d8e552a394e3cc65598d6ab94925f18ea552638e1cc44a

そもそもkovanでデプロイしたのになぜかrinkebyになってる。。。。 というかropstenであげたやつも組み込まれている気がするから、ネットワークの部分のリサーチもする。

あとは、他のプロジェクトやってる時に、not matching of artifact and networkみたいなものもあった気がするのでフロントとコントラクト部分。web3とreact、reduxに関してもより深掘りしていく。

参考リンク

networkIDに関して ethereum.stackexchange.com

github.com

github.com

y-nakajo.hatenablog.com

truffle configuration

truffleframework.com

遭遇しやすいエラー

solidity security point: Security Considerations — Solidity 0.4.24 documentation

https://medium.com/@ncloutierweb/solidity-truffle-not-found-at-block-50-error-solution-3d1a7784f00e

クライアントは何がベストか

クライアントは何がベストか、今後もこれがデファクトとして使われているのか、そうでない場合、リソースをどこに費やすべきなのか。そういったことを考えるのはすごく重要なことだなあと感じた。

parityとgethの両方に苦しめられた1日です( ;∀;)

dapps

dapps関連のコードを書いていると以前触っていたコードが動かなくなっていたり、今存在しているレポジトリも手元だとそもそもコード規格変わってたり、割と悲惨なことになっている。

基本的なWebページ部分とコントラクト部分と分けて考える必要があるので、今やっておきたいのは、とりあえずwebページ側のデプロイする部分のリサーチと開発、コントラクト側のリサーチと開発。

主にweb側(?)で骨が折れるのが、react/reduxやtypescript/yarn/node/mocha/chaiあたり。あとはnpmなどの管理ツールが大量に出てくるのでこの辺で一度jacascript側の知識を体系的に身につけるために時間を取った方が良いのかもしれないなと少し感じ始めてきている。

今日の進捗

進捗? とりあえず、dexを作っていてことごとくはまっている。やっとどうすべきか少しわかってきたけど、まずは設計の部分を軽く自分の頭で考えること+mvpをどの部分で作るか、+使用技術と工数も小さく作りながら考えていく。

開発時の案 erc20/721、Dex、アイテムシェアリング、コマースなど

今日やったこと

  • Circle CIのセッティング
  • erc721のアイテム決済のdappsを作成。画像準備やdbの持たせ方、テキストの内容などは追って考える。
  • もう一つ、erc721のアプリモック。これはapi呼び出しでアイテムを引っ張ってくるもので、キャラクター、アイテムごとにapi呼び出すときのことを考えると専用のapiを作ることも試しといた方が良いかなと感じた。
  • ERC20/721専用のdex。やっていたけど、途中で詰まってしまったので、途中で他のものを作るのに変更。仕様から改めてはっきりさせて、ドキュメントをもう少し読み込もうと思った。同じところでハマっているので原因を特定したい。

感じたこと

dexはどう考えても後発で出て行ってもマネタイズ的な意味では小資本、小リソースの個人、チームが勝つのは競争者も多いしあまり良い考えではない。ただ個人としては作りたい思いが強い。

一番に好奇心。割りが合わないとわかっていながらも何が何でも作りたいというもの。

二つ目に、ICOカニズム、バックエンドで働くDEXを起点にトークンエコノミーが発展して行くのはわかりきっているので、マネタイズ的なところは置いといて開発する必要性は十分あると直感的にほぼ確信に近いところにまでいる。

DEXを運用することは、web開発者がwebアプリケーションをリリースして、顧客の反応や、プロトコルの不十分性や、自分の持っているアイデアを具現化することによってUI/UXを可視化したり、機能追加、実際の動作不良点などを把握するのと同じようなものだと思っている。

DEXを起点にスケーリング、シンプルさ、クロスチェーントランザクション、オンチェーン、オフチェーンへの深い理解。コンセンサスメカニズムは何がベターなのか。セキュリティトークンに連結させることもできるし、どう行ったアイテムやナレッジを流通させるために使えるかなどもわかる。運用することによって初めて、どのような法律があって、どこにマネタイズポイントがあって、どこがcryptoのセクターの中でコアポイントなのか理解しうるし、どの事業と親和性があるのかなど、どう運用すべきなのかといやでも調べるようになって深い理解につながる。だからコミットしようと思う。

CIツールに関して

Circle CIを取り入れてみたけど、プロトの段階ではどうかなと思っていて、ある程度本腰を入れて拡張しそうなプロジェクトやチーム開発の時は積極的に使っていこうと思った。

https://circleci.com/docs/2.0/

CircleCI入門の入門 – Simple IT Life

別途整理したいこと。

qiita.com erc721 in openzeppelin

ERC-721トークンをOpenZeppelinで作ってみる

https://github.com/OpenZeppelin/openzeppelin-solidity/pull/803

- yarn/npm/bower/webpack/bulmaなど

yarnpkg.com

qiita.com

Code Splitting

qiita.com

今月の開発計画

今月やりたいこと、作りたいもの、やらなければならないことがだいたい決まった。目標を定めたら、優先順位をきちんと意識して、やるべきことを終えたらやりたいことをやる、やりたいことはやらなければならないことが終わって初めて手をつける。だからこそ、やりたいことを多くするために、やらなくてはならないことを素早く終わらせるために全力を注ぐ。ということを意識して今月を走り切る。

今日やったこと

  • plasma mvp
  • 25 min ethereum
  • dapps: community token testnet
  • 0x protocol dex
  • 今月作るプロダクトの計画立て、工数計算、リソース配置、kpiの設定
  • 今月のやるべきこと、やりたいことの洗い出しと期限設定

熱暴走対策

MacBook Proの発熱でファンが止まらない! 3つの手段で冷やしてみました | 近日出荷 -キンジツシュッカ- アクティビティモニタでプロセス確認したら、parityがものすごくメモリを食っていたので、process killしたら治った。勉強になったが、マックが壊れたんじゃないかとびっくりした。