Category: 개발

AI 지원 코딩의 위험과 모범 사례

2025-08-04
AI 지원 코딩의 위험과 모범 사례

점점 더 널리 보급되고 있는 AI 지원 코딩에서 AI 생성 코드를 무턱대고 신뢰하는 것은 큰 위험으로 이어질 수 있습니다. 이 글에서는 AI 생성 코드를 검토하지 않으면 아키텍처 저하, 코드 구현에 대한 이해 부족, 보안 취약성 유발로 이어질 수 있다고 지적합니다. 저자는 비동기 작업과 동기 작업을 구분하고 핵심 기능에는 동기적인 협업 코딩 방식을 사용할 것을 권장합니다. 즉, AI의 제안을 즉시 확인하고 수정하여 코드의 품질과 보안을 확보하는 것입니다. 결론적으로 저자는 AI가 개발자의 보조 도구일 뿐 대체재가 아니며, 코드 이해는 여전히 개발자의 주요 책임이라고 강조합니다.

개발

KDE Plasma, Wayland 포커스 관리 강화로 포커스 탈취 방지

2025-08-04
KDE Plasma, Wayland 포커스 관리 강화로 포커스 탈취 방지

KDE Plasma의 창 관리자인 KWin이 Wayland의 창 포커스 관리를 강화합니다. 이전에는 X11에서 포커스 탈취가 불편하고 심지어 보안 위험이기도 했습니다. Wayland는 XDG Activation 프로토콜을 사용하여 이를 완화하지만 일부 애플리케이션은 여전히 이를 위반합니다. KWin의 새로운 "극단적인" 포커스 탈취 방지 설정은 창 활성화에 유효한 토큰을 사용하도록 강제하여 포커스 탈취를 제거하고 사용자 경험을 향상시킵니다. 이 업데이트는 Dolphin과 KRunner와 같은 애플리케이션의 포커스 문제를 해결하고 백엔드 DBusRunner의 활성화 토큰 관리를 개선합니다.

개발

arXivLabs: arXiv 기능에 대한 커뮤니티 협업

2025-08-04
arXivLabs: arXiv 기능에 대한 커뮤니티 협업

arXivLabs는 개발자가 arXiv 웹사이트에서 직접 새로운 기능을 개발하고 공유할 수 있는 플랫폼입니다. 참가자는 arXiv의 개방성, 커뮤니티, 우수성, 사용자 데이터 개인 정보 보호라는 가치를 받아들여야 합니다. arXiv 커뮤니티를 개선할 아이디어가 있으신가요? arXivLabs에 대해 자세히 알아보세요.

개발

SDF 안티앨리어싱: 생각보다 복잡하다

2025-08-04
SDF 안티앨리어싱: 생각보다 복잡하다

이 글에서는 부호가 있는 거리 함수(SDF)의 안티앨리어싱의 복잡성을 자세히 살펴봅니다. 간단해 보이지만 실제로는 기울기, 전이 영역 너비, 좌표 공간, 색 공간 선택 등 여러 가지 고려 사항이 포함됩니다. SDF 안티앨리어싱에서 선형 보간 및 smoothstep 함수의 사용법을 설명하고, 다양한 접근 방식을 비교하며, 픽셀 크기, 수치 미분, 다양한 색 공간을 사용한 실용적인 해결책을 제공합니다.

개발 그래픽스

arXivLabs: 커뮤니티와의 협업을 통한 실험 프로젝트

2025-08-04
arXivLabs: 커뮤니티와의 협업을 통한 실험 프로젝트

arXivLabs는 협력자들이 arXiv의 새로운 기능을 웹사이트에서 직접 개발하고 공유할 수 있는 프레임워크입니다. arXivLabs에 참여하는 개인 및 조직은 개방성, 커뮤니티, 우수성, 사용자 데이터 개인 정보 보호라는 arXiv의 가치를 공유합니다. arXiv는 이러한 가치를 준수하며, 이러한 가치를 준수하는 파트너와만 협력합니다. arXiv 커뮤니티에 가치를 더할 프로젝트 아이디어가 있으십니까? arXivLabs에 대해 자세히 알아보세요.

개발

gmap: 명령줄 Git 저장소 탐색기

2025-08-04
gmap: 명령줄 Git 저장소 탐색기

gmap은 Git 저장소 활동을 빠르고 직관적으로 분석할 수 있는 강력한 명령줄 도구입니다. 히트맵으로 커밋 이력을 시각화하고, 변경 사항이 많은 파일을 찾고, 기여자 역학 등을 조사할 수 있습니다. 복잡한 명령어 없이도 '어떤 파일이 가장 많이 변경되었는가?', '누가 가장 많이 기여했는가?', '휴면 코드 영역이 있는가?' 와 같은 중요한 질문에 답할 수 있습니다. 개발자의 효율성을 높이는 도구입니다.

개발

macOS에서 BorgBackup과 borgmatic 구성하기

2025-08-04

이 글에서는 macOS에서 BorgBackup과 borgmatic 백업 도구를 구성하는 방법을 자세히 설명합니다. launchctl을 사용하여 LaunchAgent를 생성하고 borgmatic을 예약하는 방법과 로깅 제한을 해결하는 방법을 설명합니다. 파일 복원, 키 내보내기, 백업 유효성 검사, 백업 테스트 방법도 제공합니다. 또한 BorgBackup과 Time Machine의 장단점을 비교하고, 두 가지를 모두 사용하고 3-2-1 백업 규칙을 따를 것을 권장합니다.

개발

IOCCC 28: 23개의 역대급 수상작!

2025-08-04

4년 만에 돌아온 제28회 국제 난독화 C 코드 콘테스트(IOCCC)는 무려 23개의 수상작이라는 경이로운 기록을 세웠습니다! 출품작 수와 질이 크게 향상되었으며, 웹사이트 재구축, 심사 과정 개선, 도구 개발 등 눈에 띄는 발전이 있었습니다. 심사 기간은 단 33일로 단축되었습니다. 수상작들은 세계에서 가장 작은 LLM 추론 엔진, Intel 4004 에뮬레이터, 그리고 놀라운 코드 기법들을 선보이며 뛰어난 창의성을 과시했습니다. 주최측은 향후 콘테스트에도 지속적인 참여와 혁신을 장려하고 있습니다.

개발

url.town 디렉토리에 Arch Linux 추가

2025-08-04
url.town 디렉토리에 Arch Linux 추가

omg.lol 커뮤니티가 관리하는 웹 디렉토리인 url.town에 Arch Linux가 추가되었습니다. Arch Linux는 경량적이고 유연한 DIY(Do It Yourself) 범용 GNU/Linux 배포판으로, 사용자는 설치한 것만 사용합니다. 이 디렉토리에는 블로그, 게임, 아트, 기술 뉴스 등 다양한 다른 리소스도 포함되어 있습니다.

개발

Schematra: CHICKEN Scheme 기반의 Sinatra 영감을 받은 최소한의 웹 프레임워크

2025-08-04
Schematra: CHICKEN Scheme 기반의 Sinatra 영감을 받은 최소한의 웹 프레임워크

Schematra는 Sinatra에서 영감을 받은 CHICKEN Scheme 기반의 최소한의 웹 프레임워크입니다. 학습과 실험을 위해 설계되었으며, 간단한 라우팅 정의, 미들웨어 지원 및 기본적인 템플릿 시스템을 제공합니다. Schematra는 사용이 간편하며 Tailwind CSS 및 htmx와 같은 최신 도구와 잘 작동하므로 Scheme 학습, 간단한 애플리케이션 프로토타이핑 및 웹 프레임워크의 내부 작동 방식 탐구에 적합합니다.

개발

프로그래밍 교육에 대한 재고: 시각적이고 이해하기 쉬운 프로그래밍을 향하여

2025-08-04

본 논문은 JavaScript와 Processing에서 볼 수 있듯이 현재의 "라이브 코딩" 환경이 프로그래밍 교육에 있어서 가지는 결점을 비판합니다. 이러한 환경은 강력한 사고방식을 효과적으로 지원하지 못하며, 프로그래머가 프로그램 실행 과정을 시각적으로 이해할 수 있도록 해주지 못한다고 주장합니다. 저자는 프로그램의 흐름과 데이터 상태를 이해하는 것이 프로그래밍 학습의 핵심이며, 타임라인이나 데이터 시각화와 같은 시각화 기법을 사용하여 프로세스를 더 투명하고 이해하기 쉽게 만들어야 한다고 제안합니다. 프로그래밍 언어 설계의 중요성 또한 강조하며, 인간의 사고방식에 더 가까운 메타포와 이해하기 쉬운 구문을 사용할 것을 권장합니다. 창의적인 학습을 장려하기 위해 분해와 재구성 방법을 강조합니다.

개발

UniFi OS Server 얼리 액세스: 점진적 개선인가, 게임 체인저인가?

2025-08-04
UniFi OS Server 얼리 액세스: 점진적 개선인가, 게임 체인저인가?

Ubiquiti의 UniFi OS Server가 얼리 액세스 버전으로 출시되어 MSP와 엔터프라이즈 IT에 상당한 업그레이드를 제공할 것으로 기대됩니다. 이 자체 호스팅 플랫폼을 통해 자체 하드웨어에서 UniFi Network 및 특정 앱(InnerSpace, Identity)을 실행할 수 있으므로 Dream Machines나 Cloud Keys가 필요 없습니다. InnerSpace, Site Magic, UniFi Identity와 같은 새로운 클라우드 기능을 사용할 수 있지만 Cloud Gateway와의 호환성 부족 및 불완전한 조직 관리 기능과 같은 제한 사항도 남아 있습니다. UniFi Network를 이미 자체 호스팅하는 사용자에게는 환영할 만한 추가 기능이지만, unifi.ui.com을 대체하거나 포괄적인 MSP 제어판을 제공하는 것은 아닙니다. 혁명이라기보다는 점진적인 개선이라고 할 수 있습니다.

개발

난수 생성의 병목 현상: 바로 당신의 PRNG가 아니다

2025-08-04

이 글은 이야기를 통해 난수 생성 알고리즘 최적화에서 중요한 문제점을 부각합니다. 병목 현상은 PRNG 자체가 아니라 특정 범위 내의 난수를 생성하는 방법에 있을 수 있다는 것입니다. 저자는 고전적인 모듈러 연산, 부동 소수점 곱셈, 정수 곱셈, 그리고 기각 샘플링이나 비트 마스킹과 같은 몇 가지 편향되지 않은 방법을 포함한 다양한 범위의 난수 생성 방법을 비교합니다. 실험 결과는 최적의 방법은 PRNG와 데이터 규모에 따라 다르다는 것을 보여주지만, Lemire의 정수 곱셈 기반 방법은 최적화 후 뛰어난 성능을 보이며 성능을 크게 향상시켰습니다. 이 글에서는 다양한 PRNG의 성능도 비교하여 가장 빠른 PRNG라도 범위 생성 방법 최적화로 인한 성능 향상에는 훨씬 못 미친다는 것을 발견했습니다.

개발

Claude Code 덕분에 프로그래밍 습관이 바뀌었습니다: Python에서 형식 안전 언어로

2025-08-04

Claude Code를 사용하기 시작하면서 제 프로그래밍 습관이 극적으로 바뀌었습니다. 10년 넘게 Python을 애용해 왔지만, 이제는 TypeScript, Rust, Go와 같은 형식 안전 컴파일 언어로 프로젝트를 원활하게 관리하고 있습니다. 형식이 지정되고 컴파일되는 언어는 안전성이 보장되기 때문에, '기분 내키는 대로 코딩하는' 스타일(기존에는 Python에서만 사용했던 방식)에도 놀랍도록 적합하다는 것을 알게 되었습니다. 대규모 프로젝트에서는 AI 도구 덕분에 Python과 비교했을 때 Claude Code와 Rust를 조합하는 것이 훨씬 빠르고 안전합니다. 예를 들어 TypeScript 프런트엔드 코드의 상당 부분을 리팩토링했을 때, Claude Code가 tsc와 연동하여 컴파일 시 안전성이 보장되어 몇 시간 만에 수천 줄의 변경을 해도 아무것도 망가지지 않았고, 오히려 안정성이 향상되었습니다. LLM이 완벽하지는 않지만 Python의 빠른 프로토타이핑 장점을 Python의 안전성 부족, 속도 저하, 모호성과 같은 단점 없이 얻을 수 있게 되었습니다. 따라서 Python의 프로덕션 환경에서의 채택은 감소할 것이라고 예상합니다.

개발

파이썬의 부상: 커뮤니티 중심의 오픈소스 서사시

2025-08-04
파이썬의 부상: 커뮤니티 중심의 오픈소스 서사시

1991년의 겸손한 시작부터 현재 세계에서 가장 인기 있는 프로그래밍 언어가 된 파이썬의 여정은 열정, 인내, 그리고 커뮤니티의 강력한 이야기입니다. 초기에는 자금난과 조직 운영의 어려움에 직면했지만, Guido van Rossum이라는 선구적인 개발자와 활기찬 커뮤니티의 노력으로 Python Software Foundation 설립을 통해 발전을 이루었습니다. 이 다큐멘터리는 커뮤니티의 중요성, 공유된 가치, 그리고 오픈소스 협업의 힘이 어려움을 극복하고 눈부신 성공을 거두는 데 얼마나 중요한지를 강조합니다.

개발

TypeScript 타입 파서: TypeScript 타입만으로 작성된 TypeScript 타입 파서

2025-08-04
TypeScript 타입 파서: TypeScript 타입만으로 작성된 TypeScript 타입 파서

한 개발자가 JavaScript를 사용하지 않고 TypeScript 타입만으로 작성된 TypeScript 타입 파서를 만들었습니다. 이 파서는 TypeScript 타입 문자열을 @babel/parser와 유사한 AST로 변환합니다. 코드는 우아하고 효율적이지만, tsc를 실행할 때마다 파서 코드를 평가하는 데 추가 시간이 걸리므로 컴파일 속도에 대한 논의를 불러일으키고 있습니다.

개발

PDF 파싱: 명세와의 싸움

2025-08-04

PDF 파일 파싱은 간단해 보입니다. 버전 헤더, 교차 참조 테이블, 객체 오프셋을 찾고 마지막으로 카탈로그 사전을 만듭니다. 하지만 현실은 냉혹합니다. PDF 명세는 절대적인 규칙이 아니며, 실제 파일에는 `startxref` 포인터 위치가 잘못되었거나, 파일 시작 부분에 정크 데이터가 있거나, 교차 참조 테이블 형식이 잘못된 등 다양한 비준수 상황이 있습니다. 저자는 수많은 실제 PDF 파일 분석을 통해 이러한 문제점을 밝히고, 기존 PDF 뷰어가 작동하는 이유는 비준수 상황을 처리하기 때문이라고 지적합니다. 이 글은 PDF 파싱의 어려움을 쉽게 이해할 수 있도록 설명하고 개발자에게 귀중한 경험을 제공합니다.

효과적인 디자인 문서 작성법: 실용 가이드

2025-08-04

이 에세이는 효과적인 디자인 문서를 작성하는 방법에 대한 실용적인 가이드를 제공합니다. 디자인 문서를 수학적 증명에 비유하여 디자인의 최적성을 독자에게 설득하는 것을 목표로 합니다. 저자는 명확한 구성을 강조하고, 체계적이지 않은 '스파게티 디자인 문서'의 함정을 피하는 것을 권장합니다. 중요한 조언으로는 간결한 언어 사용, 단락당 하나의 주요 아이디어, 그리고 자세한 정보를 위한 부록 사용 등이 있습니다. 연습과 엄격한 편집을 통해 명확하고 간결하며 설득력 있는 문서를 목표로 합니다.

Node.js의 현대화: 2025년 개발의 새로운 패러다임

2025-08-04

Node.js는 콜백 중심의 CommonJS 중심 환경에서 웹 표준 기반의 현대적인 개발 환경으로 눈부시게 발전했습니다. 이 글에서는 ESM 모듈, 내장 웹 API(Fetch API 및 AbortController 등), 내장 테스트 러너, 최상위 await, Worker Threads, 향상된 개발 환경, 보안 및 성능 모니터링, 그리고 최신 패키지 관리 등 주요 개선 사항을 살펴봅니다. 이러한 발전으로 Node.js 애플리케이션은 유지 관리가 용이해지고 성능이 향상되며 광범위한 JavaScript 생태계와 호환됩니다. 이러한 최신 패턴을 점진적으로 채택함으로써 개발자는 더욱 강력하고 유지 관리가 쉬운 Node.js 애플리케이션을 구축할 수 있습니다.

JSAR: 공간 웹의 미래를 구축하기 위한 강력한 엔진

2025-08-03
JSAR: 공간 웹의 미래를 구축하기 위한 강력한 엔진

JSAR 프레임워크는 최신 웹 표준을 포괄적으로 지원합니다. 여기에는 완벽한 ES2023 JavaScript, 네이티브 TypeScript 컴파일, ECMAScript 모듈, WebAssembly, Web Worker 등이 포함됩니다. 3D 그래픽에서는 WebGL 1.0과 2.0을 완벽하게 지원하며, WebGPU 지원도 개발 중입니다. JSAR은 공간, 스테레오 렌더링, 입력 소스, 핸드 트래킹을 포함한 완벽한 WebXR 디바이스 API 지원도 제공합니다. DOM API, HTML5, CSS3 지원은 진행 중이지만, Canvas 2D 렌더링은 완벽하게 구현되었습니다. JSAR은 빠른 시작 안내와 예제 튜토리얼을 제공하며, 끊임없이 성장하는 개발자 커뮤니티를 자랑합니다.

개발

GitHub Copilot 사용자 2천만 명 돌파, AI 코딩 툴 시장 경쟁 치열

2025-08-03
GitHub Copilot 사용자 2천만 명 돌파, AI 코딩 툴 시장 경쟁 치열

마이크로소프트 산하 GitHub의 AI 코딩 툴인 Copilot 사용자 수가 2천만 명을 돌파했으며, 지난 3개월 동안 500만 명의 신규 사용자가 추가되었다. Fortune 100 기업의 90%가 Copilot을 채택하고 있으며, 기업 고객 성장률은 분기별 75%에 달한다. 일반적인 AI 챗봇과 비교하면 사용자 수는 적지만, Copilot은 기업 고객에 대한 집중과 AI 기반 코드 검토 및 워크플로 자동화 기능 확장을 통해 시장에서 강력한 입지를 확보하고 있다. 하지만 시장은 과열되고 있으며, Cursor와 같은 경쟁사들이 급성장과 자금 조달을 통해 Copilot의 주도권에 도전하고 있으며, Google과 OpenAI와 같은 거대 기업들도 시장에 진출하고 있다. 앞으로 AI 코딩 툴 시장은 더욱 치열한 경쟁을 펼칠 것으로 예상된다.

개발 기업 시장

arXivLabs: arXiv 새로운 기능 개발을 위한 커뮤니티 협업

2025-08-03
arXivLabs: arXiv 새로운 기능 개발을 위한 커뮤니티 협업

arXivLabs는 협력자들이 arXiv 웹사이트에서 직접 새로운 arXiv 기능을 개발하고 공유할 수 있는 프레임워크입니다. arXivLabs에 참여하는 개인 및 조직은 개방성, 커뮤니티, 우수성, 사용자 데이터 개인 정보 보호라는 arXiv의 가치를 공유합니다. arXiv는 이러한 가치에 전념하며, 이를 준수하는 파트너와만 협력합니다. arXiv 커뮤니티에 가치를 더할 프로젝트 아이디어가 있으십니까? arXivLabs에 대해 자세히 알아보세요.

개발

스키 대여 문제: 최적 비용을 위한 랜덤화 알고리즘

2025-08-03

이 글에서는 온라인 알고리즘에서 흥미로운 예시인 고전적인 스키 대여 문제를 다룹니다. 문제: 스키어는 스키를 탈 날짜를 모릅니다. 대여는 하루에 1단위의 비용이 들고, 구매는 B단위의 비용이 듭니다. 이 글에서는 최적의 오프라인 솔루션을 자세히 설명하고, 그런 다음 경쟁 비율이 2인 간단한 온라인 알고리즘을 분석합니다. 중요한 것은 이산 문제를 근사하기 위해 연속 확률 분포를 사용하는 랜덤화 알고리즘을 심층적으로 파고들어, 간단한 접근 방식보다 훨씬 우수한 약 e/(e-1)의 기대 경쟁 비율을 달성하는 점입니다. 단일 의사 결정에서는 현실 세계에 직접 적용할 수 없지만, 이 알고리즘은 많은 유사한 선택을 포함하는 시나리오에 대해 이론적으로 최적의 전략을 제공합니다.

CI 성능 테스트의 노이즈 제거: CodSpeed Macro Runners의 돌파구

2025-08-03
CI 성능 테스트의 노이즈 제거: CodSpeed Macro Runners의 돌파구

중대한 회귀를 방지하기 위해 CI에서 성능 게이트를 만드는 것은 호스팅된 러너의 노이즈로 인해 어려움이 있었습니다. 이 기사에서는 다양한 벤치마킹 스위트를 사용하여 이러한 노이즈를 측정하는 방법을 살펴봅니다. GitHub Actions의 결과는 2.66%의 변동 계수를 보여주었고, 이는 2% 성능 게이트에 대해 45%의 오탐율로 이어졌습니다. 향상된 안정성을 갖춘 베어메탈 클라우드 인스턴스에서 실행되는 CodSpeed의 Macro Runners는 이러한 노이즈를 크게 줄였습니다. Macro Runners는 0.56%의 평균 분산을 달성하여 오탐율을 0.04%로 낮췄습니다. 이를 통해 더욱 정확한 성능 게이트가 가능해져 기여자에게 잘못된 경고를 주지 않고 미묘한 회귀를 감지할 수 있습니다.

개발

원격 팀 유대감 강화: 'Ramblings' 채널 활용법

2025-08-03
원격 팀 유대감 강화: 'Ramblings' 채널 활용법

2~10명의 원격 팀이라면 팀 채팅 앱에 개별 'Ramblings' 채널을 만들어 보세요. 개인 일기처럼 활용하여 그룹 채널을 어지럽히지 않고 소통을 증진시킬 수 있습니다. 팀원들은 프로젝트 아이디어, 기사에 대한 생각, '만약 ~라면' 시나리오, 개인적인 업데이트 등을 주 1~3회 간단히 게시합니다. 각 채널은 팀원의 이름을 따서 만들며, 게시물 작성은 해당 팀원만 가능합니다. 다른 팀원은 답글을 달 수 있습니다. 채널들은 그룹으로 정리되며 기본적으로 음소거되고, 읽을 필요는 없습니다. Obsidian의 2년간의 실험 결과, 'Ramblings'는 인간적인 유대감을 유지하고 창의성을 자극하며 오랜 문제를 해결하는 놀라울 정도로 효과적인 방법임을 보여주었습니다. 잡담의 대체재 역할을 합니다.

개발 원격 팀

Haskell로 작성된 산술 바이트코드 가상 머신: 파서

2025-08-03
Haskell로 작성된 산술 바이트코드 가상 머신: 파서

이 게시물은 Haskell에서 산술 표현식을 위한 바이트코드 가상 머신을 구축하는 프로젝트의 첫 번째 부분인 파서에 대해 자세히 설명합니다. 이 VM은 let 바인딩 및 중첩된 let 표현식을 포함한 간단한 산술 표현식을 구문 분석, 컴파일, 해석 및 실행합니다. 저자는 표현식 구문, 파서 구현(attoparsec 라이브러리 사용), 오류 처리를 설명합니다. 파서의 정확성을 검증하기 위한 단위 테스트가 제시됩니다. AST 인터프리터의 구현 및 테스트에 대한 간략한 개요도 포함되어 있습니다. 향후 게시물에서는 컴파일러와 가상 머신을 다룹니다.

개발

기존 Unix 로그인 서버의 예상치 못한 지속성

2025-08-03

저자는 최신 그린필드 개발로 컴퓨팅 환경을 가상적으로 재구축할 때 기존 Unix 로그인 서버가 놀라울 정도로 지속적으로 사용되고 있다는 점을 탐구합니다. 컨테이너화가 보편화되었음에도 불구하고, CPU와 RAM 제한이 있는 범용 서버와 무제한 리소스 액세스를 제공하는 컴퓨팅 서버의 두 가지 유형이 유지됩니다. 사용률은 감소했지만, 이러한 서버는 특히 내부 머신에 대한 SSH 연결이나 VSCode와 같은 개발 환경의 백엔드를 실행하는 경우 놀랍도록 관련성을 유지합니다. 또한 cron 작업에서 로그인 서버의 사용과 사용자가 파일 서버에 코드를 저장하는 이유(SLURM 클러스터 및 컴퓨팅 서버 사용과 밀접하게 관련됨)에 대해서도 언급합니다. 견고한 지원 모델이 없기 때문에 정확한 사용 현황을 추적하기 어렵습니다.

개발 Unix 서버

Claude Code: 프로그래밍의 사진 시대?

2025-08-03

이 글은 AI 코딩 어시스턴트인 Claude Code를 6주간 사용한 경험을 되돌아봅니다. Claude Code는 저자의 코딩 방식을 극적으로 바꿔놓았습니다. 코드베이스 마이그레이션 및 테스트 전략 구축 등 일반적으로 수개월 또는 수년이 걸리는 작업들을 많이 완료했습니다. Claude Code는 '먼저 작성하고 나중에 결정하는' 방식을 가능하게 했고, 팀의 게임 프로토타이핑 효율성을 크게 높였습니다. 저자는 그 단점을 인정하면서도 Claude Code가 프로그래밍 패러다임을 근본적으로 변화시켰다고 생각하며, 이는 사진이 회화에 혁명을 일으킨 것과 비슷하다고 말합니다.

개발

Guix의 G 표현식: 상위 수준 코드에 하위 수준 코드 삽입

2025-08-03

Guix는 패키지 정의와 같은 상위 수준 작업과 파생물 생성과 같은 하위 수준 작업 모두에 Scheme을 사용합니다. 상위 수준 코드에 하위 수준 코드를 삽입하기 위해 G 표현식을 사용합니다. 예를 들어, `wesnoth-shepherd-service`의 `start` 필드에서 `#~(...)`는 하위 수준 코드를 전달하고, `#$(...)`는 상위 수준 코드를 이스케이프하여 컴파일러가 하위 수준 코드로 변환합니다. `make-forkexec-constructor` 함수는 자식 프로세스를 생성하고 실행하며, 사용자, 그룹, umask, 환경 변수 설정 등의 기능을 제공합니다.

개발 G 표현식

Claude Code를 사용한 복잡한 코드베이스 개발 효율 향상

2025-08-03
Claude Code를 사용한 복잡한 코드베이스 개발 효율 향상

이 글에서는 저자가 많은 사용자를 보유한 복잡한 코드베이스에 새로운 기능을 구현하기 위해 AI 코딩 도구인 Claude Code를 어떻게 사용하는지 자세히 설명합니다. 저자는 AI 도구가 만능이 아니며 개발자의 적극적인 참여, 코드 검토, 모범 사례 준수가 필요함을 강조합니다. 이 글에서는 저자의 `CLAUDE.md` 파일을 개괄하고, 코딩 전 준비, 코딩 프로세스, 테스트, 데이터베이스 상호 작용, 코드 구성, 도구 사용 등을 포함한 AI 코딩 규칙이 포함되어 있습니다. 저자는 Claude Code와의 워크플로우를 공유하고, `qnew`, `qplan`, `qcode`, `qcheck` 등의 바로 가기 명령어를 사용하여 AI를 안내하고 코드를 검토합니다. 마지막으로 `qgit`를 사용하여 변경 사항을 커밋합니다. 저자는 AI가 생성한 코드를 면밀히 모니터링하고 오류 및 비효율성을 수정하여 기술 부채가 축적되는 것을 방지하라고 독자들에게 경고합니다.

1 2 30 31 32 34 36 37 38 214 215