投稿者「krote」のアーカイブ

楽しむ力

今日は夕食後、次男がモノポリーをやりたいと発案。
家族全員でモノポリーをやることに

長男や長女は、どちらかというと漫画読んだりゲームしたりと、一人で遊ぶことが多いけど次男は周りを巻き込んだ形の遊びをよく提案してくれるので、イイです。

もっとも、同じくらい相手をからかったりふざけたりするので困ったものですが。

子供たちはそれぞれよくもまぁこれだけバラバラな性格になったもんだと思わずにはいられませんが、ボードゲームをやっていると、調子に乗って大盛りあがりするんですよね。

全力で楽しもうとする。
そんな姿に、圧倒されてしまいます。

翻って、考えてみると随分とつまらない毎日を送ってしまっているなぁと思わずにはいられない。

Goerli Testnet ETH Claim キャンペーン

buildspace もようやく、 React のフロントエンドから Goerli Testnet にDeployしたスマコンに接続するところまで終了

途中、どうしてもうまくいかないな?と時間がかかる場所があったのですが、チュートリアルとしてその時点ではうまくいかない状態というオチでした。

時々ある罠ですが、ちょっと困るものです。。。

Goerli Testnet への Deploy は、以前にも誰ジェネでやってます。

誰でもできる!ジェネラティブNFT開発
https://crypto-code.jp/materials/create-generative-nft

ただ、その時もテスト用のEthが足りなくて、そもそもDeployできないという事態になったんですよね。結果としてその時は諦めてしまった過去があります。

そんな中、こんなTweetが!
過去に Mainnet / Goerli / Sepolia で Deploy したことがある人に 10 Goerli ETHをくれるという!

両手を上げて行ってみましたが、、、、 2022/11/15 時点でDeployしている必要があるとのこと。
そして、私がGoerliで試していたのが 11/16 。。。

うがあああああああああ

という訳で、見事に対象外でもらうことができませんでした。。。
これは、ちょっとせつなすぎる。。。

いつものことといえばいつものことですが、本当に間が悪い。。。

どうにかならないものか。
どこかにお祓いに行ったほうが良いのかもしれません

トラブルの金曜日

今日は三男の誕生日ということで、会社に出社はしたものの早々に退散しようとしていたのですが。。。
予定していた作業が想定したとおりにいかずにトラブルへ発展。

実害が生じるようなトラブルではないものの、色々と対応をする必要が生じる自体になってしまいました。

まぁ、それはそれとして、金曜日って何かとトラブルが発生しやすいように感じます。

なんでなんだろうかな?というと、わかりやすいところでは、面倒なことが後回しになった結果、比較的トラブルになりやすいような難易度の高いものが週の後半に集中するため、打率が高いというところでしょうか。。。

でも、それだけでは説明できないような問題も起きるのが不思議なところ。

決戦は金曜日とはよく言ったものですね。。。

私はさらに先延ばしをしてしまい土日にコソコソ仕事していることもあるので、更に酷い。
いや、良くないのはわかっているんです。

2023年はそんな先延ばしと決別できるようにしていかないといけませんね。

反省

SoftwareDesigne 2月号

定期購読しているSoftware Designe の2月号が届きました!
今月号はDDD!!!!

見てみると、増田さんが執筆されているじゃありませんか。

ずいぶんと前ですが、DevLove で増田さんが登壇されていた回に見に行ったんですよね。
確か恵比寿だったかな・・・?

もちろん、原点ともいうべきエヴァンス本も持ってはいるのですが、いずれのDDD本も結局最後まで読めていないという体たらくな現状が今の私を作り上げている!!

と、非常に残念な状態ではあるんですが、ちょうどこれから新しい案件で、このあたりの整理をしていかないと行けないんじゃないかな?と思うような事案が勃発。

Software Designe編集部はすべてを見越しているはず!!という訳で、今年はDDDをしっかりと学んで実践で使っていくことができるように頑張ってみたいと思います。

増田さんの本、ちゃんと読まないとですね。。。

Fletが面白そう

Pythonだけでクロスプラットフォームなアプリを作れるFletについて
https://qiita.com/NasuPanda/items/48849d7f925784d6b6a0

Qiitaからのニュースレターで紹介されていた上記記事、面白かった。

FletはFlutterをベースとしているそうなので、その点も気になるところです。

The fastest way to build Flutter apps in Python
https://flet.dev/

UIの作り方や指定の仕方が今っぽくない形をしているけど、これがサクッとプロトタイプ的に使えるのであれば面白いかな。

ということで、ちょっとどこかで触ってみたいと思っています。

Build an Ethereum dApp Section 1 clear

buildspaceを引き続きやっています。
夜の時間をちょこちょことなので、進みが遅いですね。。。

hardhatを使った、ローカルでのスマートコントラクトの作成を追えて、フロントエンド開発としてReactを触り始めています。

Section2では、Replit というWeb IDEサービスを使って、フロントエンド開発を行っていくようです

Replit
https://replit.com/

最近、こういうブラウザベースのIDE。そしてそのままDeployまでできてしまうツールが増えてきていますよね。
なんかメニューを見ていたらこんなものも。。。

Ghostwriter・・・?
AIとのペアプロ??

Meet Ghostwriter, your partner in code.
https://replit.com/site/ghostwriter

なんか面白そうですね。。。

色々なプロジェクトのチュートリアルをやっていると、その時の最新手法やツールなどを触ることができて面白いです。
実際の業務でこれらが使えるか?と言うと、なかなか悩ましいものがありますが、ちょっとしたお試しでやる分には十分そう。

問題はそのちょっとしたお試しと、それ以降の切り分けなのかな?
でも、それ以降に発展するところまで行ってから考えろって感じですね

日々をどう楽しく過ごすのか

今日は曇り時々雨という感じでずっとどんよりとした空模様でした。
そんな空模様も影響したのか、朝はそれほどでもなかったのですが、午後になって一気に仕事のモチベーションがダウンしてしまいました

もともと気分屋なところがあって、気分の浮き沈みは結構ある方なんですが、今日の沈み具合はちょっとひどかったなぁと、夜遅くになって反省。

反省と言うか、今この時点でも別に復帰しているわけではないのでどうしたものか、と思うところです。

このあたり、いい方向に向かえばもちろん大きな力になるのですが、マイナスの方向に触れた時に動けなくなってしまうのは非常に良くないなぁ、と、もういい歳なので思うわけですよ。

いつものパターンで考えるのであれば、ここの復活の鍵をにぎるのはB’zですね。

buildspace で早速躓いていた

色々と考えた結果、もう少しちゃんとdAppsを勉強していこうとbuildspaceの「Build an Ethereum dApp」をやり始めています

buildspace
https://buildspace.so/p/build-solidity-web3-app

そしてやり始めた矢先、一番最初のhardhat test が何故かエラーになる始末。。。

c:\Dev\buildspace\ethreum-dapp\my-wave-portal>npx hardhat test
npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
Compiled 1 Solidity file successfully


  Lock
    Deployment
      1) Should set the right unlockTime
      √ Should set the right owner
      2) Should receive and store the funds to lock
      3) Should fail if the unlockTime is not in the future
    Withdrawals
      Validations
        4) Should revert with the right error if called too soon
        5) Should revert with the right error if called from another account
        6) Shouldn't fail if the unlockTime has arrived and the owner calls it
      Events
        7) Should emit an event on withdrawals
      Transfers
        8) Should transfer the funds to the owner


  1 passing (2s)
  8 failing

  1) Lock
       Deployment
         Should set the right unlockTime:
     AssertionError: expected BigNumber { value: "1705326131" } to equal 1705326131
      at Context.<anonymous> (C:\Dev\buildspace\ethreum-dapp\my-wave-portal\test\Lock.js:32:42)
      at processTicksAndRejections (node:internal/process/task_queues:96:5)
      at runNextTicks (node:internal/process/task_queues:65:3)
      at listOnTimeout (node:internal/timers:528:9)
      at processTimers (node:internal/timers:502:7)

  2) Lock
       Deployment
         Should receive and store the funds to lock:
     AssertionError: expected BigNumber { value: "1000000000" } to equal 1000000000
      at Context.<anonymous> (C:\Dev\buildspace\ethreum-dapp\my-wave-portal\test\Lock.js:46:65)
      at processTicksAndRejections (node:internal/process/task_queues:96:5)
      at runNextTicks (node:internal/process/task_queues:65:3)
      at listOnTimeout (node:internal/timers:528:9)
      at processTimers (node:internal/timers:502:7)

  3) Lock
       Deployment
         Should fail if the unlockTime is not in the future:
     Error: Invalid Chai property: revertedWith
      at Object.proxyGetter [as get] (C:\Dev\buildspace\ethreum-dapp\my-wave-portal\node_modules\chai\lib\chai\utils\proxify.js:78:17)
      at Context.<anonymous> (C:\Dev\buildspace\ethreum-dapp\my-wave-portal\test\Lock.js:55:64)
      at processTicksAndRejections (node:internal/process/task_queues:96:5)

  4) Lock
       Withdrawals
         Validations
           Should revert with the right error if called too soon:
     Error: Invalid Chai property: revertedWith
      at Object.proxyGetter [as get] (C:\Dev\buildspace\ethreum-dapp\my-wave-portal\node_modules\chai\lib\chai\utils\proxify.js:78:17)
      at Context.<anonymous> (C:\Dev\buildspace\ethreum-dapp\my-wave-portal\test\Lock.js:66:44)
      at processTicksAndRejections (node:internal/process/task_queues:96:5)

  5) Lock
       Withdrawals
         Validations
           Should revert with the right error if called from another account:
     Error: Invalid Chai property: revertedWith
      at Object.proxyGetter [as get] (C:\Dev\buildspace\ethreum-dapp\my-wave-portal\node_modules\chai\lib\chai\utils\proxify.js:78:17)
      at Context.<anonymous> (C:\Dev\buildspace\ethreum-dapp\my-wave-portal\test\Lock.js:80:66)
      at processTicksAndRejections (node:internal/process/task_queues:96:5)

  6) Lock
       Withdrawals
         Validations
           Shouldn't fail if the unlockTime has arrived and the owner calls it:
     Error: Invalid Chai property: reverted
      at Object.proxyGetter [as get] (C:\Dev\buildspace\ethreum-dapp\my-wave-portal\node_modules\chai\lib\chai\utils\proxify.js:78:17)
      at Context.<anonymous> (C:\Dev\buildspace\ethreum-dapp\my-wave-portal\test\Lock.js:93:48)
      at processTicksAndRejections (node:internal/process/task_queues:96:5)

  7) Lock
       Withdrawals
         Events
           Should emit an event on withdrawals:
     Error: Invalid Chai property: emit. Did you mean "exist"?
      at Object.proxyGetter [as get] (C:\Dev\buildspace\ethreum-dapp\my-wave-portal\node_modules\chai\lib\chai\utils\proxify.js:75:17)
      at Context.<anonymous> (C:\Dev\buildspace\ethreum-dapp\my-wave-portal\test\Lock.js:106:14)
      at processTicksAndRejections (node:internal/process/task_queues:96:5)

  8) Lock
       Withdrawals
         Transfers
           Should transfer the funds to the owner:
     Error: Invalid Chai property: changeEtherBalances
      at Object.proxyGetter [as get] (C:\Dev\buildspace\ethreum-dapp\my-wave-portal\node_modules\chai\lib\chai\utils\proxify.js:78:17)
      at Context.<anonymous> (C:\Dev\buildspace\ethreum-dapp\my-wave-portal\test\Lock.js:119:41)
      at processTicksAndRejections (node:internal/process/task_queues:96:5)

いや、まだロクに何もしていないのでこんなところでエラーが出るはずもないと思っているんだけど。。。という領域。

なんか、最近こういう、チュートリアルがそのまま動かずにやる気なくすというパターンが続くような気がする。
ただ、Discord見ているとできている人もいるので、なんだろう?
環境要因??

Powershellで試してみた

うーん、なんでだろう??と思って、ダメ元でPowershellでやってみたら。。。

PS C:\dev\buildspace\ethreum-dapp\my-wave-portal> npx hardhat test
npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.


  Lock
    Deployment
      √ Should set the right unlockTime (1301ms)
      √ Should set the right owner
      √ Should receive and store the funds to lock
      √ Should fail if the unlockTime is not in the future
    Withdrawals
      Validations
        √ Should revert with the right error if called too soon (66ms)
        √ Should revert with the right error if called from another account
        √ Shouldn't fail if the unlockTime has arrived and the owner calls it
      Events
        √ Should emit an event on withdrawals
      Transfers
        √ Should transfer the funds to the owner


  9 passing (2s)

いや、おかしいだろ。

なんで コマンドプロンプトとPowershellで結果が違うんだよ。。。

かなりこれで時間つぶしてしまったぞ。。。畜生

braveブラウザを使い始めて2ヶ月がたった

11月の前半に、保管用Walletを作るタイミングでbraveブラウザを使い始めてみました。
2ヶ月ほど経ったので、これまでの所感を残したいと思います

広告のブロック

braveの一番の利点としては広告のブロック機能が充実しているというところです。

突然出てきたり、画面領域の多くを占めている広告などを表示させないので、その分スピードが早かったり画面を有効活用することができます。

ただ、広告のようなものって出てくると”邪魔だな”と思う一方で、出て来ないと”快適だな”と思うよりは何も感じないんですよね。
煩わしいものが出てこないことに、そもそも気が付かない。

良い機能なはずなのに、ちょっと不遇な気がします

表示がおかしい時がある

アドブロックと関係しているかはわかりませんが、Chromeでは正しく表示されるのにbraveでは表示されないという場面に時々出くわします。

一番多いのは、Amazonサイトです。

タイムセールなどで検索結果が表示されているところをスクロールしていくと。。。

途中から箱が出てくるだけで中身が表示されません。
DevToolsで確認してみると、やはりClient側でBlockされているっぽい

初売りセールなどのタイムセールでスクロールをしながら商品を物色するような際には、Chromeを使うようにしています。
まぁ、braveで動作確認とかしていないだろうし・・・

それ以降、ちょっとサイトの動きがおかしいかな?と思うような際にはChromeを使うようにしています。

Chromeとの併用時の問題

そんなこんなで、Chromeとbraveを行ったり来たりしています。

行ったり来たりしていると問題になるのが、パスワードマネージャやブックマークが同期されない点です。
特に、スマホでは引き続きChromeを使っているので、このあたりは早いところ解決策を見出したいところ。

今のところは、どちらかでパスワード設定をした際には、同じサイトに同じパスワードでログインして覚えさせるようにしています。
同じChronium同士なんだからこのあたりはなんとかならないかな?と思わなくもないですが、そのあたりはしょうがないでしょう。

ブックマークに関しては、メインで使っているのはbraveなので、基本的にbraveを見ればOK。
そもそも、最近はそれほどブックマーク機能を使っていないという話もあり。。。
検索が便利すぎるんですよね

仮想通貨BATがたまる

braveはWeb表示される広告をブロックする代わりと言ってはなんですが、brave独自の広告を表示し、その広告に対しての対価を仮想通貨BATとしてユーザーに配布してくれます。

仮想通貨取引所であるbitFlyerに口座開設を行って連携することで、自動的にbitfFlyerにBATが溜まっていく形ですね。

表示される広告が減って、更に仮想通貨までもらえてしまう!というところで魅力を感じている人も多いのではないでしょうか。
これに関しては利用頻度によるものだと考えているので、平均するとどれくらいなのか?はわかりませんが、現在振り込まれているBATはこれくらいです

1/14現在のBATが日本円換算で28.36ということなので、大体396円くらい。

一ヶ月で200円前後というところでしょうか。
単純計算で1年で2400円。
まぁ、何も無いよりは良いですかね

実際問題、このBATを換金しようとすると手数料もかかる事を考慮すると。。。うーん。
もっとブラウザをヘビーに使っていれば多少は上がるんでしょうけれど、結局Chromeも併用している現状を考えると、大きい理由にはならないかな。

とは言え、それほど大きな問題もなく使えているので、しばらくはbraveをメインブラウザとして使っていって見ようと思います。
BATも今の価格では魅力が薄いですが、今後、どんな値動きするかわかりませんしね!

GarminとAppleWatch

私はiPhoneユーザでAppleWatchも持っているので、基本的にランニング時もAppleWatchにて計測等は行っています。
ちなみに使っているアプリとしてはNikeのNRCというやつですね。

昔の同僚が結構マラソンにハマっていて、Facebookでその様子を共有してくれているのですが、彼がGarminを使っているんですよ

あまり把握していなかったのですが、Garminはこういったスポーツに特化していて、様々な計測がAppleWatchよりも正確であったり種類が多かったりするそうです。

このあたりはハード的な要素なので、AppleWatchのように特にエクササイズに特化しているわけではないスマートウォッチでは難しいところ。

ただ、それよりも羨ましいのは、トレーニングメニューがしっかりとしていて色々と提案してくれるところなんですよね。

このあたりは、ハード的な話ではなくてソフト的な話だと思うので、別にAppleWatchであってもデキルんじゃないだろうか?と思うんですよ。

もちろんNRCでもメニューが無いわけではないですが、今の自分にあったカスタマイズされた提案が出てくるわけじゃないんですよね。

このあたり、良いアプリがあれば試してみたいので、あれこれインストールしてみようと思います。

有料のサブスクリプションサービスもきっとあるんだろうけどなぁ。
もうちょっと、自分なりにやってみて限界を迎えそうであれば試してみる形なのかもしれません

なにかいいのがあればどなたか教えてください