Sehyup
Preview Image

Tailscale 시리즈 3편 — 작동 원리와 비용·한계 (DERP·MagicDNS·hole punching·연 1만 원 회고)

이 편이 다루는 것 시리즈 마지막 편입니다. 두 가지를 묶습니다. Part 1 — 작동 원리: 시리즈의 인프라가 가능한 메커니즘. 가정 NAT 두 겹 뒤의 노트북 두 대가 어떻게 직통으로 통신하는가. STUN·ICE·hole punching·DERP·MagicDNS를 한 묶음으로 정리합니다. Part 2 — 비용·한계·회고: 연 1만 원 인프...

Preview Image

Tailscale 시리즈 1편 — 창고 노트북으로 만든 한국 IP 우회 인프라 (동기·실측·구조)

이 시리즈가 다루는 것 후쿠오카에서 1년 넘게 살면서 한국 IP가 아쉬운 순간이 꾸준히 쌓였습니다. 한국 결제·은행·일부 콘텐츠는 해외 IP에서는 정상 동작하지 않거나 추가 인증을 요구하고, 그때마다 상용 한국 VPN을 잠깐 켜는 패턴은 비용·신뢰·OS 호환 모두에서 깔끔하지 않았습니다. 해결책으로 부산 본가 창고에 7년째 처박혀있던 케케묵은 ...

Preview Image

Span<T>와 ReadOnlySpan<T> — 복사 없이 메모리를 바라보는 법

서론: 박싱편이 남긴 복사 비용 1편(값 타입 vs 참조 타입과 Boxing)의 마지막에 한 가지 부채를 남겼습니다. “박싱은 피했지만 struct 자체의 복사 비용은 남는다.” 박싱편의 핵심 규칙 하나를 다시 적어 봅니다. 값 타입은 대입·전달·비교될 때 전체 내용이 복사됩니다. 이 규칙이 평소엔 직관적이고 바람직합니다. ...

Preview Image

값 타입 vs 참조 타입 — 스택·힙과 Boxing의 숨은 비용

서론: “스택 vs 힙”이라는 말은 왜 자꾸 어긋날까 C# 교과서의 첫 장에서 우리는 이렇게 배웁니다. “값 타입(struct)은 스택에, 참조 타입(class)은 힙에 저장됩니다.” 이 문장은 틀린 설명은 아니지만, 실무에서 만나는 거의 모든 반례를 가립니다. 클래스의 필드로 int를 선언하면 그 int는 스택이 아니라 객체가 사는 ...

Preview Image

너프된 Claude — Transformer 작동원리부터 잠수함 패치·환각·토큰 폭증까지

서론 — Claude는 진짜 너프됐는가 Claude Opus 4.6은 한동안 코딩 작업의 기준선을 한 단계 끌어올렸다는 평을 받았습니다. Codebase 전체를 던져도 맥락을 잡고, 까다로운 리팩터링을 한 번에 끝내고, 도구 호출 사이의 추론도 깔끔했습니다. 그런데 2026년 2월부터 이상 신호가 누적되기 시작했습니다. 사고 깊이 73% 감소, ...

Preview Image

CS 로드맵 9편 — 스케줄링: OS는 누구에게 CPU를 줄까

서론: “누가, 얼마나”의 문제 지난 편에서는 프로세스와 스레드가 무엇이고 OS가 그것을 어떻게 추상화하는지 보았습니다. 이제 자연스럽게 따라오는 질문이 있습니다. 준비 상태인 스레드가 100개 있는데 코어가 8개라면, OS는 누구에게 CPU를 줄까요? 그리고 얼마나 오래 줄까요? 이 두 질문에 답하는 것이 스케줄러 (Scheduler...