AIエージェントは3回に1回失敗する前提で導入する
参考: The 2026 AI Index Report まとめ OSWorldでのAIエージェントの成功率は約12%から66.3%まで伸びた それでも、構造化された評価で約3回に1回は失敗する 導入初期は、結果を確認できて、失敗から戻せる業務に絞る 正答率だけでなく、確認時間、修正時間、復旧の成否まで測る AIエージェントは、質問に答えるだけでなく、画面やファイ...
参考: The 2026 AI Index Report まとめ OSWorldでのAIエージェントの成功率は約12%から66.3%まで伸びた それでも、構造化された評価で約3回に1回は失敗する 導入初期は、結果を確認できて、失敗から戻せる業務に絞る 正答率だけでなく、確認時間、修正時間、復旧の成否まで測る AIエージェントは、質問に答えるだけでなく、画面やファイ...
まとめ 既知の軽微なバグを抱えたままリリースするか、という判断で、PdMとエンジニアは根本的にすれ違う。 エンジニアは「顧客に伝えればすむ」と考えがちだが、それは判断を顧客に丸投げしているだけで、返ってくる答えは「直してから出して」に決まっている。 PdMは基幹ドメインを「確率に関わらず越えてはいけない一線」として見ている。エンジニアはその一線の高さが見えず、発生確率で語って...
まとめ マネージドサービスのエンジンパッチ識別子が arm と intel に割れていたのが発端。これはインスタンスタイプ(node_type)のCPUアーキの写像で、AWSとしては正常挙動だった 本当の問題はパッチではなく、環境間でCPUアーキと世代がずれていたこと。しかも本番だけが数世代前のIntel系に据え置かれていた 揃える方向は「本番をGravitonに前進させる」...
まとめ PR本文が空(テンプレのプレースホルダーのまま)のPRは、レビュアーが判断材料を持てないので「レビュー不能」になる 原因は能力ではなく「受け手視点の欠落」。作者は文脈を全部持っているので、書く必要を感じない(知識の呪い) 変更が大きいほど本文の説明が要るのに、この型の人は規模が変わっても本文を書かない。むしろ悪化する 個人へのフィードバックより「動作確認・チェック...
まとめ 誰かに意見を求めた時点で、その人は「相談された当事者」になる。当事者には判断材料を対称に渡すのが原則 人が本気で怒るのは決定内容そのものより、核心を伏せたまま意見だけ求められる伝え方の非対称に対してだった センシティブな理由は集団の場ではぼかしてよい。ただし当事者には別で1対1の本音を渡す、という二段構えが要る 又聞きで届く前に自分の口から渡す。噂は途中で色が付く...
まとめ AIエージェントは、いま確かめた事実と、キャッシュから読み込んだだけの古い記述を、コンテキスト上で区別しない。どっちも同じ重さの「真」に見えてる。 だから古い情報をそのまま使うのは「確認が面倒」だからじゃない。古いかもしれないという目印がデータに付いてないので、確認する必要自体を感じてない。 「必ず最新を確認する」とドキュメントに書き足す対策は弱い。肝心の場面でその一...
参考: ISP 事業者向けメールシステムに対する不正アクセスの発生について(KDDI 報道発表資料 2026-06-23) まとめ インシデント開示文書は「謝る」「経緯を語る」ためではなく、 読み手の不安を事実で畳み、次の行動を提示する ために書く 確定事実と未確定事項を 語尾で厳密に区別 する。「判明しました」と「可能性があります」を混ぜない 数字には必ず前提を貼り、 ...
まとめ 移行計画のレビューで効くのは、コスト試算の数字の細かさより「致命的になりうる構造リスクが設計に入っているか」 1つのDBを新旧2つのORMで共有する期間が一番あぶない。不変条件がアプリ層にしかないとサイレントなデータ破損になる CSRF・認証・ジョブ基盤の切替は、移行期間中の新旧併存でこそ事故る ROIは並走期間の二重コストと再診断費を入れないと前提が反転する。撤...
PPM は事業を「市場成長率 × 市場シェア」の2軸で4象限に分けるフレームワーク ただの分類で終わらせず、象限を「動かす」道具として使うと戦略になる 事業の一生は 問題児 → 花形 → 金のなる木 → 負け犬 の順。負け犬はスタートではなく終着点 お金の流れは 金のなる木 → 問題児。稼ぎ頭の資金で次世代を育てる 「低成長」は悪い意味ではない。悪いのは成長率ではなくシェアの低さ
CPA は Cost Per Acquisition(顧客獲得単価)の略で、1 件のコンバージョン獲得にかかった広告費を示す指標 「CPA が高いから広告費を厚く張れる」は因果が逆。正しくは「LTV が高いから CPA が高くても回収できる → 結果として広告費を厚く張れる → 競争でさらに CPA が上がる」 高 CPA な顧客層は「採算が合う高 LTV 層 = 取り合いになっているリード」と…
ファイルとして置かれた SSH 秘密鍵は、コピー・同期・マルウェアによる窃取のリスクから逃げられない 「複製不可能」とは、秘密鍵をハードウェアの中で生成して 外部にエクスポートできない 状態にし、外に出るのは公開鍵と署名結果だけにする運用 OpenSSH 8.2+ なら FIDO セキュリティキー(YubiKey 等)を 追加ソフトなし で使える。…
ある記事は「依頼された仕事をやらない人」の本質を「考えるのが嫌」と診断し、処方箋として「考えなくていい仕事に閉じ込めろ」と提案している しかしその処方箋が指す領域は、ちょうど今 AI が一番得意な領域と重なる 「計画が苦手」を 8 要素に分解すると、AI で代替できる部分と人間に残る部分がはっきり分かれる AI に食われるのは「計画が苦手」全員ではなく、着手できない人 + 考える行為自体を避ける…
Claude にファイル探索や有無判定を「自然言語の指示」で任せると、似た名前のファイルを巻き込んで読んでしまう 決定的に判定できる処理は test -f などのシェルコマンドに移譲し、echo で次にやるべき指示文を直接返す SKILL.md の手順は「決定的処理(スクリプト)」と「判断・生成(Claude)」に分けて記述すると迷いが減る
CLAUDE.md はセッション中 毎ターンプロンプト先頭に積まれる ので、細かい規約を全部書くとトークンを毎回払う トークン以上に深刻なのは アテンションが薄まる こと。長くなるほど一行一行の効きが弱くなり、肝心の禁止事項が守られなくなる 長セッションでは CLAUDE.md も コンパクションで要約に巻き込まれて潰れる 。…
AI への技術指示が誤解されるのは「出力例」だけ提示しているケースが多い 出力例に加えて スコープ(実行範囲) ロジック(生成ルール) データソース(入力源) を併記すると一発で伝わる 出力例単独だと AI 側が前提を勝手に補完してしまい、間違った方向に作り込みが走る
ソースコードへの認証情報ハードコードと本番データのテスト流用は「当時は正解だった判断」が組織の成長とともにアップデートされなかった結果 削除済みファイルも git log -p で復元できる。リポジトリをクローンされると歴史ごと盗まれる セキュリティ問題は「人の意識」ではなく「機械的ブロック」で防ぐ設計が必要 GitHub の Push Protection は無料で今日から有効化できる
emoji + テキスト併記、凡例固定 PR は Refs: #親 (Fixes: は sub-issue にのみ) テンプレ原典は meta/ 配下に集約 (.github/ には置かない) 運用ガイドは「判断を残さない」原則で書く
返信・対応の速さは、言葉より強力な信頼構築の手段になる。これは感覚的に知っていても、意識的に実践している人が少ないテーマだ。
カケハシのテックブログ「誰かがやるだろう」をやめた1年間の記録を読んで、取り組みの中身よりその取り組みが成立した前提環境が気になったので整理する。
Homebrew で個別にインストールした pyenv, rbenv, nodenv, goenv, tfenv を anyenv に統合する。シェル設定がスッキリし、brew upgrade による依存関係破壊(expat 問題など)も回避できる。
CloudWatch Logs のログ配信チェックで、nginx の access.log が数日間 0 bytes のままだった。実際にはアクセスがあるのにログが記録されていない状態。
「エンジニアみんなでスカウトメール打ちましょう」をやって、成果ゼロだった経験がある。なぜ失敗したのか、構造的に整理する。
apt update 実行時に以下のようなエラーが出る。
- brew upgrade で Python 3.14 に上がった後、aws コマンドが Symbol not found: _XML_SetAllocTrackerActivationThreshold で死ぬ - brew reinstall --build-from-source python@3.14 でソースビルドすれば直る - 再発防止に brew pin python@3.14
staging と production で同じ VPC CIDR(例: 10.0.0.0/16)を使っていると、普段は問題なくても将来的にハマるポイントがある。
チーム共有 → ルートの CLAUDE.md をコミット 個人カスタマイズ → .claude/CLAUDE.local.md 全プロジェクト共通 → ~/.claude/CLAUDE.md 個人プロジェクトで dotfiles 管理 → ルートの CLAUDE.md を symlink
ElastiCache Redis のパッチ(service update)適用時にどの程度のダウンタイムが発生するのか、公式ドキュメントと実測結果をまとめる。
verify-ai の UI を bdiff に寄せる作業をしていた。テストは414件全パス、実装も完了した。しかしブラウザで確認すると、入力フォームの Source と Target が縦に並んだまま。さじを投げた。
GitHubのプロフィールページ(github.com/ユーザー名)にカスタムREADMEを表示できる機能。 自己紹介、技術スタック、リポジトリの紹介などを自由にMarkdownで書ける。
接続が重い DB(PostgreSQL, MySQL)→ 接続プール 接続が軽い DB(SQLite)→ リクエストごと生成・破棄 Railsがプールをデフォルトにしているのは PostgreSQL/MySQL 前提だから
- Neovim + LazyVim でファイルツリー・タブ・LSP・ファジー検索が最初から揃う - neo-tree をカスタマイズすると、ツリーでカーソル移動するだけでプレビュー表示される VS Code 的な体験が得られる - micro や helix も試したが、プロジェクト単位のコード閲覧には Neovim が一番完成度が高い
- Target Tracking の複数ポリシーは scale-in が AND 動作(全ポリシーが合意した時のみ縮退) - Simple Scaling の複数ポリシーは scale-in が 独立発火(各アラームが個別に scale-in を実行) - CPU と Passenger メトリクスを Simple Scaling で併用した結果、Passenger で scale-out し…
LD_LIBRARY_PATH は本番の恒久設定に使うものではない。ビルド時の RPATH 埋め込みかld.so.conf.d + ldconfig で解決する PKG_CONFIG_PATH はビルド時専用。本番実行 env に存在する時点で、ビルドと実行の分離ができていない /usr/local/lib の解決に LD_LIBRARY_PATH が必要になった時点で、ldconfig 未実行…
「90日間は、何もするな。」というリーダーシップの考え方がある。元ポストでは、ハーバード流マネジメント講座「90日で成果を出すリーダー」を引用しつつ、新しい組織に入った際の最初の90日間で実践すべき4つのことが紹介されている。自分は真逆の「即動く派」だが、過去の経験を振り返ると学ぶことが多かった。
AIツールの回答をそのまま社内依頼に転記して失敗した経験から、「一次情報の裏取り」の重要性を再認識した話。
共有ガイドラインが機能しないのは、内容の問題ではなく責任構造の問題 「全社統一」を先に作ろうとすると合意形成コストで頓挫する まず「島」を作り、合意なしで変えられる範囲を既成事実として積み上げる
パッチ時のフェイルオーバー(数秒の接続断)は Cluster Mode では解決しない アプリ側の reconnect/retry 設定とフォールバック設計で吸収するのが正解 小規模なら Cluster Mode Disabled + Multi-AZ が最もシンプルで十分
MCP(Model Context Protocol)サーバーには「Hosted」と「Self-hosted」の2種類がある。Notion を例に整理する。
zshのシェル関数内で read を使ってユーザー入力を受けると、Backspace/Deleteキーで文字を消した時に表示がバグる。
systemd timer で60秒間隔に CloudWatch カスタムメトリクスを PutMetricData で送信していたところ、CloudWatch コンソールのグラフが断続的に欠落(歯抜け)する現象が発生した。
OSSプロジェクトのライセンスとして ISC が設定されていたが、コントリビュートガイドを整備する際に「一般的なのか?」という疑問が出た。調査の結果 MIT に変更した。
ASG の動的スケーリングには3つのポリシータイプがある。
UPnP (Universal Plug and Play) の仕組み、用途、セキュリティリスクを整理し、ホームネットワークで有効にすべきかを検討する。
Rust製の高速ターミナルファイルマネージャ。VS Codeのサイドバーのようにファイルをブラウズし、プレビューしながら操作できる。
原則: ユーザーが見る・操作するテキストは翻訳する 例外: ブランド名、技術用語、エクスポートの構造ラベル 判断基準: 翻訳することでユーザー体験が改善するか?翻訳コストに見合うか? エクスポート: 画面と共通のラベル(Original/Modified等)は翻訳、構造ラベルは英語のまま
Serena は LSP(Language Server Protocol)ベースのコード解析を提供する MCP サーバー。主な機能は以下の通り:
gRPC の特徴、REST との違い、SaaS での現実的な使い方をまとめる。
静的サイトで CSS/JS に Cache-Control: public, max-age=31536000, immutable を設定していたところ、ファイル内容を更新してもブラウザが古いキャッシュを使い続ける問題が発生した。
React SPA を Cloudflare Pages へ GitHub Actions で自動デプロイする設定方法。
PR をマージする際、PR 内の全コミットを1つのコミットにまとめて main に入れる方式。
nodenv install (node-build) は プリビルドバイナリをダウンロードするだけ なので、ビルド依存パッケージは不要。 一方 pyenv install は 常にソースからコンパイルする ため、build-essential 等が必須。
- docker ps や docker compose up が極端に遅い、またはハングする - Docker Desktopが起動しても応答しない - コンテナの起動がWARN表示で止まる
ADR(Architecture Decision Record)は、プロダクトやシステムに関する重要な設計判断を1つずつ記録する簡潔な文書。通常Markdownで1ページ以内に収める。
Git リポジトリに設定ファイルをコミットしたいが、機密情報(パスワード、SSH キー、API トークンなど)が含まれている場合、git-crypt を使うと透過的に暗号化できる。
env コマンドで表示される環境変数がどのファイルで定義されているか分からないことがある。
git push → CI/CD → サーバー反映。1日に何度も行うこともある。フィーチャーフラグで隠せばユーザーには見えない。
Claude Codeのシェルから git push すると Permission denied (publickey) で失敗する。
ASG(Auto Scaling Group)配下のインスタンスが複数同時に ALB ヘルスチェックに失敗した場合、ASG はそれらを同時にリプレイスするのではなく、段階的に置き換える。この挙動には「10% ルール」と「スロットリング」という2つの仕組みが関係している。
iTerm2はMacをシャットダウンしても、ウィンドウ・タブ・ペインのレイアウトを復元できる機能を持っている。
ターミナルでMarkdownファイルを読みたい場面は多いが、catだと装飾なしで読みにくい。
Google TakeoutからダウンロードしたGoogle Photoバックアップ(約70GB、12,600ファイル)を年/月別に整理し、アルバム情報をメタデータに埋め込んだ完全な手順書。
describe-target-groups — AWS CLI 1.34.15 Command Reference describe-target-health — AWS CLI 1.34.14 Command Reference describe-instances — AWS CLI 1.34.14 Command Reference Get the public ip address…
es01-1 | ERROR: Elasticsearch died while starting up, with exit code 78
人材フローについてのノート
MySQL8.0をDocker composeで実行したい。
ALBのアクセスログの出力先として作成するS3のテンプレートを記す
Amazon SES (Simple Email Service)を経由してメール配信を行うための設定手順をまとめる。Workmailと連携し、メール送受信環境を構築する。
すでに設定しているCloudwatchをTerraformにインポートしたい。その手順を記す。
アプリケーションで下記のエラーが発生して、メールが送信できない。
※ i-instanceid は適宜変更。
ちなみに、https://github.com/lostisland/faraday_middleware/wiki などをChatGPTは推奨していたが、リクエスト値そのものを書き換えるので実現できず。
応用情報技術者試験(レベル3)シラバス より気になった単語を抜き取った
[Ruby]rbenvのinstall listにRubyバージョンが存在しない
changeをdownする際のremove_index、remove_columnは遅延実行されるので、追加したカラムに更新処理を行なっていてもエラーにならない。
[Ruby]mysql2 gemのインストールがエラーになる
MySQL :: MySQL 8.0 リファレンスマニュアル :: 8.2.1.16 ORDER BY の最適化
Why and how to export data from CloudWatch Logs to S3 | TechTarget
conditional statements - MySQL IN condition limit - Stack Overflow
開発生産性は、もはやエンジニアだけの関心事ではなく、開発組織から経営層までが考えるべきテーマになってきている。
レコードを削除しようとしたら外部キーエラーが発生した。 ActiveRecord::InvalidForeignKey (Mysql2::Error: Cannot delete or update a parent row: a foreign key constraint fails 一時的に制約違反を無効にして対応したい。
NPS®とは(ネットプロモータースコア)顧客満足度に変わる新指標 - NPSソリューション - NTTコム オンライン
backlogのボード(カンバン)を利用して朝会を進めている。 毎朝に実施している。
他プロジェクトでも参考になるものかどうかがソースを見ないと分からない プロジェクトを引き継いだけどビルドの仕方が分からない 案件の開発以外の情報がどこに記載されているか分からない そもそもセットアップ方式が分からない
OpenSSL系のエラーが原因で bundle install に失敗しており、解消に時間がかかっている。 原因は別でRuby(バージョン3)をOpenSSL3系を指定してインストールし、色々ごにょっていた時に少し壊れた可能性が高い。
- vscode - テキストエディタ - sequel ace - MySQLデータベース管理ツール - gyazo - 切り抜きスクショ取得 - Docker Desktop - Docker環境構築用 - Image Optim - 画像圧縮ツール - FireFox - ウェブブラウザ - Postman - API開発で使うツール - RubyMine - IDE - Notion -…
Rails 6.1 adds values_at attribute method for Active Record - BigBinary Blog
AWS SESが提供しているSMTPを利用してメールを送信 メールの配信状態を確認
レビュー期間が長い。3次レビューまで行うが、2:2:1の割合で時間がかかる。 (単純に1次に2日かかる計算だと、全てのレビューが完了するまで、5日掛かる。)
Rails7 ActiveStorage レコードに添付済みの画像を複製して別レコードに添付する #Ruby - Qiitaを参考に
How to install Kali Linux apps in Debian に沿ってToolsをダウンロードできないかチャレンジしたが、断念した。
NewRelicで監視しているシステムがダウンした際に、複数人にダウンした旨を架電したい。 架電内容は、どのシステムがダウンしたかメッセージが流れる。 また、システム毎に架電元の番号は違い固定であること。 架電先は、050-xxx。電話番号は国内、国外を問わない。
What is SSH Tunnel, SSH Reverse Tunnel and SSH Port Forwarding?
【Rails】範囲オブジェクト(Range)を使ったActiveRecordのwhere比較、範囲検索のコードの書き方 - Simple minds think alike
ActiveRecord::AttributeMethods::BeforeTypeCast
GitHubが1200台以上のMySQL 5.7を、サービスレベルを維持したままMySQL 8.0にアップグレードした事例。期間は1年以上かけて慎重に実施。
前提 LAN内に存在するサーバとConohaのサーバはSofteatherでブリッジを通して接続が行えている。
Mount an SMB Share in Linux - Linode Docs
前提 本手順では、majorバージョンは考慮してません。 影響が低いと思われる、patch、minorの一括更新をスコープとしてます。
マイクロサービス化は本当に難しい を読んで
参考 conoha vpsで最初にやること
NanoPC-T6 - FriendlyELEC WiKi
VPCの作成 EC2サーバを作成 SoftEtherのインストール サービス設定 SoftEtherの設定 VPNユーザーの追加 * クライアント設定(mac, Windows10)
モデルに書くには用途が限定的すぎるメソッド ビジネスロジックをモデルから分離したい場合 テストしやすい設計を維持したい場合
Module#delegate このメソッドを使うことで癒着を弱めてデメテルの法則に沿えるようになる
Backlogを移行する必要が出てきた。 Issueの概要、コメント、添付ファイルも移行したい。 Issueの数は100と多くない。
外出先からホームネットワークにアクセスするためのクラウド型P2P VPNツール。現時点で最も洗練されたP2P型のVPNツールの一つ。
Protomapsは、1つの静的ファイルとしてクラウドストレージにデプロイできる、無料でカスタマイズ可能な世界地図プロジェクト。
自宅サーバをInternet公開にするためSoftEther VPNをVPS上に設定する(1) - Hexo に沿って作業をします。(大体がWindowsでToolを利用して設定している中でコマンドを細かく残してくれているブログに感謝です)
SANSトレーニングロードマップ https://www.sans.org/mlp/level-up/
オンラインストレージの脆弱性対策について | 情報セキュリティ | IPA 独立行政法人 情報処理推進機構
インシデントハンドリングとは「インシデントの発生から解決までの処理を行う活動」を指し、4つのフェーズに分かれます 1.「検知/連絡受付」 2.「優先順位付け(トリアージ)」 3.「対応(インシデントレスポンス)」 * 4.「報告/情報公開、事件後の対応」
The Complete Guide to Docker Secrets - Earthly Blog
Zabbix serverをdocker-composeで立ち上げる
How to Add User to Sudoers in Ubuntu | Linuxize Allow Or Deny SSH Access To A Particular User Or Group In Linux Linux Delete user password command - nixCraft
Setting PATH variable in /etc/environment vs .profile - Ask Ubuntu
The Ruby Toolbox - Know your options!で類似するGemの一覧が記載されている。
Setting a Static IP in Ubuntu – Linux IP Address Tutorial
ssh-copy-idで公開鍵を渡す - Qiita
JVN#15808274: e-Gov電子申請アプリケーションにおける Custom URL Scheme の処理にアクセス制限不備の脆弱性 保有する機能 デジタル庁が提供する e-Gov電子申請アプリケーションをインストールすると、システムに Custom URL Scheme が登録され、Web ブラウザなどから特定の URL にアクセスすることで当該アプリケーションが起動されるようになりま…
VPNのセキュリティリスクとは?対策や被害事例を解説
並行処理と並列処理の違いをコンテキストから考える - コネヒト開発者ブログ
Export log data to Amazon S3 using the console - Amazon CloudWatch Logs
【Linux】外付けストレージのフォーマット&マウント方法
Tech Blog: How to configure JSON logging in nginx? - Velebit AI Configure NGINX logging and monitoring - Splunk Documentation
エンドポイント攻撃で約10億円の損害? 見直すべきセキュリティ対策5つのポイント |ビジネス+IT
How to Configure Logrotate to Manage Logfiles (Step by Step) を参考に。
ボリュームサイズ: 100 -> 200 対象のインスタンス: r5.large 現行世代のインスタンスか?: No https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/instance-types.html#current-gen-instances より 現行世代のインスタンスか?…
Regist VMware customer community center https://customerconnect.vmware.com/ Get a Personal Use licence VMware Fusion Player – Personal Use License Download ISO You should see VMware Fusion(M1 Mac)にKa…
【サイバー脅威の最新動向調査】犯罪者の情報から手口まで、中国・ロシアの攻撃実態も |ビジネス+IT
Udemyの「Kali Linux Tutorial For Beginners」は、Linux初心者がKali Linuxを使ったエシカルハッキングの基礎を学ぶための入門コース。
コンピュータウイルス・不正アクセスの届出事例[2023 年上半期(1 月~6 月)]
情報セキュリティ 10 大脅威の活用法 を読んで
コードレビューを通過するための CL 作成者のガイド | google-eng-practices-ja
フロー効率性とリソース効率性について(QCDのトレードオフなんて本当は無かったんだ) - @i2key のBlog
「コードレビューたまりがち問題」を解決するには
AWS・GCP・AzureやKubernetesなど、クラウドネイティブ環境5つのセキュリティ強化策 |ビジネス+IT
旭化成はどうやって「次世代WAN」を導入したのか? テレワークがより便利&安全に |ビジネス+IT
AWS Cloud Practitioner Essentials (Japanese) (Na) 日本語実写版 を受けて(パート2)
日本の経済安全保障政策4つの柱とは? サイバー攻撃の最新傾向とセキュリティ戦略 |ビジネス+IT
AWS Cloud Practitioner Essentials (Japanese) (Na) 日本語実写版 を受けて(パート1)
フロントエンドエンジニア必見! 脆弱性の仕組みと対策方法を解説 (1/3) CodeZine(コードジン) で気になった単語等をピックアップ。
自社組織のデータとアナリティクスへの投資が増えたと報告するリーダーの割合が大多数。AIの取り組みの資金を増額も大半を占めている。 基本的なデータ管理や AI とアナリティクスに関連する重要インフラへの投資や支出を目先の判断で渋った組織は、巻き返しに苦労 格言『計画を立てないことは失敗する計画を立てること』 効果的なデータ戦略はデータレイクの構築やクラウドへの移行への高水準のアプローチに勝ると指摘…
Command-Shift-5 でレコード状態にして、OptionsからShow floating thumbnailのチェックを外す
- 信頼性 → イノベーション(開発) の順で行う。 - どうやって信頼性を計測するの? - SLOを利用 - アラート対応は優先度付して行う - 類似の言葉 - SLA - サービスが止まった場合に返金するなどの対応 - SLI - ユーザから計測したメトリクス(レスポンス速度) - エラーバジェット(エラー予算) - SLO以下にならないようにする - SLO、 SLI活用ステップ 1.…
If you want to generate password in Mac machine
Access AWS CloudShall, and then execute commands like belows:
Imitating this article [https://github.com/rmosolgo/graphql-ruby/issues/629#issuecomment-589877682], but in my case, path was said "unknown keyword" and removed from parameters like below:
I found the example to use dynamic partitioning in Kinesis as below: aws_kinesis_firehose_delivery_stream | Resources | hashicorp/aws | Terraform Registry
2022年の格言
svnX https://code.google.com/archive/p/svnx/downloads https://www.rk-k.com/archives/348 versions https://www.versionsapp.com SmartSVN https://www.smartsvn.com SnailSVN * https://apps.apple.com/jp/app…
AWSを中心に検討 AWSにリソースがまとまっているため、メリットが大きくない限り、GCPなどは考えない
Tutorials List - Javatpoint There are various information(Middleware, Cloud resource, Language, etc.) * Comparing similarity of two things(Elasticsearch vs Cloudsearch, SQL vs No-SQL, etc.)
Environments as below: * macOS Monterey
I found a event "DB instance shutdown" in RDS Management Console and why happened?
We used to set transaction name or tags such below: If something bad was happened in error_happened_previously, I can't check right transaction name and tags in order to refer to values which has set…
I tried to connect a server, but that refused and responded message Permission denied. If you updated your MacOS Ventura, you shouldn't be able to connect a server which has less than OpenSSH version…
MySQLのスロークエリを手軽に監視する
I'm not used to using below because of the title.
Create controller such as below: app/controllers/debug_controller.rb
If you had a domain example.com and these belows are comparison chart between records and target domains: | Record name | Type | Value/Route traffic to | Target domains | |---------------------|-----…
Solution > The only way to avoid this issue is to ensure our autoscaling policy will launch at least a few tasks during each scale-up action.
Check your instance's cpu. In this case, this cpu work normal until load average 2.00 which is referred from below:
This pattern works for getting logs that has error status and excluding specific url path.
I used a = &ta for appending to array variable in some function, then I expected that change effected original variable which was pass to the function.…
What is defined as below: If you put a wrong value which no defined in enum attribute, take a error ArgumentError: 'hoge' is not a valid status and wanna custom this error behavior such as error mess…
Certificates validation of AWS didn't finish with terraform. I check status of them on AWS web console, then figure out that they were expired already.
Do not know how to go out packet to host machine from a docker container.
And you should wirte ahead in .profile, and so on.
I was trying to upgrade openwrt version with new img, but my NanoPi was not working.
I defined model like below:
I forgot to be multipled by "time.Second", when I compared the elapsed time with which I specific, such as sndT.Sub(fstT) > time.Duration(10).
SELECT UNIX_TIMESTAMP(time) AS “time”, …
Although I used debug feature in VS Code following this article debugging · golang/vscode-go Wiki, I got the error as below:
I'd like to count up, but not working below: Output:
If you would like to find who are in "hogehoge@ml.hoge.co.jp", then put in like below https://groups.google.com/a/ml.hoge.co.jp/g/hogehoge/members.
You do need to use no specific statement on MySQL 5.7. If you would use MySQL 5.6, you have to use the statement ALGORITHM=INPLACE, LOCK=NONE for no downtime.
You execute below and could login correctly, you would be said Login Succeeded. You have to change profile (or not using) and aws url. (Username is fiexed, though.)
job_idはretry_onで再実行されても変わらない。 (ex. aaa4e656-9afa-4fc9-88c9-909ea8bea17e)
権限問題に当たらなければ、 How to output MySQL query results in CSV format? - Stack Overflow のように指定するが良いかも。
既にマージ済みのはずなのに差分として表示された。
Serverlessでdeployをする際に必要な権限
rspecを使用の際は、Rails.env.stub(:development? => true) で良い rspec2 - mock Rails.env.development? using rspec - Stack Overflow
Gatling Open-Source Load Testing Documentation – For DevOps and CI/CD
config/environments/development.rb の下記をコメントアウトしてサーバを再起動する。
更新前にcode_nameに変更があった場合に検証を行う
lockしたレコードはtransactionがcommitされるまでロックされ続ける。
* attr-encrypted/attr_encrypted: Generates attr_accessors that encrypt and decrypt attributes iv(initialize vector)の実装の必要性に気付き素直にgemを使用することにした。 (ちなみに、桁数が大きくなるほど、暗号化した後の桁数の幅は、自前で実装した方が少ない)
Class: BCrypt::Password — Documentation for codahale/bcrypt-ruby (master)
Validators for Interactors. In our previous blog post, we talked… | by Manoj M J | reflektive-engineering | Medium より
Developer Tutorial - Deploying Vue.js to AWS S3 | Level Up Coding
bash作りで一通りやりたいことしているスクリプト
Bootstrap 4 Navbar Center Links Examples on Codeply より
React Spacing - Bootstrap 4 & Material Design. Examples & tutorial - Material Design for Bootstrap より
working-memo/.gitignore at master · kanagawa41/working-memo
dockerのみでfluentdを動作させる
amazon web services - AWS Athena and date_format - Stack Overflow
※awslogsが4/11/2020 04:50の形式で検索が上手く行かない。
Rails 5, ActiveRecord has_many for nested Serializers not used? · Issue #2011 · rails-api/active_model_serializers より
Share session (cookies) between subdomains in Rails?
Google JSON Style Guide
Parse a .env (dotenv) file directly using BASH
Connect to RDS using an SSH Tunnel - Michalis Antoniou - Medium
A Comprehensive Guide to Rails Service Objects | Toptal
requestは複数のcontrollerを使用した場合に使用する。 controllerは単体の動作の確認をする為に確認する。
SQLアンチパターン - ナイーブツリー
MySQL のNULL ではまったことあれこれ - LukeSilvia’s diary
Creating associations initialized via 'build' no longer works in FactoryBot 5.0 · Issue #1255 · thoughtbot/factory_bot
MobaXterm Xserver with SSH, telnet, RDP, VNC and X11 - Animated demo
Best Practices Design Patterns: Optimizing Amazon S3 Performance - Amazon Simple Storage Service
angularjs - Onsen UI Carousel Swipe list item - Stack Overflow
時間(01)だけだと変換に失敗するので、01:00:00などに置換しておく。
Presto/Athena Examples: Date and Datetime functions
chrome://settings/content/cookies?search=site+se を開く。
golangをdockerでbuildする際に参考にしたサイト
* MySQL Explain Example - Explaining MySQL EXPLAIN using StackOverflow data
config/initializers/active_model_query_debug.rb
GitlabのMRをマージするとissueがクローズされる
metadataのキーをシンボルにすると設定されないので注意。
rails内で下記の処理を行えており、コンソールで同様の処理を実行したところ、NoMethodError: private method open' called` が発生した。
date -v-1d +%F を使用する
Model: gorm.Model{ID: id} で可能。
using reflection in Go to get the name of a struct - Stack Overflow
created_at, updated_atは自動付与されないことに気をつける(DBの設定が自動挿入になっていればOK)
s3 - Amazon Web Services - Go SDK
Creating Random Strings in Go - Calhoun.io
cp — AWS CLI 1.18.46 Command Reference
Help with nested template · Issue #339 · gin-gonic/gin
retry_on 内でエラーが発生した場合は、無限に実行されるので気をつける。
dbにGitlabの名称、ChatworkのIDを設定する
replaceではエンドポイント(アクセスURL)を変えずに、画像のみ変える。
Merge RequestのCommitsタブを押下し、コミット一覧を表示 Chromeの検証モードを表示し、Consoleタブで下記のScriptを実行 * 結果がプロントで表示されるのでコピペする。
command_socksify をインストールして行う
gitlabに接続できない場合に尋ねる前にするべきこと
host.docker.internal のホスト名で参照可能に
構造体(struct)をソートする
日付のゾーンをutcからjstに変換
ProxyCommand nc -v -X 5 -x proxy-ip:1080 %h %p で行えた。
annotateが動かない
config/initializers 配下に下記のファイルを設置する。
Linuxコマンド【 sleep 】指定した時間だけ処理を遅延 - Linux入門 - Webkaru
Shrineで外部の画像のURLからストレージ(S3など)にアップロードしたい
sublimeでrspec、rubocopの結果を色付けされた状態(ANSI color sequence) で閲覧したい。
rspecでよく見た書き方
described_class.perform_later rescue nil
時間を操作してテストを実行したい
インスタンス変数のメソッドをstubにしたい
object_class: OpenStruct をオプションに設定する
golangのlogのフォーマットを設定したい
self.class.send(:define_method, "hoge") で呼び出す
複数をソート(asc、descが混在)の場合は、 sort を使用する。
touch の代わりに > を使用する。
Serializerで特定のfieldだけを出力したい
railsのrouteでidを必要としないルーティングを追加したい
export { subject } に変更
with_optionsでスッキリ
subject { get :setup, params: { provider: :twitter } }
rubyでランダムな文字列を生成したい
ポートを使用しているアプリケーションを特定したい
遷移するパスが正しくなかった。(/api/auth/:provider/setup の様にscopeをネストしていた)
omniauthのTwitterプロバイダーのoptionsを動的に変更する
golangでハローワールド
Middlewareをテストしたい
[user_id=1] が今回付与したタグ
remote_ip は、 ActionDispatch::RemoteIp で判定したIPを優先する。
version: "3" services: minio: image: minio/minio:RELEASE.2020-01-25T02-50-51Z volumes: - minio_volume:/data ports: - "9090:9000" environment: MINIO_ACCESS_KEY: minio_access_key MINIO_SECRET_KEY: mini…
Dockerfileでスマートなコマンド設定
--showduplicates オプションを使用
0.12系のtd-agentをインストールしたい
docker-composeでサイドカー方式を取りたい
aggregate_failures を使用する
dockerで fluentd、 minio を立てて、S3へのログの送信の検証を行う。
dockerのリモートのタグ一覧をコマンドで確認したい
メソッドの取得の仕方
画面右上の... から、 ソースを表示 を選択する
ロガーの基盤の調査
システム環境設定 -> キーボード -> Touch Barをカスタマイズ
修正したファイルのみチェック
enum sale_info: { plan_1: 1, plan_2: 2, plan_3: 3, plan_4: 4, plan_5: 5 } の場合、 Model.sale_infos[:plan_1] で取得
Rubyで処理速度の平均を計測したい
iTerm2で画像を見る
でも実現可能だが、 rubocopで RSpec/AnyInstance が発生してしまう。(instance_doubleの使用を促進している)
context に、 show_exceptions: true オプションを設定する。
break case catch continue debugger default delete do else finally for function if in instanceof new return switch this throw try typeof var void while with
タイプを L2TP/IPSec PSK、IPSec 事前共有鍵も設定する。 あとは、ユーザ名、パスワードを設定。
docker上の ~/.pryrc に記載する。
git log でファイルも表示しグレップする
react-dom を読み込み、 ReactDOM.render で実行する。
babelifyにpresetsを設定する
defaultの設定にサービス毎に必要な箇所のメッセージを上書きする
dockerで開発しているが、ポートを変更している為に発生している模様。nginxなどでヘッダーのトークンを書き換えればいいかなと。 それが面倒な時は下記。
submoduleをcloneする
.profile、.bashrc、.bash_profileの違い
propsの宣言のvalueの謎の?(クエスチョンマーク)の意味
capistranoからの接続ができないと思っていたら、capistranoの接続先をlocalhostにしていた。 key認証の Dockerfile) も見つけたが、上手く接続できない。
チェックの方法をテンプレート化してそれを使用する。 呼び出し元ではどの環境で実行したのかを変更するのみで、メンテナスがし易い。
config.after_initialize 内で行う。
Raven.user_context(id: xxx) でエラーをグルーピングできる。
ssh 192.168.0.1 のような呼び出した際に適用されます。
※PATHに追加しているパスは、インストール時のログを確認してください。
finderで隠しファイルを表示する
rspecでスタブを使用
it_behaves_like will call the test-case as template.
macでmysql2をインストールしようとするといつも通り謎のエラーが頻発する。
グローバルにインストールしたgemの削除
macにrbenvをインストール
addが必要かと思ったが、 yarn add ./hogehoge.tgz だとエラーになる。
シェルスクリプトのbashの箇所にオプションを指定してデバッグなどをし易くする方法
Mac のキーボードショートカット - Apple サポート
JavaScriptでパスワードを使った暗号化(AES-GCM)
Dockerコンテナ内でgulpのファイル監視を動かす
Add user for development
ファイルを一行ずつ処理
deltam/go-lsd-parametrized: Weighted Leveshtein Distance and its extended interfaces written in Go.
新規事業含めて、今後の拡張に対するアジリティの確保は保留でもよい戦略の時有効
Visual Studio Codeを完全にアンインストールする
VS Code上でcommand+shift+Pしてコマンドパレットにshell commandって打つと『Shell Command: Install 'code' command in PATH command.』
Simply output go html template execution to strings (Example)
Crowdtechの勤怠ページで該当スクリプトを実行する。 下記みたいなメッセージが出力される。
システムがダウンしている コア業務へ多大な影響がある 請求処理が正常に行われない 問い合わせが正常に行われない 企業に対して不正なデータが表示されている 個人情報が漏洩している
Incoming Webhook | Slack App ディレクトリ で編集画面を表示する。
※organization_name、repository_name を適宜
sudoコマンドに E オプションを付与して実行する。
imageを circleci/node に変更した。
コピーメカ/キャッチコピー自動作成サイト
cronの設定場所
検証モードで Capture full size screenshot を実行する。
TTYを使用せずにexecを実行
ssh を色を変更するスクリプトに変更する
mysqlで既に登録されている値を置換して再登録
mysqlで正規表現を使用して検索
Browser Cookie Limits
高速な文字検索
TOPみたいに等間隔で表示したい
逆引きUNIXコマンド/grepでタブを検索する方法 - Linuxと過ごす より、 $'\t' を指定してやればよい。
1つの要素に長い文字列を格納するのではなく、要素を分けて程々に長い文字列を格納すればよい。
モデルの値を正規化する独自クラス
【Mac】ファイルを指定サイズで分割/結合する split/cat
macでエポックタイムのフォーマットの仕方
rubyの正規表現
.unpack('H*') を使用する。
文字コードを知りたい
ActiveRecord 5: method_missing': undefined method helper' for MyMailer · Issue #27359 · rails/rails
brew install shellcheck
-f --tail=500 をオプションに付与する
date -s "01/30 13:00 2015"
アプリケーションに配置してある appspec.yml の中身を参照。 下記のような記載があるはず。
1on1の参考書
active_decorator のバージョンを 1.1.0 から 1.3.1 に上げた為。
始めは下記で実装しようとしたが、上記で良さそう(細かなメソッドは使用できないけど) petergoldstein/dalli: High performance memcached client for Ruby
シェルスクリプトでエラーメッセージに色をつける - pyopyopyo - Linuxとかプログラミングの覚え書き -
データベース名 -s databasename 、もしくは、 -all を設定する
CSSで実装したレイアウトの構造や階層を簡単に確認できる、私のお気に入りのCSSハック -My favorite CSS hack | コリス
m4 と m5 の違いはスケールアップではなくバージョンの違いです。 m4 系は Xen ベース、 m5 系は KVM ベースの Nitro と呼ばれる基盤で動いています。 元々、 A サーバは Amazon Linux 2 で構築していますが、 m5.large のインスタンスタイプが選べるので m5.large で構築しています。…
default-mysql-client を指定すればよい
Gitでマージ済みブランチを一括削除 - Qiita
var_export($arr , true) を使用する。
テキストを逆順で読み込みたい
$docker stats [container_id]
kickboxのアカウントを消す依頼をした
rundeckのjobリスト画面を開き、chromeのconsoleで実行する。 XMLのダウンロードを自動的に行なってくれる。
[ ${PIPESTATUS[0]} == 0 ] のように記載する
jQueryからネイティブJavaScriptへ置き換えの第一歩 - Qiita
許可を求めるな謝罪せよ。(Don't ask for permission, beg for forgiveness ) - 未来のいつか/hyoshiokの日記
Ruby 2.7.0-preview1 Released のようなページを確認する。
lessのショートカットキー
旧字体を登録する際にエラーが発生する
minitestでprivateメソッドをテスト
docker-composeでmysqlの起動を待機したい
パイプラインで実行された任意のコマンドの実行結果を取得
Shell/Bash script for sending slack messages. を使用する。
(?[a-z1-9]+) のように宣言し、 $encryptedId の変数で値を使用できる。
pugを使用する際に参考にしたサイト
node.js - Cannot find module '../lib/completion' Inspite of installing Completion - Stack Overflow 他のプロジェクトからnode_moduleごと移行したら発生した
本日の範囲を取得したい
docker-compose.ymlのcommandに記述ミスがあるとエラーになる
どのホストからのアクセスも許容する権限(grant)の付与
There was an issue while running this container and it was rerun. The most recent run is shown. の注釈が表示される。
instance_variable_get メソッドを使用する。
/sbin/ip route|awk '/default/ { print $3 }' を実行し、取得したIPを database.ymlの host に記載する。 > How to get the IP address of the docker host from inside a docker container - Stack Overflow
> > 使用例: @car.build_engine(name: "エンジン1")
rewriteに last を設定する。
rails向けのnginxコンフの一例
Set the Domain or Host in Rails URL Helpers - Today I Learned
Railsのログについて(Rails.logger) | 酒と涙とRubyとRailsと
Bash: Random numbers for fun and profit
【SSIS】日本語の小文字を大文字に変換する - Tumbling Dice の配列を利用する
:allow_blank => true を設定
ActiveModel::Validations::Callbacks をincludeする
osのバージョンを確認
cutの用途集
sed -e 's/[0-9]\{1,\}/xxx/g'
awk '{for (i = 1; i AWKのこういう時はどう書く? - Qiita
ActionMailer::Base を継承したクラスのメソッドをコール時に、メソッド内で mail が呼び出されていない場合は、 ActionMailer::Base::NullMail が返却される。(通常は Mail::Message) ちなみに、 deliver_now などのメソッドを実行しても、エラーとならずに nil が返却されるだけなので気づきにくい
記号を英語で書くと
railsタスクの実行コマンドを変数に入れて実行したいが、予期しないエラーが発生する。
先頭のカタカナ一文字から銀行の支店名の検索するシステムで、濁点(バ)、半濁点(パ)の考慮されていなかった。 「ハ」で検索した際に、「バ」、「パ」で始まる支店名も検索したい。
viの基本操作
特定のポートで接続が行われていない際に実行する
FTPまわりのログ確認
printf "%0Xd\n" を使用する
ワンライナーでパスワードを生成
self.class.method_name で呼び出す
日付計算
activerecord-importで一括してupsert
checkout しても resetしても、cleanな状態にならない
hoge_path とヘルパーを使用したいが、アクションの部分がわからない
Shellscriptでためになる記法
yum lockfile is held by another process でfailedする。
ボリュームの種類。他に、 gp2 io1 st1 sc1 > Amazon EBS ボリュームの種類 - Amazon Elastic Compute Cloud
feature/AAA というブランチでコミットしていたが、コミットした後に、 feature/BBB に変更した為、 feature/BBB のブランチでPRが作成されているにも関わらず、 Checkout code で feature/AAA が指定される。
has_manyな関係でも条件を設定できる
許可に calendar.google.com を追加
Activerecordの条件にis not nullを設定
aws-s3のプラグインでエラーが発生している。 less /var/log/td-agent/td-agent.log
JSONの解析に役立つツール
別PCで、グローバルにいつもと違うユーザを使用しており、 プライベートのリポジトリにpushしようとしたらエラーが発生する。
hover時にのみ文字が表示される ※文字の位置がずれているのは無視して下さい
config/breadcrumbs.rb の編集が即時反映されない。
stub_any_instanceのproc内でNoMethodError: undefined method `assert'
* 差分を埋める程度で大したことをしていない、無意味な継承をなくせる
Let's Encryptのインストールからnginxの設定まで
export LANG="C.UTF-8"; rails c する
ActiveRecordの結果を配列に変換
第二引数を `false(文字列)` で渡していた為。
ターミナルを再起動
MICROSECOND SECOND MINUTE HOUR DAY WEEK * MONTH
上の方は、コンフリクトしているファイルを別名でブランチを切る手順です。 コンフリクトファイルのみを消したい場合は、半ばくらいから参考にして下さい。
「option + ¥」で入力しなければいけないようです。 文字のエスケープの際にeclipseに直接いれると¥と入力されつまづきました。
994bb38 と 66790c3 を一緒にプッシュしてしまった。
pom.xmlに記述するpowermockの依存関係
ターゲット: (?:(.+?)=.+?&)
rubyで構造体を使いたい
::ClassNameの意味
rake taskのテスト
sequence(:username) { |n| "user#{n}" }
mockの使い方
下記の場合だと、 decrypt1.sh 、 decrypt2.sh で失敗だったとしても、 decrypt3.sh が成功すればパスしてしまう。
復元先のテーブル名ではなく、復元元(バックアップ元)のテーブルのResourceを許可する必要がある。
Minitestで"No more expects available for :something_method"が発生
minitestで意図的にraise
絵文字を正しく抽出するには
nginxのログの加工集
HTMLエスケープせずに変数を出力
複数個所をコメントアウト(#)
$errors = $form->getErrorSchema()->getErrors(); で取得可能
gulpでscssをコンパイルしようとすると下記のエラーが発生する
FROM ruby:2.3.1をFROM ruby:2.3.7へ
assets/js 配下のjsをmain.jsにまとめる。 views/.ejs 配下のxxx.ejs.htmlを変数を埋め込みhtmlに変換する。 assets/scss配下のxxx.scss.cssをmain.cssにまとめる。 imageを圧縮して、指定のフォルダに送信 fontを指定のフォルダに送信
5.6系を使う予定が、brewで最新の8系をインストールしていて、謎のエラー[2054] The server requested authentication method unknown to the clientで苦しんだ。
curlでステータスコードのみ取得
* timeは2017-01-07T00:07:23.752260Zが入る
elasticsearchをcentos7にインストール
ドッカーの不要なVolumeを削除する
バージョン0.4.10を使用する > Failed to build gem native extension - unknown type name 'my_bool' · Issue #980 · brianmario/mysql2
githubで障害が発生していないか確認
rootでrbenvを操作する
定数を変更してテスト
dockerのfluentdをフラッシュさせる
ANSIカラーシーケンス・・・色をつけるコード
ルートのパスワードを変更
-n30・・・インターバル(秒) https://XXX・・・参照先 * result.txt・・・出力先
キャメルケースからスネークケースに変換
macでサンバにコマンドでマウントする
指定のフォルダ内のファイル数を一定に保つ
シェルでsudoのパスワード入力させる関数
Railsのキャッシュ機構を使う
除外テーブルとの結合
間違ってコミットしていたファイルを歴史から全消去
制御文字を取り除く
dockerを起動するとCouldn't connect to Docker daemon at http+docker://localunixsocket - is it runningなるエラーがでて、dockerを再起動、パーミッションの再設定等を行ったが、事象が回復せず。 結局、プロジェクト(フォルダ)を消して、再度checkoutすると動くようになった。 原因不明
Docker内でnode_moduleフォルダが消える
/etc/cron.d配下に、スケジュールファイルを作成するのが良い
簡易デバッグ用
* railsバージョンが5.0.0.1のままだと、key must be 32 bytesが発生してしまう。 > key must be 32 bytes
ギットのdiffモード時の操作
socketの接続先を確認
テーブルへデータの追加、検索
以上を元に、404ページであってもnoindexをつける必要はなさそうと判断してよいと思います。
build画面右上(プルダウン)からRebuild with SSHを選択する
LocalのDynamoに値が入っているか確認
APIのステータスコード
プロセスをウォッチ
※grepの引数を'[p]uma'にすることでgrepのプロセスを表示させない
ワンライナーコマンドが掲載されるサイト
ログを参照する際に重複行をなくしたい
エラーの詳細を表示
GB単位でDBのサイズを確認
プロセス強制終了
Restlet Client - REST API Testing - Chrome ウェブストア
ユーザーがメルマガの受信や会員登録を申し込んだ状態を仮登録とみなし、登録アドレスに送信されてきたメールのURLをクリックして、はじめて正式に登録が完了する方式 ※ではないのは"シングルオプトイン"
リポジトリに.github/PULL_REQUEST_TEMPLATE.mdを追加する。
/path/to/folder/.jpgを変更 * img_#{File.basename(item).split("_")[0]}を変更すればファイル名を自由に変更できる
MySQLでCSVをインポート
Gitコマンドをtab補完
railsを動かしたら、coffee-railsでエラーが発生
※rootでないとプロセスIDを見れない
express(4系)を起動するまで
viewでformから生データを取得する
GIT_PROJECT_ROOT/.git/info/exclude に除外条件を記載。
pushしようとして、下記のエラーが発生したら、 書き込み権限がないようです。
条件を設定したCriteriaオブジェクトを生のSQLを出力してくれる。
* EUC-JPは-e、UTF-8は-wを設定する
[Linux]ファイルの圧縮、解凍方法
適当なサイトをブックマークして、URLを書き換える
ショートカット一覧
* 使い方は、railsのプロジェクトフォルダに設置します。起動するときは「./up dev」とうつだけ。既に起動していたらpidかpsから判断して滅してくれます。
Google API OAuth2.0のアクセストークン&リフレッシュトークン取得手順 2017年2月版 - Qiita
RubyでGoogleplayのレシートを照合する
link_toで囲みたい
取得したLocationのURLをブラウザで落とす
OSからファイルを作成できるスペースがないか通知が来た
LGTM (Looks Good To Me)をするには
下記のコマンドで動かしたら、なぜかcss、jsが読み込まれないエラーに遭遇。
一つのサーバーで複数のサイトを管理していたら、 ドメインが同サーバに設定していた別のドメインとすり替わっていた。
質疑表のテンプレート
linux - コマンドラインで読み込んだファイルに上書きするには - スタック・オーバーフロー
オブジェクトをJSON文字列(UNICODE)に変換する
VPC→Elastic IPを選択する 新しいアドレスの割り当て 例:「34.74.40.234」のように自動的に割り振りされる
Visual Studio Code – コード エディター | Microsoft Azure
設定した時間がずれる。 タイムゾーンを変更する – Slack
レバテックプラットフォームの勤怠の自動入力プログラムがあったので、 追加改造して、作業内容に仮入力と入力するようにした。
【Amazon Polly】(人工知能を活用したテキスト読み上げサービス)| AWS
Package Control Git Gutter TrailingSpaces SyncedSideBar * ProjectManager
まとめ Claude Code と codex (OpenAI Codex CLI) は SKILL.md のフォーマットがほぼ互換なので、~/.codex/skills/claude → ~/.claude/skills の symlink 1本で codex 側から Claude の skills が全部見えるようになる 移行時に codex が「skipped 5 skil...
参考: Pricing: Compare Grok Plans (x.ai) / Elon Musk’s xAI unveils affordable SuperGrok Lite (Economic Times) まとめ AI・OSS・開発者コミュニティの動きを X(旧 Twitter)経由で拾いたいだけなら、SuperGrok Lite($10/月)で用は足りる Deep...
まとめ SuperGrok Lite は Claude Code の代わりにはならない。Web/アプリ版 Grok と X 検索が使える月10ドル前後のプランで、CLI ツールの Grok Build や xAI API は対象外 Claude Code から X の最新情報を取りたいなら、契約すべきは SuperGrok Lite ではなく xAI API(従量課金)。Grok...
参考: Claude Code prompt caching (公式ドキュメント) まとめ LLM の API はステートレスなので、Claude Code は CLAUDE.md も会話履歴も 毎ターン丸ごと送り直している 。省略はしていない。 それでも料金・速度が破綻しないのは、先頭の安定した固まり(システムプロンプト+CLAUDE.md+過去の履歴)が プレフィックスキ...
まとめ 可用性パーセントは「不安定だった時間の幅」ではなく「その間に実際に失敗した割合」を表す。断続障害だとこの2つは大きくずれる 障害の実効ダウン ≒ 障害が続いた窓の幅 × その窓での失敗率。3時間36分の窓でも失敗率が1割なら実効ダウンは20分台になる 可用性の測り方は時間ベースと成功率ベースの2系統。等間隔で叩く外形監視(Synthetic)の成功率は、実質「時間ベー...
まとめ 個人 tap(自分の GitHub リポジトリ)方式なら、審査なしで push した瞬間から brew install できる GoReleaser の brews(formula 生成)は非推奨になっていて、今は homebrew_casks を使う 配布そのものより、public 化前の掃除(ライセンス・git 履歴の author 書き換え)の方が手間だった ...
まとめ /model でモデルを選ぶと、デフォルトでは設定ファイルに保存され、次に立ち上げた新規セッションにも引き継がれる ピッカーで行を選ぶとき Enter は「保存して既定にする」、s は「今のセッション限り」で、後者なら設定ファイルに書き込まれない 新規セッションを毎回まっさらな既定モデルから始めたいなら、設定ファイルの model キー自体を消すのが確実 設定はス...
まとめ React Compiler は、これまで手動で書いていたメモ化(useMemo / useCallback / React.memo)を、ビルド時に自動で適用してくれる最適化コンパイラ。 コードの意味は変えず、合わないコードは最適化をスキップする安全設計なので、導入して壊れるリスクは低い。 AIに実装を任せる運用とは相性が良い。メモ化はAIでも人間でも貼り忘れ・貼り...
まとめ macOS で git を HTTPS 経由で使うと、push/pull のたびにキーチェーンの確認ダイアログが出ることがある。原因は credential helper がキーチェーンから資格情報を読み出すため 個別リポは git remote set-url で SSH に切り替えれば、キーチェーンを経由しなくなる グローバル config に insteadOf...
まとめ Antigravity CLI (agy) を --print(非対話)で画像生成に使うと、標準出力が空のまま --print-timeout すら効かずに固まることがある。 真因は設定 artifactReviewPolicy の既定値 asks-for-review。生成物(アーティファクト)のレビュー承認をエージェントが待つが、非対話モードには承認する相手がいないの...
まとめ Claude Code のカスタムステータスラインは、標準出力に出した文字列がそのまま描画される。ANSIカラーだけでなく OSC 8 ハイパーリンク も通る OSC 8 は \x1b]8;;URL\x07 表示テキスト \x1b]8;;\x07 の形式。対応端末では Cmd+click で開けるリンクになり、非対応端末では ただのテキストに劣化する ので貼っても安全 ...
サブドメインを親ゾーン内の単一レコードから独立した子ホステッドゾーンへ昇格させる作業をした。委譲が本当に切り替わったかを確認しようとして、最初に手が止まった。dig で引いても返ってくる IP が作業前と同じだったからだ。 これは当然で、移行の前後で A レコードの宛先(ALB)は変えていない。変わるのは「どのゾーンが権威を持って答えるか」であって、解決結果の IP ではない。だから検証も...
まとめ Claude CodeのUI・Agent機能はそのままに、推論エンジンをDeepSeek APIに置き換えられる 環境変数4つを設定するだけで切り替わる。OpenRouter不要 Pro(設計・実装)とFlash(探索・調査)に役割分担するとコストと品質のバランスがいい 背景 Claude CodeはふつうAnthropicのClaudeモデルを使う。が、Dee...
class セレクタ依存をやめて a11y ベース(role + accessible name)に寄せる Capybara はもともと a11y ベース設計。click_button "保存" を徹底すれば 8 割対応できる ただし Capybara.enable_aria_label = true / enable_aria_role = true は最初に必ず設定する 学習リソースは「一般…
Ubuntu の unattended-upgrade が nginx のパッチリリースを上げた ことで、apt パッケージで配布されている nginx モジュール(Web アプリのワーカーを管理する連動コンポーネント) との ABI 不整合 を起こし、Web アプリのワーカーが spawn できなくなった ALB ヘルスチェックは失敗を返し、ASG が unhealthy 判定 → 次々と E…
AWS の ALB は 2016 年のローンチ時点から リクエストをバッファリングしている。Slow client 対策で Puma の前に Nginx を置く必要はない Rails コミュニティで長年「Puma の前に Nginx」と言われてきたのは、オンプレや HAProxy 直結構成での話。…
MSA = アプリを小さな独立サービス群に分割する設計、対義語はモノリス(1 つの大きなアプリ) 各サービスは独立デプロイ・独立 DB・言語選択自由 障害局所化・チーム分割しやすさが利点、運用の複雑化が欠点 「Rails は MSA に向かない」と言われるのは、1 アプリで全部やる前提で作られているから
iptables の hashlimit モジュールで、送信元 IP ごとに独立したトークンバケットを持たせて HTTP/HTTPS をレート制限できる ユーザー定義チェーンに「正常レートなら RETURN」「超過したら DROP」を 2 段で組むのが定番形 --hashlimit-burst を 100 くらい残しておくと、ブラウザの並列リクエストを潰さずに済む
user:pass@host 形式の URL でページを開くと、fetch() の相対パスが認証情報を引き継いでしまう fetch('/api/...') が "Request cannot be constructed from a URL that includes credentials" で死ぬ location.origin を先頭に付けた絶対 URL にすれば解決 Chrome(デス…
ImageMagick の InterpretImageFilename に「連続パーセント記号 %% を処理する箇所」で off-by-one error があった バグの本体は 書き込み ではなく 読み込み 側のポインタが \0 を 1 バイト飛び越えること 1 バイトの read overflow 自体は軽症(クラッシュ or 軽い情報漏洩)だが、パーサーがそのバイトを「次の動作の判断材料…
バケット ACL を public-read にすると、誰でもバケット直下に対する ListObjectsV2 が叩けてしまう(オブジェクトキー・サイズ・LastModified が匿名で取得できる情報漏洩リスク) 個別オブジェクトの public-read 配信(CarrierWave の asset_sync / Rails アセット等)は維持しつつ、 バケットレベルのリストだけを拒否 した…
AWS CLI v2 は出力が一定量を超えるとデフォルトで less を起動し、ターミナルが全画面の pager 表示に切り替わる 抑制方法は 3 通り: コマンド単位の --no-cli-pager、環境変数 AWS_PAGER=""、~/.aws/config の cli_pager 永続化したいなら .zshenv に export AWS_PAGER="" を書いておくのが手軽 aws…
macOS「システム設定 → 一般 → ログイン項目と機能拡張 → バックグラウンドでの実行を許可」に表示される名前は、plist の Label ではなく ProgramArguments[0] の basename から取られる ProgramArguments[0] を /bin/zsh にして第二要素にスクリプトを渡すと、表示名は「zsh」に丸め込まれて識別不能になる スクリプトに sh…
git push --force で書き換えた旧 commit は GitHub 上に約 90 日残る(dangling commit)。SHA を直接指定すれば誰でも閲覧可能 private repo であってもリポジトリ所有者にアクセス権がある人なら旧 commit URL から内容を読める 完全に消したいなら (1) GitHub のガベージコレクション待ち (2) サポート申請 (3)…
稼働中の ELF バイナリに cp で上書きすると Text file busy (ETXTBSY) で失敗する 一時ファイルに書き出して mv -f で差し替える atomic rename で回避できる rename(2) はディレクトリエントリだけを書き換え、古い inode は実行中プロセスが使い続ける Rails で同じ問題に遭遇しなかったのは Capistrano の symlink…
GitHub App の bot user ([bot]) を @ で mention しても、bot がその repo の participant になるまで auto-link されず plain text のまま表示される bot が participant になる条件は「その repo で 1 度でもコメント済み」「assignee」「同 thread の他参加者」のいずれか bot 機…
RDS Multi-AZ の failover は「別 AZ への切替」と「同一 AZ での復旧」の2パターンがある RDS-EVENT-0015 (Multi-AZ failover to standby complete) → 別 AZ への切替 RDS-EVENT-0050 / 0051 (Multi-AZ instance activation) → 同一 AZ での復旧 DB inst…
HTTPS証明書を発行すると CT Log(証明書透明性ログ) に即座に記録され、誰でも検索できる 攻撃者はcertstreamでCT Logをリアルタイム監視しており、証明書発行から数分以内にスキャンが来る 開発・ステージング環境はBasic認証+IP制限で守る。本番はWAF サブドメイン名を隠すにはワイルドカード証明書。…
SES のサプレッションリストはリージョンごとに独立している。正しいリージョンを確認すること Hard Bounce が発生すると SES がアドレスを自動的にサプレッションリストに登録し、以降の送信がすべてブロックされる サプレッションリストから削除してもブロックされたメールは再送されない。手動で再送が必要
anyenv はシェル初期化に依存したシム方式でランタイムを管理する。この設計が bubblewrap sandbox のようなシェル初期化を行わない環境と相性が悪く、node や npm が見つからずに大量の回避策が走る問題に直面した。
重いファイルを履歴から消すには git filter-repo が現代の標準 必ずバックアップ → 実行 → force-push → gc の順 全 commit の SHA が変わるので共同作業者・PR 参照に注意 private リポ・単独作業なら影響範囲が限定的で実行しやすい 完全削除はホスティング側の GC を待つかサポート依頼
gc.log の存在は自動 gc が止まっているサイン 原因は rebase / amend / branch 削除の長期累積 解消は git prune → git gc → rm .git/gc.log の 3 ステップ --expire=now は強力だが reflog からも消えるので reset 取り消しの保険を捨てることになる
複数リポジトリのタスクを一元管理する仕組みを構築するにあたり、GitHub Projects v2 を gh CLI で操作する方法を調査した。
Claude Code の Auto Mode 中に外部システム(チケット管理ツール)への書き込みコマンドを実行したら、Permission for this action has been denied. で止められた。設定の deny ルールでも hook でもなく、公式機能 "Permission Classifier" によるリアルタイムのリスク評価が正体だった。
LocalStack を CI で使っていると、Pro 機能の認証や有償ライセンスに引っかかる場面がある。代替を探していて Floci にたどり着いたので、概念だけメモしておく。手順ではなく「何のためのツールなのか」を腹落ちさせるのが目的。
SSE-S3 のみの運用は「暗号化されている」が「鍵管理は統制されていない」状態 SSE-S3 が守るのは物理層レベルの脅威のみ。運用面の漏洩には寄与しない SSE-KMS 未使用 = 鍵レベル多重防御・鍵利用ログ・顧客主導キーローテーション・クロスアカウント鍵制御・コンプライアンス対応がすべて欠落
暗号化は at-rest / in-transit / 鍵管理の3軸で考える 「暗号化されている」だけでは何が守れているか分からない。鍵管理レベルまで踏み込んで記述する SSE-S3 は AWS デフォルトで自動有効。明示的に書く価値は限定的 SSE-KMS は鍵レベル多重防御・利用ログ・キーローテーション制御で監査価値が高い 監査ドキュメントで「未確認」を残してはいけない。…
Rubyコードが実行されるまでの流れと、CRubyを構成するコンポーネントを整理する。
Web アプリの認証方式として代表的な「セッション認証」と「JWT 認証」の違いをまとめる。
AWS WAF の scope-down statement で Content-Type: multipart/form-data をマッチさせる際、text_transformation に LOWERCASE を使うべきか NONE のままでよいかを調査した。
ESP8266 の I2C 不安定問題は ESP32 に乗り換えると解決しやすい CO2センサーが一番高い(約2,000〜3,000円) 全部揃えても5,000〜7,000円程度で作れる
Ubuntu の apt でインストールした gh は古いバージョン(例: 2.45.0)のままになりがちで、gh pr edit が Projects Classic の deprecation エラーで失敗することがある。GitHub CLI 公式リポジトリを追加することで最新版に更新できる。
ユーザーが PDF ファイルをアップロードすると「問題が発生しました」エラーが表示される。別のファイルは正常にアップロードでき、時間をおいても解消しない。サポート担当が同じファイルをアップロードすると成功する場合もある。
Rails 8でデフォルトのジョブバックエンドがSolid Queueになった。長年Sidekiqがデファクトスタンダードだったが、今後の新規プロジェクトではSolid Queueが標準になりつつある。
AWSアカウント分離でstaging環境を別アカウントに移す際、サブドメイン(例: stg.example.com)のDNS管理をどう扱うかで設計の複雑さが大きく変わる。