開発環境

「開発環境」に関する記事一覧

git worktree で始める並行開発。ブランチ切り替えの手間を減らす基本操作と運用の工夫

git worktree で始める並行開発。ブランチ切り替えの手間を減らす基本操作と運用の工夫

機能開発に集中している最中、Slackで「至急この不具合の再現確認をお願いできますか?」「別ブランチのPRを出したので手元で動作を見てほしい」と声をかけられる。Web開発の現場では、避けて通れない日…

生成AI時代の「信用の再設計」:コンテンツの「生い立ち」を記録する C2PA の仕組みと現実的な限界

生成AI時代の「信用の再設計」:コンテンツの「生い立ち」を記録する C2PA の仕組みと現実的な限界

Web上に流れる情報の質感が、ここ数年で根本から変わりつつあります。 かつては「検索上位の記事をいくつか読み比べれば、おおよその輪郭が掴める」という緩やかな信頼が成り立っていました。しかし現在では、…

ライブラリ更新PRの確認に追われない。DependabotとGitHub Actionsで築く「安全な自動マージ」の現実解

ライブラリ更新PRの確認に追われない。DependabotとGitHub Actionsで築く「安全な自動マージ」の現実解

週明けの月曜朝、GitHubのリポジトリを開いた瞬間にずらりと並ぶ「Bump xxx from 1.2.3 to 1.2.4」というプルリクエスト群。 ライブラリの依存関係を常に最新へ保ち、セキュリ…

Docker開発でのディスク肥大化を防ぐ。安全なクリーンアップ手順と運用の工夫

Docker開発でのディスク肥大化を防ぐ。安全なクリーンアップ手順と運用の工夫

複数のプロジェクトを並行して動かしていたり、日常的にコンテナのビルドや検証を繰り返していると、ある日突然OSから「ストレージの空き容量が少なくなっています」と警告されてぎょっとすることがあります。 …

MacとWindowsでターミナル設定を完全統一。WezTermで構築するクロスプラットフォーム環境の実践レシピ

MacとWindowsでターミナル設定を完全統一。WezTermで構築するクロスプラットフォーム環境の実践レシピ

会社支給のMacBook Proで日中の業務をこなし、自宅ではWindowsノートPCを開いて個人開発や検証を行う。 そんな日常を送っていると、地味ながら確実に思考の足を引っ張るのが「ターミナル環境…

「あのリポジトリどこだっけ?」を完全卒業。VS Code使いがあえて「ghq×fzf」を手放せない理由

「あのリポジトリどこだっけ?」を完全卒業。VS Code使いがあえて「ghq×fzf」を手放せない理由

日々のWeb開発において、VS Codeはもはや多くのエンジニアにとって標準といえる開発環境です。私自身、日常のコードリーディングや実装作業の大半をVS Code上で過ごしています。 ここで、ひとつ…

タイポ修正でコミット履歴を汚さない!Gitの「fixup」と「autosquash」でスマートに履歴を整える実践技

タイポ修正でコミット履歴を汚さない!Gitの「fixup」と「autosquash」でスマートに履歴を整える実践技

「プルリクを出したら、コミット履歴が『WIP』『タイポ修正』『修正その2』で埋め尽くされている……」 20代の頃、機能開発に夢中になるあまり細かな修正コミットを乱立させてしまい、先輩エンジニアから「…

print文デバッグにさようなら。PythonのloggingとRichで「開発も見やすく本番も強い」ログ基盤を作る

print文デバッグにさようなら。PythonのloggingとRichで「開発も見やすく本番も強い」ログ基盤を作る

昔、深夜の障害対応で本番環境のログを血眼になって追っていたとき、画面に流れてきたのが print("hoge") や print("=== 111 ===") という、過去の自分が書き残して消し忘れ…

「Macでは動くのに」を完全撲滅。VS Code Dev Containersで手元PCを汚さず開発環境を揃える実践ガイド

「Macでは動くのに」を完全撲滅。VS Code Dev Containersで手元PCを汚さず開発環境を揃える実践ガイド

新しいプロジェクトに参画した初日、「社内Wikiのセットアップ手順書を読んで環境を作っておいてね」と言われたものの、1行目の npm install や bundle install からエラーの洗…

VS Codeの「マルチカーソル」と「正規表現置換」で単純編集作業を効率化する実践技術

VS Codeの「マルチカーソル」と「正規表現置換」で単純編集作業を効率化する実践技術

「100行以上ある配列のフォーマットを、手作業で1行ずつ書き換えている……」 コードを書く作業の中で、単調な「テキストの整形や置換」ほどモチベーションと時間を奪うものはありません。CSVデータからJS…

PostgreSQLのダンプから暗号化・S3自動転送までをこなすShellバックアップスクリプトの設計

PostgreSQLのダンプから暗号化・S3自動転送までをこなすShellバックアップスクリプトの設計

「開発サーバーのハードディスクがクラッシュし、直近1週間分のデータが吹き飛んだ……」 インフラやデータベースを運用するエンジニアにとって、バックアップの未設定や失敗はもっとも恐ろしい災厄の一つです。「…

Huskyとlint-stagedでコミット前のフォーマット崩れと構文エラーを防ぐ環境構築

Huskyとlint-stagedでコミット前のフォーマット崩れと構文エラーを防ぐ環境構築

「PR(プルリクエスト)の変更差分を開いたら、半分がインデントや改行の修正だけだった……」 チーム開発において、コードの記述スタイルやフォーマットの表記揺れはレビューの集中力を削ぎ、本来議論すべきロジ…

PythonとPlaywrightで作る、SPA・動的サイトに対応するモダンWebスクレイピング実践ガイド

PythonとPlaywrightで作る、SPA・動的サイトに対応するモダンWebスクレイピング実践ガイド

「スクレイピングで取得したHTMLデータが、JavaScriptの描画前で空っぽだった……」 Webエンジニアとして自動データ収集を行っていると、近年のWebサイト(ReactやVueなどのSPA)で…

MakefileでDockerとローカル開発コマンドを効率化・共通化する実践Tips

MakefileでDockerとローカル開発コマンドを効率化・共通化する実践Tips

「またコマンド履歴から docker compose exec web python manage.py migrate を探している……」 ターミナルを開くたびに、過去の長いコマンド履歴を Ctrl…

GitHub Actionsでライブラリの脆弱性を毎朝自動検知しSlackへ通知する設計術

GitHub Actionsでライブラリの脆弱性を毎朝自動検知しSlackへ通知する設計術

「またパッケージの脆弱性報告が見過ごされていた……」 Webエンジニアとして複数のプロジェクトを抱えていると、依存ライブラリのセキュリティアップデート作業は後回しになりがちです。ある日突然、深刻な脆弱…