emahiro/b.log

Drastically Repeat Yourself !!!!

次世代ターミナル「Warp」を試したらとても便利だった

Overview Warp とは 便利だったポイント そもそも Warp を使い始めた理由 まとめ Overview 最近 Warp というターミナルエミュレーターを使い始めてみて、これがとても便利だったのでその紹介エントリです。 ちなみにこのターミナルエミュレーターを知ったの…

Go で Response Header を差し込む

go

Overview 大した話じゃないですが久しぶりに http を色々ゴニョゴニョするコードを書いていたら忘れていたので備忘録 Response Header を差し込む ※ サンプルは httptest の Server を立ち上げています。 // application/json を Response Header の Content…

GitHub Actions 上で Multi Platform 対応した Image を作る

Overview GitHub 上で Multi Platform 対応のビルドをする Docker build に渡す引数 Docker Hub 側の設定 実際の設定ファイル See Also Overview GitHub Actions 上で Multi Platform に対応した Docker Image を作成して Docker Hub に push するまでの備忘…

gokzen/redis-cluster を使って protected mode "no" で Redis Cluster を起動するまで

※ このエントリはある特定の Docker Iamge を利用して Github Actions で Redis Cluster を起動してアクセスできるようにするものです。他の Image を使っていたりする場合には特に有益な情報はありません。 Overview 背景・前提 はまったところ Redis Clust…

Mac ✕ OBS でゲーム配信をする

Overview 用意したもの 配線図 OBS の設定周り ソースにキャプチャを加える。 まとめ その他 ハマったところ 「映像キャプチャデバイス」のバッファリングを ON にすると音ズレが起きる Mac は音声入力がしづらい。 Overview キャプチャボードを手に入れたの…

Go1.20 から入った errors.Join が実は便利そうだった

go

Overview errors.Join について パフォーマンスについて Practice まとめ Overview Go 1.20 から errors パッケージに導入された errors.Join は複数のエラーを詰め込んでも詰め込んだエラーそれぞれを Unwrap して取り出せる。 fmt.Errorf でも複数のエラー…

git restore を使う

git

Overview 使い方 一つ前に戻す 特定のコミットに戻す 感想 Overview 今日教えてもらったのだが、git の差分で余計な差分(時刻の更新とか)が出てしまったときにわざわざ file changes に表示させてレビューのノイズにしたくないときには git restore コマン…

Chrome Extension に入門する

Overview Chrome Extension のいいところ 基本的な実装の進め方 いくつか触ってみた API chrome.getURL chrome.declarativeNetRequest はまったところ Manifest ファイルは V3 を利用する Manifest では 実装した Extension が発火するページを制御できる Ch…

Keychron を使い始めた

TL;DR Keychron Q2 (茶軸を使い始めた) キーマップのカスタマイズ便利 via Ramap 買った経緯 10年弱くらい HHKB を愛用していましたが、Bluetooth の相性がやっぱり Mac とあっておらず、タイピングにラグがあったりと特に M1 にしてから不安定さが以前よ…

『Google のソフトウェアエンジニアリング 9, 10章』

久しぶりに読書録です。 Overview 『Google のソフトウェアエンジニアリング』を2022年内で通読したので、いくつか気になった章の簡易的なまとめを備忘録として記載します。 ちなみに現職の社内勉強会の一環として輪読会を開いておりその中で読み進めている…

2022 年の振り返り

仕事編 1人のエンジニアに戻った アウトプット 登壇した ブログ継続した 価値観の変化 私生活編 家を買った 車を買った 結婚式をした 新婚旅行をした 筋トレを継続した 英語継続した サッカー観戦した 来年 年の瀬なので今年も振り返りをします。 今年は仕事…

2022 年買ったもの

2022 年買ったもの 家 車 iPhone14 Pro AirPods Pro2 WH-1000X M5 LinkBuds S ダイニングテーブル Dyson Micro SwitchBot Amazon Echo 各種 Anker Eufy ハンディクリーナー FunLogy SOUND3 アイリスプラザ 本棚 ディスプレイラック HUAWEI MateView 28.2イン…

Vue3 で TextArea を入力に応じて可変させる

Overview Sample ハマったところ Overview タイトルのとおりです。 ちゃんとアプリとかにありがちな TextArea の入力量(改行)に応じて、TextArea を拡張させる実装のサンプルを記載します。 結構ありがちな実装だと思いますが、Vue3 のサンプルが少なかった…

Nuxt3 で Custom Navigation を実装する

Overview Usecase Samples Overview Nuxt3 を使って Custom Navigation を実装します。 大まか内容は公式の Pages の https://nuxt.com/docs/guide/directory-structure/pages/#navigation の部分に記載されてる内容です。 Usecase 以下のような Tab の UI …

Nuxt3 で Data Fetching を行う

Overview ハマったところ Data を Refresh するときには関数型で書く Overview Nuxt3 で DataFetching を行う方法について記載します。 大まかには以下のドキュメントに記載されているとおりですが、一部ハマったところがあったので備忘録として追記します。…

wezterm で pane 間の移動をする

Overview wezterm でキーボードショートカットのみで pane 間を移動します。 手順 以下のドキュメントに書いてあるとおりです。 wezfurlong.org 自分は Cntl+[ でどの pane に移動するかの選択画面を開くようにしました。 keys = { { key = '[', mods = 'CTR…

令和の時代にモバゲーアバターに受肉する

Overview TL;DR 手順 Mobage のアカウントを作る スマホでアクセスする アバターを着せ替え 3D 出力を開始する PC からブラウザ でMobage に入って VRM モデルを DL する VRM に対応してるサービスにアップロードする まとめ 余談 Overview sp.mbga.jp モバ…

独自エラーを errors.Is でハンドリングするには Unwrap を実装する必要がある

go

Overview 何度も忘れるので備忘録。 きっとまた忘れて似たようなエントリを書く気もする。 Sample 独自エラーを errors.Is でハンドリングしたいときは以下のように Unwrap を実装する。 type sampleError struct { err error msg string } func (e *sampleE…

firebase.json 内の rewrites.functions に存在しない directory を設定すると 403 になる

Overview 以下のエントリの内容を書くきっかけになった RC のアップデートのタイミングで firebase-functions のバージョンを最新にしたときに、rewrites に存在していた存在しない functions の directory を指定してしまうと 403 Fobidden になりました。 …

nitro: false の時は NITRO_PRESET=firebase はビルド時に指定しなくて良い

Overview タイトルの通りなのですが、いつからか、 Nuxt3 の設定の nuxt.config.js で nitro:false && ssr: false の場合は firebase 向けのビルドをするときに必要だった NITRO_PRESET=firebase が必要なくなっていました。 考えると当たり前で SPA モード…

Nuxt3 の useFetch を勉強する

Overview Refreshing Data Pending SearchParams まとめ Overview Nuxt3 の useFetch API を実際に使ってみたので使った範囲での機能についてまとめます。 useFetch の詳細は以下の Nuxt3 のドキュメントに書いてある通りです。 v3.nuxtjs.org ざっくりいう…

Nuxt3 で nuxtCtx.tryUse is not a function を直す

Overview Nuxt3 の RC8 を使おうとした際に Cannot start nuxt: nuxtCtx.tryUse is not a function というエラーに当たったのでその解消方法についてのメモです。 対処方法 以下の issue に書いてあるがこのエラーの原因は rc6 -> rc7 において互換性がなく…

Nuxt3 × TailWind - Importing directly from a nuxt.config file is not allowed. を直す

Nuxt3 と Tailwind CSS を使っているときに下記のドキュメント通りに Tailwind CSS を設定すると Importing directly from a nuxt.config file is not allowed. というエラーが発生する。 tailwindcss.com これは nuxt の設定ファイルを tailwind を適用する…

Alexa を使ったスマートホーム化の話

Overview 用意したもの 配線図 今使ってるスキル ハマったところ リモコンには型番がある Fire TV と Alexa を接続する やってみて Overview 戸建に住み始めてもう引っ越すことも一生のうちに何度もないだろうっていうくらい住宅の流動性が低くなったので最…

戸建を買った話

Overview なぜ買おうと思ったか なぜ戸建てなのか 選定条件 購入する 戸建購入後の話 住んですぐリフォームが必要 テレビがつかない 引越するなら購入した不動産屋さんに紹介してもらうと良い 賃貸のことには考えられなかった営業がくる まとめ 余談 Overvie…

go.opentelemetry.io で spanID と traceID を取得する

Overview タイトルの通りですが以下の Pull Request にて go.opencensus.io から go.opentelemetry.io に乗り換えたので、乗り換えた際に従来通り span と trace を取れるようにした内容についてまとめます。 github.com そもそも OpenTelemetry とは? new …

wezterm を使い始めてみた

Overview インストール方法 設定 使ってみて Overview iTerm を長年使ってきましたが、ちょっと気分を変えてみようと思って別のターミナルエミュレーターを探してて以下のスクラップを見つけて、Wezterm を使い始めてきました。 zenn.dev 余談ですが、このス…

Nuxt3 で SSG ができるようになっていた

Overview Context SSG やってみた 余談 Functions deploy がこける問題 lint と build が predeploy で強制的にかかってしまう Overview ※ 筆者がたまたま Nuxt3 を弄っていて気づいた話なので最新の動向は GitHub の Discussion を追ってください。 github.…

Nuxt3 で FontAwesome を使う

Overview 導入方法 Install dependencies Setup Plugin How to use まとめ 余談 Nuxt3 の rc がなかなか上がらなかったのは vue-jest 依存のせいだった。 See Also Overview 少し前にポートフォリオサイトを Nuxt2 -> Nuxt3 にアップデートしましたが、この…

squirrel という Go のクエリビルダーが便利

go

Overview 何をしてくれるのか 何をしてくれないのか ハマったこと In が明示的に用意されていない まとめ 余談 カラムを全て取得する 追記 Overview ライブラリの紹介記事です。 squirrel という Go の クエリビルダーが便利だったのでその紹介です。 github…