1. 짧은 답 (핵심 요약)M1, M2, M3 등 Apple Silicon 기반 맥북(MacBook Air / Pro)을 4K 또는 QHD 외장 모니터에 연결해 사용할 때, 화면이 2~3초간 검게 꺼졌다가 다시 켜지는 간헐적 블랙아웃(깜빡임) 현상은 90% 이상 주사율 설정 충돌(VRR)이나 케이블 전송 대역폭 부족 때문에 발생합니다.가장 흔한 원인: macOS의 가변 주사율(가변/ProMotion/VRR) 설정이 모니터와 동기화 오류를 일으켜 신호가 끊김.1차 즉시 해결책: 시스템 설정 → 디스플레이에서 주사율을 '가변'이 아닌 '60Hz' 또는 모니터 정규 주사율로 고정합니다.2차 하드웨어 해결책: 멀티 허브(동글) 연결을 피하고, C to DP 1.4 또는 C to HDMI 2.1 단독 직결 케이블..
1. 짧은 답 (핵심 요약)터미널에서 nvm use 20을 입력해 Node.js 버전을 바꿨는데, 새 터미널 창을 열거나 VS Code를 재실행하면 자꾸 이전 버전으로 되돌아가거나 시스템 기본 버전이 잡히는 이유는 nvm use가 현재 열려 있는 터미널 세션에만 임시로 적용되는 명령어이기 때문입니다.영구 기본 버전 설정: nvm alias default 을 실행해야 새 터미널을 열 때도 해당 버전이 유지됩니다.프로젝트별 자동 버전 적용: 프로젝트 폴더 루트에 .nvmrc 파일을 만들고, .zshrc에 자동 로드 훅을 등록하면 폴더 이동 시 자동으로 전환됩니다.2. 적용 환경과 증상 원인운영체제: macOS (Zsh 기본 셸), Linux (Bash/Zsh), Windows (WSL 또는 nvm-windo..
1. 짧은 답 (핵심 요약)PC에서 블루투스 이어폰(갤럭시 버즈, 에어팟, 헤드폰 등)을 연결해 음악을 들을 때는 음질이 깨끗하다가, 디스코드 음성 채널에 들어가거나 스팀 게임을 켜면 갑자기 소리가 80년대 전화기처럼 뭉개지고 먹먹해지는 현상은 블루투스 대역폭의 한계로 인해 프로필이 강제 전환되었기 때문입니다.원인: 음성 마이크가 활성화되는 순간 윈도우가 고음질 재생 모드(A2DP)를 끄고, 양방향 통화용 저음질 모드(HFP/Hands-Free Profile)로 전환합니다.가장 빠른 해결법: 디스코드나 게임의 마이크(입력 장치)를 블루투스 이어폰이 아닌 다른 마이크(노트북 내장 마이크, USB 마이크, 웹캠 등)로 지정합니다.근본적인 해결법: 윈도우 제어판에서 해당 블루투스 기기의 ‘핸즈프리 전화 통신(..
1. 짧은 답 (핵심 요약)모니터가 1~2초 동안 완전히 검은 화면(블랙아웃)이 되었다가 다시 돌아오는 현상은 모니터 패널 고장보다 케이블 신호 대역폭 누락, 가변 주사율(G-Sync/FreeSync) 범위 충돌, 정전기/접지 노이즈, 또는 브라우저 하드웨어 가속 오류일 확률이 90% 이상입니다. 모니터 깜빡거림 원인별 점검 순서게임할 때만 1초씩 꺼짐: NVIDIA 제어판에서 G-Sync(FreeSync) 설정을 전체화면 모드로 제한하거나 일시적으로 비활성화합니다.의자에서 일어날 때 꺼짐: 가스 쇼바 정전기가 DP/HDMI 케이블로 유입되는 현상입니다. 차폐력이 우수한 정격 케이블로 교체하고 접지 콘센트를 사용해야 합니다.144Hz 설정 후 깜빡임: 케이블 대역폭 한계이거나 구형 DP 케이블의 20핀..
1. 짧은 답 (핵심 요약)144Hz 게이밍 모니터를 구매하고 연결했는데 60Hz로만 나오는 이유는 대부분 모니터 불량이 아니라 윈도우 기본값 미변경, 구형 케이블 대역폭 한계, 또는 그래픽 제어판의 해상도 분류 오류 때문입니다.원인 1: 윈도우 11은 모니터를 새로 연결하면 안전을 위해 기본 60Hz로 출력합니다. 설정 > 시스템 > 디스플레이 > 고급 디스플레이에서 주사율을 144Hz로 직접 올려야 합니다.원인 2: NVIDIA 그래픽카드를 쓸 때 상단 Ultra HD 해상도를 고르면 60Hz로 제한됩니다. 스크롤을 내려 PC 해상도를 골라야 144Hz가 활성화됩니다.원인 3: 구형 HDMI 1.4 케이블이나 본체 메인보드 내장 포트에 꽂으면 대역폭 한계로 60Hz를 넘길 수 없습니다. 외장 그래픽카..
시리즈: 3D 에셋 배치 파이프라인 구축기 (번외 1)대상 독자: Node.js로 자식 프로세스와 데이터를 주고받는 개발자, 배치 처리 파이프라인을 만드는 엔지니어문제: 프레임을 빨리 쓰면 FFmpeg이 못 따라온다3D 배치 파이프라인에서 Puppeteer가 캡처한 프레임을 FFmpeg stdin으로 넘기는 구조를 썼다.프레임 하나는 WebP 이미지 버퍼, 모션 하나당 약 180프레임.처음엔 단순하게 for 루프를 돌면서 stdin.write(buffer)를 호출했다.소규모 테스트에서는 문제없었다.그런데 6만 건을 돌리니 4시간쯤 지나서 메모리가 터졌다.원인은 백프레셔(backpressure) 미처리.백프레셔란?Node.js의 Writable.write(chunk)는 내부 버퍼에 여유가 있으면 true,..
10년 차 개발자의 시선프론트엔드 개발자의 생산성을 갉아먹는 가장 큰 주범은 '맥락 전환(Context Switching)'입니다. 컴포넌트 하나를 만들 때도 스토리북(Storybook)을 뒤지고, 컨벤션 확인을 위해 노션(Notion)을 검색하며, API 타입을 보러 스웨거(Swagger)를 켭니다. 하지만 MCP(Model Context Protocol)를 사용하면 이 모든 지식을 개발 에디터(IDE) 안으로 통합할 수 있습니다. 오늘은 Cursor 에디터에 MCP 서버를 연결하여, 프로젝트 전용 문서를 기반으로 AI가 코드를 제안하게 만드는 차세대 워크플로우를 소개합니다.1. MCP(Model Context Protocol)란 무엇인가?MCP는 AI 모델이 로컬 파일 시스템, 데이터베이스, 혹은 특..