Trawling

개발·오픈소스 · 최신기사

개발 도구와 언어, 웹 기술과 오픈소스 프로젝트의 변화를 다룹니다.

V 언어 리뷰 (2023) — 약속과 실제 구현 사이의 간극

발행

V 언어를 6개월간 사용한 리뷰어가 문서, 메모리 관리, 자동 메모리 해제, 할당, 안전성, 바이너리 크기를 직접 검증합니다. 문서의 설명과 실제 동작이 크게 다르고, autofree와 컴파일러 자체 빌드에서도 누수와 런타임 오류가 발생한다고 지적합니다.

Scrum은 마침내 끝났습니다 🎉 코딩 에이전트 덕분입니다

발행

저자는 Scrum이 실패한 이유를 Agile 원칙을 반복 가능한 의식과 지표로 바꿔버렸기 때문이라고 봅니다. 코딩 에이전트로 비개발자도 실행 가능한 프로토타입을 만들 수 있게 되면서, 백로그·스토리 포인트·스프린트 중심의 프로세스가 발견과 검증 중심의 흐름으로 대체될 수 있다고 주장합니다.

Skia를 위한 컴파일러 스타일 드로잉 최적화 — 2D 래스터화 의미론으로 검증합니다

발행

Skia 같은 래스터화 라이브러리는 빠르지만 애플리케이션이 전달하는 연산 순서가 비효율적일 수 있습니다. 연구진은 Skia의 동작을 Lean으로 형식화한 μSkia를 만들고, Chrome에서 발견한 네 가지 최적화를 검증해 99개 웹사이트 프로그램에서 최대 32μs의 분석 비용으로 18.7% 속도 향상을 얻었습니다.

EchoCadence를 만들었습니다 — 단어를 오래 기억하게 하는 어휘 앱

발행

EchoCadence는 사용자가 직접 어휘를 추가하고, 복습 난이도에 따라 다음 복습 시점을 정하는 spaced repetition 기반 앱입니다. 개발자는 복습 이력을 TimescaleDB hypertable로 저장하고 continuous aggregate로 일별 통계를 만들어, PostgreSQL 모델 안에서 학습 데이터를 시계열로 다루는 방법을 구현했습니다.

MCP로 살펴본 MI300X — 매트릭스 코어가 실행하는 것과 실행하지 않는 것

발행

AMD Instinct MI300X 한 장을 실제 클라우드 환경에서 MCP 도구로 관리하고, 하드웨어와 ROCm 스택이 지원하는 수치 형식을 직접 측정합니다. 결과적으로 이 카드에서는 FP8 E4M3FNUZ가 실용적인 네이티브 경로이며, INT8·MXFP4·NVIDIA용 FP8·GGUF는 사양표나 기능 목록만으로 판단하면 안 된다는 점을 보여줍니다.

Claude Code의 effort level과 모델 선택 가이드

발행

Claude Code에서 모델은 고정된 가중치와 전반적인 능력 범위를, effort level은 파일 탐색·도구 호출·검증·추론에 투입할 작업량을 결정합니다. Anthropic은 기본 설정에서 시작한 뒤, 문제가 어려워 지식이 부족하면 더 큰 모델을, 실행이 불충분하면 더 높은 effort를 선택하라고 안내합니다.

io_uring을 위한 스레드 정체성 바꿔치기

발행

io_uring이 실제로 블록될 때만 워커 스레드 비용을 부담하도록 task_struct의 정체성을 교환하는 RFC 패치가 제안됐습니다. tmpfs fsync()에서 약 700% 향상이 관찰됐지만, 커널 참조 무결성과 shadow stack 호환성 같은 위험도 큽니다.

인터넷 검열을 측정하세요

발행

OONI Probe를 실행하면 국가별 웹사이트 차단 여부, 메신저 접근성, 우회 도구 작동 여부와 네트워크 성능을 검사할 수 있습니다. 결과는 거의 실시간으로 공개 데이터셋에 추가되어 인터넷 검열의 투명성을 높이는 데 활용됩니다.

영어의 A와 An — 철자가 아니라 발음으로 결정되는 부정관사

발행

영어 텍스트를 절차적으로 생성할 때 a와 an 중 어느 관사를 붙일지는 첫 글자가 아니라 단어의 첫 발음으로 판단해야 합니다. CMU Pronouncing Dictionary의 32,455개 단어를 조사한 결과, 철자와 발음이 어긋나 예외 처리가 필요한 단어는 129개뿐이었습니다.

웹 브라우저의 미래에 대한 생각

발행

Firefox의 AI 통합에 반대하며 Mozilla와 분리된 브라우저 기반을 만들자는 제안과 그 결과로 시작된 base browser 프로젝트를 소개합니다. Firefox 153 ESR에서 사용자에게 적대적인 기능을 코드에서 제거하고, 오프라인 리더·독립 애플리케이션·피드 리더로 브라우저 의존도를 낮추려는 실험과 웹의 새로운 방향에 대한 문제의식을 다룹니다.

Rust 개발자가 경험한 Zig

발행

7년간 Rust를 사용한 개발자가 RFC 9535 기반 JSONPath 구현을 Zig로 다시 만들며 두 언어의 개발 경험을 비교합니다. Zig의 단순한 빌드 도구와 낮은 추상화는 긍정적으로 평가하지만, 수동 메모리 관리와 미성숙한 생태계에서는 Rust와 뚜렷한 차이를 확인합니다.

거대한 미지의 코드베이스에 갑자기 투입됐나요? 생존 가이드입니다

발행

대규모 코드베이스를 처음 접했을 때 모든 파일을 읽으려 하지 말고, 애플리케이션을 실행한 뒤 진입점과 실제 기능의 흐름을 추적하며 구조를 파악하라고 제안합니다. 작은 변경과 팀원·Git 기록·테스트 활용, 학습 내용 문서화를 통해 일주일 안에 실용적인 코드베이스 지도를 만들 수 있다고 설명합니다.

Microsoft 이사: AI 스크래핑은 ‘인류 역사상 가장 큰 노동의 도둑질’

발행

뉴욕타임스와 OpenAI·Microsoft의 저작권 소송에서 양사의 내부 문서와 증언이 공개되면서, AI 학습용 스크래핑이 콘텐츠 산업의 시장을 잠식할 수 있다는 우려가 드러났습니다. Microsoft 내부에서는 Copilot이 뉴욕타임스의 클릭률을 Bing 검색보다 최대 93% 낮췄다는 분석도 나왔습니다.

6개월 동안 AI에게 테스트를 작성하게 해봤습니다 — 실제 프로덕션에서 살아남은 것들

발행

AI는 테스트 코드의 보일러플레이트와 버그 재현용 골격을 빠르게 만드는 데 효과적이지만, 중요한 실패 시나리오와 올바른 검증 조건까지 찾아주지는 못합니다. 작성자는 Playwright와 Flutter 테스트 경험을 바탕으로 AI 생성 테스트의 한계와 사람이 반드시 맡아야 할 역할을 설명합니다.

Git은 packfile을 다시 만들면 object storage에서도 실행할 수 있습니다

발행

Git 저장소를 object storage에 직접 올리려면 로컬 파일시스템을 전제로 설계된 기존 packfile이 병목이 됩니다. Tigris의 objgit은 Range request에 맞춘 자체 packfile과 인덱스를 도입해 push 요청을 최대 약 300배, clone 요청을 최대 약 20배 줄였지만 아직 인증·권한·압축(compaction)이 구현되지 않은 실험 단계입니다.