Makefile 하나로 개발 환경 세팅 끝내기: Home Maker 프로젝트
## 새 맥북을 받았을 때 가장 먼저 하는 일 개발자라면 누구나 공감하는 상황이 있어요. 새 노트북을 받거나 OS를 밀고 새로 깔았을 때, 그 끝없는 개발 환경 세팅 말이에요. Homebrew 설치하고, 터미널 설정하고, Git 설정하고, 각종 CL...
ESP32-S31 발표 — 기가비트 이더넷에 Wi-Fi 6까지, 임베디드의 새 괴물이 왔다
## 무슨 일이 있었나요? IoT(사물인터넷)와 임베디드 개발자들에게 친숙한 Espressif가 새로운 칩 **ESP32-S31**을 발표했어요. ESP32 시리즈라고 하면 아두이노 프로젝트부터 산업용 IoT까지 폭넓게 쓰이는 마이크로컨트롤러(M...
AI 시대, 프로그래밍의 시작점이 바뀌고 있다
## 우리가 알던 프로그래밍이 달라지고 있어요 "프로그래밍"이라고 하면 뭐가 떠오르시나요? 빈 에디터를 열고, 한 줄 한 줄 코드를 타이핑하는 모습? 그런데 최근 몇 년 사이에 이 풍경이 빠르게 바뀌고 있어요. AI 코딩 어시스턴트가 등장하면서,...
미쉐린이 왜 Clojure를 선택했을까 — 대기업에서 함수형 언어 도입기
## 타이어 회사가 Clojure를? 타이어로 유명한 미쉐린(Michelin)이 자사 엔터프라이즈 시스템에 Clojure를 도입한 사례가 다시 주목받고 있어요. "타이어 회사가 무슨 프로그래밍 언어?"라고 생각할 수 있는데요, 미쉐린은 전 세계 ...
테크 뉴스를 읽는 당신,
직접 만들어볼 준비 되셨나요?
17가지 수익 모델 실습 · 144+ 강의 · 자동화 소스코드 제공
git bisect로 버그를 못 잡겠다면? 베이지안 확률로 비결정적 버그를 추적하는 git-bayesect
## git bisect, 좋긴 한데 한계가 있었죠 `git bisect`는 버그가 처음 발생한 커밋을 찾아주는 Git의 킬러 기능이에요. 이진 탐색(binary search)으로 커밋 히스토리를 반으로 쪼개가면서, "이 커밋은 괜찮아 / 이 커...
SQL만으로 체스 게임을 만들 수 있다고? 순수 SQL 체스 엔진의 세계
## 데이터베이스 쿼리로 체스를 둔다? 보통 SQL이라고 하면 데이터를 조회하고, 삽입하고, 수정하는 용도로 쓰잖아요. "SELECT * FROM users WHERE ..." 이런 식으로요. 그런데 누군가가 이 SQL만 가지고, 그러니까 다른 ...
TruffleRuby: GraalVM 위에서 다시 태어난 루비, 얼마나 빨라졌을까
## 루비가 느리다는 편견, 이제 깨질 때가 됐어요 루비(Ruby)를 쓰는 개발자라면 한 번쯤은 "루비는 느리다"는 말을 들어봤을 거예요. Rails로 서비스를 만들면 초기 개발 속도는 빠르지만, 트래픽이 늘어나면 성능 문제가 발목을 잡는다는 이야기...
Haskell로 마트 장보기를 자동화한 개발자 — 리버스 엔지니어링으로 만든 CLI 쇼핑 도구
## 터미널에서 장을 본다고요? 개발자들 사이에서 "삽질의 끝판왕"이라고 불릴 만한 프로젝트가 하나 등장했어요. 독일의 대형 마트 체인인 **REWE**의 API를 리버스 엔지니어링해서, **터미널 명령어 한 줄로 장보기를 할 수 있는 CLI 도...
Clojure 다큐멘터리가 만들어지고 있어요 — 프로그래밍 언어의 철학을 다룬 영화
## 프로그래밍 언어에 대한 다큐멘터리라니 프로그래밍 언어를 주제로 한 다큐멘터리 영화가 제작되고 있어요. 바로 "Clojure: The Documentary"인데요. 공식 트레일러가 공개됐고, Clojure라는 언어가 어떻게 탄생했는지, 그리고...
Axios NPM 패키지가 해킹당했습니다 — 원격 접속 트로이목마가 심어진 악성 버전 주의
## 무슨 일이 벌어진 건가요? 프론트엔드·백엔드 가리지 않고 거의 모든 자바스크립트 프로젝트에서 쓰이는 HTTP 클라이언트 라이브러리 **Axios**가 NPM에서 해킹당한 사실이 확인됐어요. 공격자가 Axios의 공식 NPM 패키지에 **원격...
AT Protocol, 왜 지금 주목해야 할까 — 분산 소셜 웹의 다음 판
## 소셜 미디어의 '주인'이 바뀔 수 있다면? 트위터(현 X)에서 대규모 사용자 이탈이 일어나면서 대안 플랫폼들이 주목받은 게 벌써 몇 년 전이에요. 그중 Bluesky가 꽤 의미 있는 사용자 기반을 확보했는데요, Bluesky의 진짜 이야기는...
코드로 3D 모델링을? Python CAD 라이브러리 Build123d 살펴보기
## 마우스 대신 코드로 CAD를 3D 모델링이라고 하면 보통 SolidWorks, Fusion 360, FreeCAD 같은 GUI 프로그램에서 마우스로 클릭하고 드래그하는 걸 떠올리잖아요. 그런데 이걸 Python 코드로 할 수 있다면 어떨까요...
[심층분석] 30분에 1대, 연간 1만 대 — 중국 휴머노이드 로봇 대량생산 시대가 열렸다
## 로봇을 '찍어내는' 공장이 등장했다 자동차를 만들 듯 로봇을 조립 라인에서 뽑아내는 시대가 왔어요. 중국에서 휴머노이드 로봇(사람 형태의 로봇)을 **30분에 1대씩, 연간 1만 대** 규모로 생산할 수 있는 자동화 제조 라인이 공식 발표됐거든...
Go로 나만의 Language Server를 만들 수 있는 라이브러리가 나왔어요
## 에디터가 코드를 이해하는 비밀, Language Server Protocol VS Code나 IntelliJ 같은 에디터에서 코드를 작성할 때, 자동완성이 뜨고, 함수 위에 마우스를 올리면 타입 정보가 나오고, 에러에 빨간 줄이 그어지죠? ...
OpenYak: 내 컴퓨터에서 아무 AI 모델이나 돌리고, 파일 시스템까지 직접 제어하는 오픈소스 데스크톱 앱
## AI 도구, 이제 클라우드 없이도 됩니다 요즘 개발하면서 ChatGPT나 Claude 같은 AI 도구 안 쓰는 분 거의 없죠. 그런데 이런 서비스들 쓸 때마다 조금 찜찜한 부분이 있어요. 내 코드, 내 파일을 외부 서버로 보내야 한다는 거거...
Verilog 코드를 팩토리오 회로로 변환하는 컴파일러, RISC-V CPU까지 돌린다
## 게임 안에서 CPU를 만든다고? 팩토리오(Factorio)라는 게임을 아시나요? 공장을 짓고 자동화 라인을 설계하는 게임인데요, 이 게임 안에는 '조합 회로(Combinators)'라는 논리 회로 시스템이 있어요. 신호를 보내고 받고, 조건...
Undroidwish: Tcl/Tk를 단일 실행 파일 하나로 어디서든 돌리는 프로젝트
## Tcl/Tk, 아직도 살아있어요? 프로그래밍을 하다 보면 Tcl/Tk라는 이름을 한 번쯤 마주치게 돼요. Python에서 간단한 GUI를 만들 때 쓰는 tkinter 있잖아요, 그 tkinter의 기반이 되는 게 바로 Tk이고, Tk를 만든 프...
리눅스는 사실 인터프리터다? ELF 바이너리를 바라보는 새로운 시선
## 우리가 당연하게 여기던 것 리눅스에서 프로그램을 실행한다는 건, 터미널에 `./myapp`을 치거나 더블클릭하는 거잖아요. 그런데 이 과정을 자세히 들여다보면 꽤 흥미로운 관점이 하나 나와요. "리눅스 커널은 사실 인터프리터 아닌가?"라는 거예...
C 파일 하나로 끝내는 메모리 할당기 'spaces' — 힙을 직접 관리하고 싶은 분들을 위한 도구
## 메모리 할당, 왜 직접 만들까요? C 언어로 프로그래밍할 때 malloc()과 free()는 거의 숨 쉬듯 쓰는 함수잖아요. 그런데 기본 malloc이 모든 상황에 최적인 건 아니에요. 게임 엔진처럼 매 프레임마다 수천 번 할당·해제를 반복...
APK 파일은 사실 ZIP이다 — 단종된 하드웨어를 되살리는 리버스 엔지니어링 이야기
## 우리가 매일 쓰는 APK, 그 정체를 아시나요? 안드로이드 앱을 설치할 때 사용하는 .apk 파일이 있잖아요. 이 파일의 정체가 뭔지 궁금해하신 적 있나요? 사실 APK는 그냥 ZIP 파일이에요. 확장자만 .apk로 바꿔놓은 것뿐이고, 실제...