type holyshared = Engineer<mixed>

技術的なことなど色々

Cloudinayの新プラン移行

Cloudinayのプラン上限に達したので、プランを変更してみました。 プランはClassic free planだったのをFree planにしました。 CloudinayのアカウントはHerokuのアドオンで指定していたプランだったので、Cloudinayのアカウントを新規に作成してのプランを変…

css-loaderのバージョンを上げた

webpackのcss-loaderのバージョンを5.xから6.xに変えました。 それに伴いcss内の画像指定が期待した通り変換されなくなったのでwebpackの設定ファイルを変えることで対応しました。 具体的にはwebpackの設定のrulesにasset/resourceを追加する作業です。 こ…

BigQueryのテーブルに複数のログファイルをロードする

Google Cloud Storageに保存されている複数のファイルをBigQueryのテーブルに読み込もうとして、エラーが発生するので調査してみました。 エラーはテーブルにレコードが挿入できないエラーで、フォーマットが当初おかしいのかと思っていました。 Error while…

Cloud CDNでの署名付きCookie、署名付きURL

Cloud Storageに格納したファイルをCDNで配信する時にアクセスを限定したい場合があります その際に署名付きCookie、署名付きURLが使えます 設定自体はterraformなどで、自動で設定して置けるようにすると楽です resource "google_storage_bucket" "public-i…

SOLOVAIRの新しいカラーのブーツ買った

新しく青系のカラーが3色追加されたみたいなので、一足買ってみました。 SOLOVAIRのアストロノーツブーツを一足持っていて、サイズ感はわかっていたので、特に困ることはなかったです。 SOLOVAIR Neon Blue 8Eye Boot また、自分は履く靴によってソックスを…

SentryのSDK問題

SentryのjavascriptSDKを6.5.1にアップグレードしたら初期化に失敗するようになった。 options._metadata.sdkがないのでエラーになるようだ。 ただ内部的に付与されるぽいプロパティな感じがするので、何か必須のパラメータがあるのかなと思ったけどそれらし…

Oura Ringのバッテリーの問題

Oura Ringを半年くらい使用していたのだけど、突然充電できなくなりました。 大体10分くらいで充電が終わるのだけど全然できなくて困ってました。 多分故障だろうと思って新しく買わないとダメなのかなと思っていたら、購入から2年以内は交換できるぽかった…

画像を投稿した後にレポートを出す

レポート 自作アプリで写真を投稿後に今の集計値を確認したくてページ遷移することがあり不便だったので投稿後に集計を表示するように変えた デプロイしてから、数日使って見ている感じストレスが減ったので実装してよかったです。 この前進捗状況を表示する…

履いた靴の進捗状況を表示するようにした

靴をできるだけ均一に履くようにしていると、どれが今月履いたのかわからなくなるので、ダッシュボードに進捗を表示するように変えてみた。 進捗状況 ダッシュボードには履いてない靴を4件リストに出していたけど、後どのくらい残っているのかはわからなかっ…

loadable-componentsのheroku対応

loadable-componentsを使用していて、Server side renderingをheroku環境で行う場合ビルドされるloadable-stats.jsonのパスが実行環境と違うため、chunkファイルが読み込めないという問題があります。 これはビルド時は​​­/tmp/build_[id]/​のようなテンポラ…

アンクルバンド買ってみた

アンクルバンド 春夏に向けてワイドパンツを買ってみたのだけど、裾が踵の方が長くなるようなデザインでした。 パンツを履くと引き摺りそうになるので、対策としてアンクルバンドを買って見ることにしました。 アンクルバンドは自転車とかに乗るときに裾が邪…

自分で運用しているアプリケーションのログイン後のダッシュボードを改善した

自分で履いた靴の記録するアプリケーションを運用していて、ずっとダッシュボードに写真の投稿ボタンしか置いていませんでした。 理由は特に表示させたい情報がなかったためです。 ログインせずとも公開している情報があるので今までは特に困ってなかったの…

Victoryのアップグレード

Victory 個人で運用しているアプリケーションでグラフライブラリのVictoryを使っていてバージョンが古くなっていたので32.3.x から35.4.xにあげてみました。 大きく仕様に変化はなかったようで、型エラーを直していくだけで対応が完了しました。 VictoryLine…

GitHub ActionsでMongoDBのレプリカセット設定を行う

GitHub ActionsでMongoDBのレプリカセットを使用してテストを実行する方法を調べました。 docker-composeを使ってもよかったのですが、mongodb-github-actionがあったので試しに使用してみました。 パラメータとしては下記の2つのものが指定できるようです。…

2020年の靴の着用回数を集計した

2019年から引き続き履いているもの、買い足したもの、手放したものを集計対象にしています。 2020年は900件を投稿していたようです。 一つの靴について、だいたい年間で20回ぐらいの着用、サンダルのみ使用頻度が高いので、倍ぐらいの着用回数になっています…

Oura Ring買って見た

Oura Ring ずっと気になっていたので買って見ました。 サイズキット付きで購入し、サイズを確認してオンラインでサイズ指定するだけでリングを届けてくれます。 届いたあとは充電して、つけてるだけでメトリクスが取れます。 気にしているのは睡眠のスコアと…

Microsoft Graphでユーザーのアバター画像を取得する

Microsoft Graphにはv1.0とbetaのエンドポイントがあります。 どちらにもユーザーのアバターを取得するAPIがあります。 しかし、v1.0とbetaで取得できる場合とそうでない場合があるようです。 https://docs.microsoft.com/ja-jp/graph/api/profilephoto-get?…

Azure Bot ServiceのBot Framework SDKのkoa対応

最近はBot Framework v4を利用して、Botアプリケーションを作成しています。 Botアプリケーションを作成するには、SDKを利用するのですが、express、restifyくらいしかWebアプリケーションのフレームワークが対応してないような気がします。 koaの場合 例え…

HerokuのmLabからMongoDB Atlasへ

自分が運用している365shoes.styleはHerokuを使用しています。 そして、mLabアドオンを使用していました。 mLabアドオンはアナウンスがあったように利用できなくなります。 なので、何かしらの方法で移行する必要がありました。 移行先は一番移行が楽そうな…

画像の変換にimgixを使う

アップロードした画像を変換するのに最近は、SaaSを使用しています。 普段はcloudinaryを使用していたのですが、imgixを試してみたら導入が簡単でした。 設定そのものは、imgixの設定画面でAWSのS3のバケットを指定して、アクセスキー、シークレットキーを指…

画像の読み込み

クライアントで画像のexifを読み出すのに普段はblueimp-load-imageを使用しています。 画像をアップロードをするフォームの投稿日のデフォルト値を指定したりする時や、写真をトリミングするコンポーネントなどで利用しています。 自分がメンテナンスしてい…

追加で物をサマリーポケットに預けた

あんまり着ていない物とか、使ってない物をまたサマリーポケットに預けてみました。 今回もアパレルのボックスを利用してしました。 物としては下記の物をパッケージングして送りました。 LEVI'SのGジャン LEVI'Sのギャリソンベルト x 3 ナイロン製のアウタ…

サマリーポケット使ってみた

2ヶ月前くらいに、靴の整理にサマリーポケット使ってみました。 箱はアパレルの横長を頼んでみました。 梱包している箱 送った内容は、最終的に次のようになりました。 短靴4足 羽織りようのアウター 1着 パーカー 1着 サイズ間としては短靴が最大で6足位入…

久しぶりにスニーカー買った

ここ数年は革靴(ドレスシューズ / ワークブーツ)ばかり履いていてスニーカーを履いてなかった。 それはそれでいいとして、あまりにも履いていないのでスニーカーの履き心地どん感じか忘れてしまっていた。 なのでスニーカーを買うことにしたわけです。 BERLI…

プリズナージャケットとパンツの経年変化

何回かWAREHOUSEから出ているプリズナージャケット & プリズナーパンツ。 これはJUNKY STYLE別注モデルで、ボーダーの染める回数を増やして黒になるようになっているやつです。 1年ちょっとの着用で、経年変化の記録ために写真を撮っていたのを忘れてた。 …

Mongooseドキュメントのserialize/deserialize

Mongooseを利用している場合、読み込んだドキュメントをserialize/deserializeしたい場合があると思います。 serializeは雑にtoJSON、でいいと思うのですがdeserializeはどうするのか? 一つのやり方として、hydrateメソッドを使用するやり方があります。 con…

netlifyのNodejsのバージョン

netlifyを利用していて、デプロイ時のNodejsのバージョンを指定したいので調べてみました。 ドキュメントでは下記のやり方があるようです。 docs.netlify.com 環境変数のNODE_VERSIONで指定する。 .node-version または .nvmrcをリポジトリのルートに置く。 …

2019年の靴の着用回数を集計した

2018年から引き続き履いているもの、買い足したもの、手放したものを集計対象にしています。 昨年の末くらいから集計できるように年間のレポートを表示できる仕組みをTop | 365shoesに追加していました。 2019年は520件を投稿していたようです。 一つの靴に…

OCamlのパッケージインストール時にファイルをコピーする

OCamlプログラムをduneを使用してビルドしている場合、インストールする時にバイナリファイル以外のファイルも一緒にコピーしたい場合があると思います。 それをopam、duneを使用している時にどのように行うか調べました。 Duneの設定 設定はduneファイルにS…

テスト容易性設計のやつOCamlでやってみた

自分の場合は現在時刻を引数で渡すようにしました。 モジュールやコンテキスを表すデータ型みたいなものを渡してもいいんですが仰々しいので。 t-wada.hatenablog.jp コードはここに置いてあります。 Design-for-testability - OCaml version · GitHub 実装…