ソフトウェアエンジニアとして実際に手を動かす中で詰まった点や学びを残すテック記事です。AI・LLM、Go、Python、Web開発、インフラまで扱います。
99件の記事最終更新: Jun 15, 2026

FactoryBotでコールバックをスキップする方法
RSpecでテストを書いていてIDがずれたり意図しないレコードが作られたりする原因がafter_createコールバックだった。skip_callbackとset_callbackをFactoryBotのbefore/afterフックに書くパターンをまとめる。

Goプロジェクトのバージョンを上げる3ステップ(go.mod・Dockerfile・ローカル環境)
既存GoプロジェクトのGoバージョンを最新に上げる手順を解説。go.modの更新からDockerfileのイメージ変更、ローカル環境の合わせ込みまで3点セットでまとめます。サポートポリシーの考え方も含めて整理しました。

RubyのNumbered parameterについて調べたこと
ある日、レビューしていたRuby on Railsのコードの中で下記のような実装がありまして、所見で何をしているのかわからなかったので調べたことのメモ書きです。

Goのスライスから要素を削除する方法——Go 1.21以降はslices.Deleteが使える
golang でスライスの要素をインデックス指定で削除する方法を解説。Go 1.21 以降は slices.Delete が推奨。旧来の append トリックとの対比コード付き(go slice delete element by index)。

Mac で日本語 grep・DB 検索がヒットしない原因と3言語の直し方(NFC/NFD)
Mac で濁点を含む日本語文字列だけ grep や DB 検索にヒットしない原因は Unicode 正規化形式(NFD)の違いです。症状の確認方法と Python・Ruby・JavaScript での修正コードを解説します。

sedコマンドの使い方入門|置換・削除・行指定の基本操作まとめ
Linuxのsedコマンド(stream editor)の基本的な使い方を解説。文字列置換、行削除、正規表現での操作、ファイル直接編集(-iオプション)まで。実務で使える例付き。
Docker + PostgreSQLにてFAILED: Can't locate revision identified by 'hogehoge'エラーでマイグレーションができない
Alembicを使ってpythonにてDBの開発を行っていたときに、少しだけハマったエラーについて。
psql: error: FATAL: database does not exist の解決方法
psqlコマンドで「FATAL: database "ユーザー名" does not exist」が出るのは、-dオプションを省略するとロール名と同名のDBを探すためです。接続先DBを明示するか、postgres等のデフォルトDBに接続することで解決します。
