こんにちは、代表の片ケ瀬です。
今回のテーマは、誰もが1つは抱えている“爆弾ファイル”について。
今回のテーマは、誰もが1つは抱えている“爆弾ファイル”について。
😱 覚えのある「俺だけスクリプト」チェックリスト
/opt/scripts/backup.sh
(500行)- ファイル名が
doall.sh
またはfinal_v2_2021_bkup.sh
- 先頭に
# このスクリプトは触るな
とだけ書いてある - コメントに「よくわからんけど動く」とある
- 書いた本人がすでに異動 or 忘れている
それはもう“資産”ではない。
未来の自分への地雷です。
🧨 なぜ“俺だけがわかる”スクリプトは生まれるのか?
- 緊急対応 → 「あとで直す」→ 永遠に直されない
- 天才型エンジニア → コメント不要と判断 → 属人化
- 人に任せて壊された過去 → 「もう俺がやる」
💀 実録:現場で見た“俺スクリプト”の闇
- cronで
/tmp/daily_check.sh
実行 → tmpwatchで消えて沈黙 monitor.pl
にbase64文字列 → decodeするとSlack Webhook(失効済)- バックアップスクリプトにS3キー直書き → git管理されて世界へ公開
🔧 じゃあ、どうすればよかったのか?
✅ Gitで管理しよう
- 誰が何を変えたかが明確に
- READMEに使い方と実行例を書く
✅ ファイル名は意図が伝わるように
daily_log_cleaner.sh
← 良いtest3_fatal.sh
← 悪い
✅ コメントは“未来の自分宛てのラブレター”
# FIXME: ここは旧システムA対応。制度変更で見直し予定(2024年)
✅ 設定とロジックは分離する
config.ini
に設定値main.py
で読み込む
🛠 “俺ツール”の資産化チェックリスト
項目 | OK? |
---|---|
Gitに登録されているか? | ✅ / ❌ |
READMEがあるか? | ✅ / ❌ |
ログが残るか? | ✅ / ❌ |
他の人が実行できるか? | ✅ / ❌ |
設定値が外出しされているか? | ✅ / ❌ |
作者不在でも動かせるか? | ✅ / ❌ |
🧘 属人化からチームの資産へ
ある先輩がこう言いました:
「コードは資産。でも“俺だけ資産”は負債。」
属人化されたスクリプトも、ちゃんと整理すればチームの武器になる。
それが、インフラおじさんの伝家の宝刀“継承”です。
📌 まとめ:俺ツールの呪いを、愛で解きほぐせ
闇の俺ツール | サバイバル術 |
---|---|
コメントなし | README + コメントで継承力UP |
ローカルで管理 | Git化+共有 |
設定ハードコード | 設定ファイル分離 |
呪文ファイル名 | 意図の伝わる命名 |
🔮 次回予告:「止まらない設計は美しい」
次回は、システムが落ちたときに問われる「設計思想」。
- 冗長化してるのに落ちるのはなぜ?
- 止まらない設計とは「人が動ける設計」
- 手順・通知・訓練…運用こそインフラの本質
技術だけじゃない、“現場の強さ”を語ります。
👋 最後にひとこと
「俺しかわからない」は、誇りではなく課題。
伝えよう。書こう。渡そう。未来のチームのために。
コメント