터미널에서 한글·아랍어·데바나가리가 깨지는 이유, 그리고 OSC 66이라는 해결책
## 터미널에서 글자가 깨져 보인 적 있으세요? 개발하다 보면 터미널을 정말 많이 쓰잖아요. 그런데 영어가 아닌 다른 문자—한글, 아랍어, 힌디어(데바나가리 문자), 태국어 같은—를 터미널에서 표시하려고 하면 글자가 깨지거나 겹치거나 이상하게 보이는...
Swift로 코딩 에이전트를 밑바닥부터 만들어보기
## AI 코딩 에이전트, 직접 만들어보면 어떨까? 요즘 Claude Code, GitHub Copilot, Cursor 같은 AI 코딩 에이전트가 개발자 워크플로우에 빠르게 자리잡고 있는데요, 이런 도구들을 매일 쓰다 보면 한 번쯤 궁금해지잖아...
Python httpx를 포크한 개발자 이야기: 오픈소스 거버넌스와 개발자의 선택
## 무슨 일이 있었냐면 파이썬 생태계에서 HTTP 클라이언트 라이브러리 하면 requests가 가장 유명하지만, 최근 몇 년간 **httpx**가 빠르게 자리를 잡아왔어요. httpx는 requests와 비슷한 API를 제공하면서도 async(비동...
Unity 엔진을 뜯어보다가 C++ 코루틴의 존재 이유를 깨달았다는 이야기
## C++ 코루틴, 왜 이렇게 복잡한 걸까? C++20에서 코루틴이 정식으로 들어왔는데요, 써보신 분들은 아시겠지만... 솔직히 처음 보면 "이게 대체 왜 이렇게 생겼지?"라는 생각이 드는 게 정상이에요. Python이나 JavaScript의 ...
테크 뉴스를 읽는 당신,
직접 만들어볼 준비 되셨나요?
17가지 수익 모델 실습 · 144+ 강의 · 자동화 소스코드 제공
Intel이 공개한 디바이스 모델링 언어(DML), 가상 플랫폼 개발의 새 도구
## 가상 플랫폼이 뭔데, 왜 필요한 걸까요? 칩을 설계하거나 시스템 소프트웨어를 개발할 때, 실제 하드웨어가 나오기 전에 소프트웨어를 먼저 테스트해야 하는 상황이 꽤 자주 생겨요. 반도체 하나 만드는 데 수개월에서 수년이 걸리는데, 그동안 손 ...
컴파일러를 직접 만들어보는 여정 — 'A Compiler Writing Journey' 프로젝트
## 컴파일러, 왜 직접 만들어봐야 할까 우리가 매일 쓰는 프로그래밍 언어 — C, Java, Python, Go — 이것들이 실행되려면 반드시 거쳐야 하는 과정이 있어요. 바로 컴파일(compile)이에요. 컴파일이 뭐냐면, 사람이 읽을 수 있...
ARM이 직접 만드는 CPU 'AGI', 스펙과 SKU가 공개됐어요
## ARM이 설계만 하던 시대는 끝났다 ARM이라고 하면 보통 '칩 설계도를 만들어서 다른 회사에 파는 곳'으로 알고 계실 거예요. 퀄컴 스냅드래곤, 애플 M 시리즈, 삼성 엑시노스 — 이 칩들 안에 들어가는 CPU 코어의 원본 설계를 ARM이...
터미널 앱을 그대로 브라우저에서 돌린다 — Gridland라는 새로운 접근법
## 터미널과 브라우저, 두 세계를 하나로 개발자라면 터미널 기반 애플리케이션의 매력을 알 거예요. 가볍고, 빠르고, 키보드만으로 모든 걸 제어할 수 있잖아요. 하지만 터미널 앱에는 늘 아쉬운 점이 하나 있었어요. 다른 사람에게 보여주거나 공유하기가...
결정론적 테스팅의 끝판왕 Antithesis, 헤겔 변증법으로 버그를 찾는다
## 소프트웨어 테스팅, 철학을 만나다 소프트웨어를 만들면서 가장 골치 아픈 게 뭘까요? 아마 "재현이 안 되는 버그"일 거예요. 분명 프로덕션에서 터졌는데, 로컬에서는 아무리 해봐도 안 나오는 그런 버그요. Antithesis라는 회사가 바로 ...
LiteLLM 패키지가 공급망 공격에 뚫렸습니다 — 내 프로젝트는 괜찮을까?
## 무슨 일이 있었나요? LLM(대규모 언어 모델) 프록시 도구로 많이 쓰이는 Python 패키지 **LiteLLM**이 공급망 공격(supply-chain attack)에 노출된 사실이 확인됐어요. 공급망 공격이 뭐냐면, 우리가 평소에 `pi...
[심층분석] AI 트레이더 군단이 회의를 한다? TradingAgents가 보여주는 멀티에이전트 금융 트레이딩의 현재
## 진짜 트레이딩 회사처럼 AI를 조직한다면? 요즘 AI 업계에서 가장 뜨거운 키워드 중 하나가 바로 **멀티에이전트(Multi-Agent)** 시스템이에요. 하나의 거대한 AI가 모든 걸 다 하는 게 아니라, 여러 AI가 각자 전문 분야를 맡...
터미널에서 로그 파일 보기의 끝판왕, lnav를 아시나요?
## 로그 파일, 아직도 tail -f로 보고 계신가요? 서버 운영이나 백엔드 개발을 하다 보면 로그 파일을 들여다보는 시간이 정말 많아요. 뭔가 이상하면 일단 로그부터 확인하잖아요. 그런데 대부분은 `tail -f`, `less`, `grep`...
오픈소스 파라메트릭 3D CAD, Dune3D가 조용히 완성도를 높이고 있다
## 3D CAD의 오픈소스 공백 기계 설계나 제품 디자인을 하는 엔지니어에게 3D CAD 소프트웨어는 매일 사용하는 필수 도구입니다. 하지만 이 영역은 오랫동안 SolidWorks, Fusion 360, CATIA 같은 상용 소프트웨어가 독점해...
정규표현식의 findall은 사실 O(n²)이었다 — 아무도 고치지 않은 이차 시간 복잡도 문제
## 우리가 당연하게 쓰던 findall의 숨겨진 비용 프로그래밍에서 정규표현식(regex)은 텍스트 처리의 만능 도구처럼 쓰입니다. 로그 파싱, 입력 검증, 데이터 추출 등 거의 모든 곳에서 활용되죠. 그런데 정규표현식으로 문자열에서 "모든 매...
LocalStack, GitHub 저장소를 아카이브하고 계정 필수 정책으로 전환 — 오픈소스의 경계는 어디인가
## 무슨 일이 일어났나 AWS 서비스를 로컬 환경에서 에뮬레이션해주는 도구로 널리 사용되던 LocalStack이 자사 GitHub 저장소를 아카이브(archive) 처리했습니다. 아카이브된 저장소는 더 이상 이슈나 PR을 받지 않고, 사실상 읽...
[심층분석] AI로 '돈 버는 과정'을 자동화한다는 MoneyPrinterV2, 자동화 수익의 현실과 윤리적 경계
GitHub에서 스타 2만 개 이상을 기록하며 꾸준히 주목받고 있는 오픈소스 프로젝트가 있다. 이름부터 도발적인 **MoneyPrinterV2** — '온라인으로 돈 버는 과정을 자동화한다'는 것이 프로젝트의 공식 설명이다. Python 3.12 기...
Haskell에도 DataFrame이 왔다 — dataframe 1.0 정식 릴리스의 의미
데이터 분석 하면 보통 Python의 pandas, R의 data.frame을 떠올립니다. 그런데 함수형 프로그래밍의 대표 주자인 Haskell에서 본격적인 DataFrame 라이브러리가 정식 1.0 버전으로 출시되었습니다. `dataframe` 1...
Antithesis가 만든 Bombadil: 웹 UI를 위한 속성 기반 테스팅의 새로운 접근
테스트를 작성할 때 가장 어려운 부분은 뭘까요? 아마 "어떤 시나리오를 테스트해야 하는지"를 정하는 것일 겁니다. 단위 테스트든 E2E 테스트든, 결국 개발자가 머릿속으로 시나리오를 떠올리고 하나하나 수작업으로 작성해야 합니다. 그런데 우리가 미처...
[심층분석] "No Comment" — AI에 대한 대중의 반응이 말해주는 것들, 그리고 ChatGPT 담론의 현재
## 말하지 않아도 알 수 있는 것들 Reddit의 r/ChatGPT 커뮤니티에 올라온 "no comment"라는 제목의 게시글이 개발자와 일반 사용자 모두의 시선을 사로잡았다. 제목 그대로 별다른 설명 없이 올라온 이 게시글은, 역설적으로 AI...
NixOS를 사랑하는 이유 — 선언적 시스템 관리의 매력과 현실
## 운영체제를 코드로 정의한다는 것 서버를 세팅하거나 개발 환경을 구축할 때, 필요한 패키지를 하나씩 설치하고, 설정 파일을 수정하고, 환경 변수를 세팅하는 과정을 거칩니다. 문제는 이 과정이 어디에도 기록되지 않는다는 것입니다. 시간이 지나면 "...