모든 문서
-
Keep transaction boundaries visible
Document which state changes commit together and what can happen between database transactions and external calls.
-
Morph Targets: Combine Vertex Deltas Without Losing the Base Shape
Build predictable facial and corrective deformation by preserving vertex correspondence, additive weight semantics and the order of morphing and skinning.
-
Choosing permission checkpoints for queued jobs after access is revoked
Make the timing of authorization explicit when a request schedules work that runs later. The proposed exercise separates permission to enqueue work from permission to execute it and retrieve its output.
-
Checking placeholder contracts when an agent adds translated interface text
Preserve the runtime meaning of placeholders and message variants while translating interface text, so fluent prose does not introduce broken substitutions or missing cases.
-
지원 종료 이후의 Python 3.10: 런타임 찾기와 환경 재구축
Python 업스트림 수명 주기 표는 Python 3.10의 지원 종료일을 2026년 10월 1일로 기록합니다. 서비스, 가상 환경, 이미지가 실제 사용하는 인터프리터를 목록으로 정리한 뒤, 지원 중인 브랜치에서 각 애플리케이션을 다시 구축하고 테스트합니다.
-
파이프라인, 팬아웃, 오케스트레이터, 비평 패널: 작업 유형별로 맞는 멀티 에이전트 패턴
파이프라인은 정해진 순서의 변환 작업에 적합하고, 병렬 팬아웃은 서로 독립적인 하위 질문이나 여러 번 시도한 뒤 투표로 고르는 작업에 적합합니다. 오케스트레이터와 워커 구조는 작업을 어떻게 나눌지 실행 시점에야 알 수 있는 작업에 맞고, 비평 패널은 여러 기준으로 결과물을 검토해야 할 때 적합합니다. 각 패턴은 토큰 비용을 늘리고, 그 자체로 실패할 수 있는 조정 계층을 추가로 도입합니다.
-
롤백 경로를 갖춘 DNS 레코드 변경: TTL 낮추기, 전환, 검증
DNS 변경은 캐시에 남아 있는 기존 TTL이 만료되는 속도로만 사용자에게 전파되므로, 변경 전에 기존 TTL 한 주기만큼 미리 TTL을 낮추고, 새 대상이 모든 곳에서 확인될 때까지 기존 대상이 계속 응답하도록 유지해야 합니다. 또한 RFC 8767이 허용하는 것처럼, 권한 있는 서버에 연결할 수 없을 때 리졸버가 만료된 데이터를 계속 응답할 수 있다는 점도 감안해야 합니다.
-
Base64 variants: standard vs URL-safe alphabets, padding rules and decoder strictness
RFC 4648 defines both the standard and URL-safe base64 alphabets and requires padding by default, but JWTs explicitly omit it, MIME wraps lines at 76 characters while GNU base64 needs -w0 to stop doing the same, and decoders from Python to the browser disagree on whether stray characters and missing padding are errors.
-
PowerShell error handling for admin scripts: terminating errors, $ErrorActionPreference and $LASTEXITCODE
PowerShell has two error classes that behave differently in a script: terminating errors that try/catch can stop, and non-terminating errors that only $ErrorActionPreference or -ErrorAction can turn into a stop. A third class, failures from native executables, follows neither path unless $PSNativeCommandUseErrorActionPreference is set (PowerShell 7.4+, experimental in 7.3).
-
HTTP-Statuscodes richtig verwenden: die erste Verzweigung des Clients
Clients, Caches und Agenten entscheiden allein am Statuscode über Wiederholen, Neuladen oder Aufgeben: 201/204 für Erfolg mit und ohne Körper, 401 gegen 403 für fehlende Anmeldung gegen fehlende Berechtigung, 409/412/428 für Konflikte und Vorbedingungen, 429 und 503 mit Retry-After für «später». Ein 200 mit Fehlerobjekt täuscht alle.
-
메인 웹사이트뿐 아니라 모든 엔드포인트에서 TLS 인증서 만료 모니터링하기
만료된 인증서는 정확히 예측 가능한 시각에 발생하는 장애입니다. 실제로 서비스되는 모든 인증서(웹, API, 메일, 내부 관리 패널, 로드밸런서)의 notAfter 날짜를 외부에서 점검하고, 수동으로 갱신하기에 충분한 리드타임을 두고 경고를 울리며, 리프 인증서뿐 아니라 중간 인증서도 함께 확인해야 합니다.
-
Managing ZFS boot environments with beadm and rolling back a failed update
beadm list/create/activate/destroy manage the ZFS boot environments that pkg update creates automatically when an update requires a reboot. Activating the previous boot environment and rebooting is the supported rollback for a failed update, with no need to reinstall packages by hand.
-
프린트 스타일시트: 웹 페이지를 종이와 PDF에서도 쓸 수 있게 만들기
프린트 스타일시트는 내비게이션과 컨트롤을 숨기고, 접힌 콘텐츠를 펼치고, 링크 텍스트 뒤에 링크 대상을 함께 출력하고, @page로 페이지 크기와 여백을 지정하고, break-inside: avoid로 표와 그림이 페이지 사이에서 잘리지 않게 하며, 브라우저에 꼭 필요한 배경색은 유지하도록 요청합니다. 화면뿐 아니라 브라우저의 인쇄 미리보기로도 반드시 테스트해야 합니다.
-
프로덕션에서의 지속적 프로파일링: 상시 가동되는 샘플링 프로파일과 이를 통해 답할 수 있는 것
지속적 프로파일링은 CPU와 메모리 프로파일을 시간에 걸쳐 체계적으로 수집해 레이블이 달린 시계열로 저장합니다. 그 덕분에 팀은 어제 전체 플릿에서 어떤 함수가 CPU를 가장 많이 소비했는지, 두 버전 사이에 무엇이 달라졌는지를 물을 수 있습니다. 샘플링 프로파일러는 이를 상시 켜 두어도 될 만큼 비용을 낮춰 주며, Go의 /debug/pprof/ 같은 런타임 엔드포인트나 eBPF 에이전트가 프로파일을 제공합니다.
-
ripgrep의 기본 필터링은 grep -r보다 에이전트의 코드 검색을 짧게 만든다
가설: ripgrep의 기본 무시 규칙(git에서 무시된 파일, 숨김 파일, 바이너리 파일을 건너뜀)으로 저장소를 검색하는 코딩 에이전트는, 제외 설정 없이 grep -r을 쓰는 에이전트보다 작업당 검색 호출 수가 적고 무관한 출력을 덜 읽습니다. 빌드 산출물과 의존성 안에서의 히트가 애초에 나타나지 않기 때문입니다. 실측 결과는 보고되어 있지 않습니다.
-
Summarizing time in system calls with strace -c, its overhead, and perf trace as an alternative
strace -c counts time, calls and errors per system call instead of printing every call, but strace's own manual warns that a traced process runs more slowly than an untraced one; perf trace, described as a strace-inspired tool built on perf_events rather than ptrace, is the lower-ceremony alternative when that overhead matters.
-
일정이 정해진 '문서화의 날'은 상시 모집보다 더 많은 첫 기여자를 데려온다
가설: 소규모 문서화 이슈를 엄선한 목록과, 당일 바로 리뷰해 주는 메인테이너, 각 작업에 붙은 good-first-issue 라벨을 갖춘 단 하루를 공지하는 프로젝트는, 같은 목록을 일 년 내내 열어 두기만 한 경우보다 이전에 한 번도 기여한 적 없는 사람들로부터 더 많은 문서화 변경을 머지받습니다. 한 프로젝트 자체의 이력을 대상으로 한 비교를 제안합니다.
-
파이썬 명령줄 도구 설계하기: argparse, main(), 종료 코드
인터페이스는 콘솔 스크립트로 등록한 main(argv) -> int 함수 안에 두고, argparse의 type과 choices로 값을 검증하고, 종료 코드 관례(0은 성공, 2는 사용법 오류, 1은 그 외 실패, sysexits 코드는 문서화한 경우에만)를 따르고, 결과는 stdout에 진단 메시지는 stderr에 남기고, SIGINT와 broken pipe를 처리합니다.
-
Writing a portable POSIX sh script across Linux, BSD, macOS and AIX
A script meant to run unchanged on Debian's dash, a Linux box's bash-as-sh, FreeBSD, macOS and AIX has to stay inside the POSIX Shell Command Language and avoid GNU-only tool flags; checkbashisms and a short list of GNU-versus-BSD command differences catch most of what breaks.
-
Upgrading Debian and Ubuntu to the next major release without losing a rollback path
Ubuntu's do-release-upgrade and Debian's manual sources-list-then-upgrade procedure both assume a full backup and a console fallback in case the SSH session drops mid-upgrade; Debian's own release notes recommend a minimal upgrade pass before the full one.
기계 판독 가능: JSON