Sehyup
Preview Image

C#은 어떻게 실행되고, 어떻게 자기 자신을 읽는가

이 글이 출발한 자리 언젠가 유니티 프로젝트의 C# 코드를 분석하는 작은 도구를 만들기로 했습니다. “이 프레젠터의 이 메서드가 실제로 어떤 구현을 호출하는가”를 따라가 주는 도구입니다. 코드를 짜기도 전에 두 가지 질문에 막혔습니다. 이 도구 자체를 어떻게 빌드해서 배포하지? — C#으로 만든 이 실행 파일을 어떤 형태로 내보내야 빠르고...

Preview Image

CSロードマップ 10話 — 同期プリミティブ: Mutex はどうやって一人だけを通すのか

序論: 「時々落ちる」の意味 Stage 2 を始めるとき、こんな問いを投げかけました。 スレッド二つが同じ変数に書き込むと、なぜプログラムが時々だけ落ちるのか? 7話 OS アーキテクチャ、8話 プロセスとスレッド、9話 スケジューリングを経て、答えの半分には辿り着きました。OS が見えないところでスレッドを入れ替えていて、その入れ替えの瞬間は予測不可能 — だから「時々...

Preview Image

Tailscaleシリーズ第3編 — 動作原理とコスト・限界 (DERP・MagicDNS・hole punching・年1,100円振り返り)

この編で扱うこと シリーズ最終編です。2つのテーマをまとめます。 Part 1 — 動作原理: 本シリーズのインフラを成立させているメカニズム。家庭NAT 2重の奥にあるノートPC 2台がどうやって直通で通信するのか。STUN・ICE・hole punching・DERP・MagicDNSをひとまとめに整理します。 Part 2 — コスト・限界・振り返り: 年間1,100円インフ...

Preview Image

Tailscale シリーズ 第1回 — 押し入れのノートPCで作る韓国IP経由インフラ(動機・実測・構造)

このシリーズで扱うこと 福岡で1年以上暮らしてきた中で、韓国IPが必要になる場面が地味に積み重なってきました。韓国の決済・銀行・一部のコンテンツは海外IPからは正常に動作しなかったり追加認証を要求してきたりして、そのたびに商用の韓国向けVPNを一時的にONにするやり方は、コスト・信頼性・OS互換性のどれを取ってもすっきりしませんでした。 解決策として、釜山の実家の押し入れに7年眠って...

Preview Image

Span<T> と ReadOnlySpan<T> — コピーなしでメモリを眺める方法

序論: Boxing 編が残したコピーコスト 第 1 回 (値型 vs 参照型と Boxing) の最後に一つの宿題を残しました。 “Boxing は避けられたが、struct そのもののコピーコストは残る。” Boxing 編の核心ルールを再掲します。 値型は代入・受け渡し・比較されるとき、内容全体がコピーされます。 このルールは普段は直感的で望ましいものです...

Preview Image

値型 vs 参照型 — スタック・ヒープと Boxing の隠れたコスト

序論: 「スタック vs ヒープ」という説明が食い違う理由 C# の教科書の最初のページで、私たちはこう学びます。 “値型 (struct) はスタックに、参照型 (class) はヒープに格納されます。” この文章は間違いではないのですが、実務で直面するほぼすべての反例を覆い隠してしまいます。クラスのフィールドとして int を宣言すると、その int はスタックではなく...

Preview Image

ナーフされたClaude — Transformerの動作原理から潜水艦パッチ・ハルシネーション・トークン爆増まで

序論 — Claudeは本当にナーフされたのか Claude Opus 4.6はしばらくの間、コーディング作業の基準線を一段階引き上げたと評価されていました。コードベース全体を投げつけても文脈を掴み、難しいリファクタリングを一発で終え、ツール呼び出し間の推論もクリーンでした。ところが2026年2月から異常な信号が蓄積され始めました。思考の深さ73%減少、トークン消費量122倍増加、St...