みんなの現場、全部ここに。
図鑑・記事・現場メモ・キャリア論。タブで部屋を切り替えて読める。

C# のボックス化・ボックス化解除とは何か、大量処理で効いてくる理由
C# ボックス化 とは何かを、値型と参照型のメモリの動きから解説。ArrayList や object 引数が大量ループで遅くなる正体(無意識のボックス化と GC 圧)と、List・ジェネリックで避ける書き換え3つを、コピペで動くコードで整理します。

SQL Server の JOIN 完全ガイド — INNER / LEFT / RIGHT / FULL / CROSS を業務SEが件数で腹落ちさせる
SQL Server JOIN 種類(INNER / LEFT / RIGHT / FULL / CROSS)の違いを、同じデータで結果件数がどう変わるかで腹落ちさせる完全ガイド。LEFT JOIN したのに WHERE で右列を条件にして実質 INNER になる罠、結合キーの NULL が一致しない罠も実例で解説しま

C# のジェネリクス経験者が TypeScript のジェネリクスで詰まる5つの違い(制約・型推論・共変性)
C# のジェネリクス (List / where T : / out T) の感覚で TypeScript を書くと詰まる5つの違いを、C# 出身の業務SE向けに整理。コレクション型の対応、extends 制約が構造的型付けで緩いこと、new() 制約や共変性が別物なこと、型引数が推論で消えることを実コードで。

C# の yield return で大量データを遅延評価で返す(メモリを食わないイテレータ)
C# の yield return の使い方を、大量データを List に全部詰めずに1件ずつ遅延評価で返す仕組みから解説。遅延評価ゆえに DB 接続を開いたまま回すと閉じるタイミングがずれる落とし穴、ToList() での使い分けまで、コピペで動くコード付きです。

SQL Server の MERGE で UPSERT する時に業務SEがハマる3つの罠(同時実行・HOLDLOCK・削除誤爆)
SQL Server の MERGE で UPSERT する時に業務SEが踏む3つの罠 — 同時実行での一意キー違反(HOLDLOCK 不足)、WHEN NOT MATCHED BY SOURCE の削除誤爆、source の重複キーで出る Msg 8672 を、Docker 実機で再現しながら回避策まで。

SQL Server の TRY_CONVERT / TRY_CAST で変換失敗を NULL にしてバッチを止めない
SQL Server の TRY_CONVERT / TRY_CAST で、変換できない値を例外ではなく NULL にしてバッチを止めない方法を実テーブルで解説。CAST は失敗でステートメント全体が落ちる違い、2012以降の制約、NULL の後続処理など業務SEが踏む落とし穴を5つ。

SQL Server の窓関数 LAG / LEAD / 累計 (SUM OVER) を業務帳票で使う3パターン
SQL Server の窓関数を業務帳票で使う3パターンを、OVER 句の考え方から積み上げて解説。LAG で前月比、SUM() OVER で累計、LEAD で翌月比較。カーソルや自己結合で書いていた前月比・累計を窓関数一本で。ROWS BETWEEN を省くと累計がずれる落とし穴も。

C# の IDisposable を正しく実装する(Dispose パターンと using / ファイナライザ)
C# の IDisposable を実装する Dispose パターンを、単純版・Dispose(bool) 版・using との関係で整理。マネージドだけなら単純版で足りる落としどころと、ファイナライザ / GC.SuppressFinalize でハマる点を業務SE視点でコード付き解説。

PowerShell で退職者の AD アカウントを棚卸しして自動 disable する(情シス1人運用)
PowerShell で Active Directory の退職者・休眠アカウントを棚卸しして無効化する手順を、情シス1人運用の業務SE向けに。lastLogonTimestamp の複製遅延で現役社員を誤って止める事故を避ける、CSV 洗い出し→確認→猶予→Disable の3段安全設計をコピペで動くスクリプト付き

PowerShell の Import-Csv / Export-Csv で業務SEが踏む5つの罠 — 文字コード・区切り・型・改行・BOM
PowerShell CSV 読み込みで業務SEが踏む5つの罠を実体験ベースで。Import-Csv / Export-Csv の文字コード(Shift_JIS / UTF-8 BOM)、#TYPE 行、全カラム文字列化、区切り文字を、対処目安つきでコピペできる形にまとめました。PowerShell 5.1 と 7 の

C# の delegate / Action / Func を TypeScript の関数型に翻訳する(型推論の違いで詰まらない)
C# の delegate / Action / Func を TypeScript の関数型 ((x: T) => U) に翻訳する対応表を、C# 出身の業務SE向けに。TypeScript の関数型は Func とほぼ同じに見えて、引数の型推論・void 戻りの扱い・ジェネリック関数で C# と挙動が違う。詰まる箇

WinForms の入力チェックを ErrorProvider でスマートに — Validating と e.Cancel の落とし穴
WinForms の入力チェックを ErrorProvider と Validating イベントでスマートにする方法を解説。入力欄の横に赤アイコンとツールチップでエラーを出す実装から、e.Cancel=true でフォーカスが抜けられなくなる「閉じるボタンも押せない」詰み、ValidateChildren での一括検