Trawling

개발 · 최신기사

언어와 프레임워크, SDK와 개발 방식·도구의 변화를 다룹니다.

버그는 로직이 아니라 경계에서 발생합니다

발행

HivePlane v0.2.0의 현장 테스트에서 메모리 테스트가 놓친 결함은 값이 데이터베이스나 API 경계를 넘을 때 드러났습니다. 글은 PostgreSQL을 포함한 실제 환경에서 경계 간 데이터 변환과 상태를 검증해야 한다고 설명하며, 댓글에서는 백업 복원 검사의 실제 스키마 확인이 빠졌다는 점을 짚습니다.

C와 Zig에서 QML 사용하기

발행

Qt 바인딩 프로젝트에 C와 Zig용 QML 지원이 추가됐습니다. 예제 저장소에서 기존 라이브러리 기능과 일부 private Qt 클래스 바인딩, 메타프로그래밍을 활용하는 방식을 확인할 수 있습니다.

프로그래밍을 즐기는 건 여전히 괜찮습니다

발행

Chris Kiehl은 손으로 코드를 쓰는 일이 업무에서 경제적으로 달라졌더라도 프로그래밍을 취미로 즐길 이유는 남아 있다고 말합니다. Reddit에서는 취미로서의 즐거움과 AI 도입으로 달라진 일자리와 업무 만족도는 별개의 문제라는 반론이 이어집니다.

Servo의 8월: CSS Grid, 텍스트 선택 등

발행

Servo 0.6.0에는 8월에 반영한 417개 커밋이 담겼습니다. CSS Grid를 기본 활성화하고 텍스트 선택, 웹 API, 접근성, 탐색과 문서 로딩을 개선했으며 SpiderMonkey v153으로 업데이트했습니다. 일부 기능은 아직 명령행 설정으로 켜야 합니다.

윌리엄 깁슨과 사이버스페이스 상표 출원

발행

Autodesk가 1989년 가상현실 프로젝트를 위해 'cyberspace' 상표를 출원했고, 윌리엄 깁슨은 이에 항의했습니다. 깁슨이 보복으로 'Eric Gullichsen'을 상표 등록하려 했다는 이야기는 사실이 아니며, Timothy Leary가 퍼뜨린 장난에서 시작했다고 당시 Autodesk 연구원이 밝힙니다.

FPU 에뮬레이터를 슈퍼최적화하기

발행

저자는 부동소수점 값의 비트 표현에서 최하위 비트에 해당하는 값을 구하는 분기문을 없애려고, 후보 수식을 열거하고 테스트 사례로 검증하는 슈퍼최적화기를 만들었습니다. 검색기는 사람이 쉽게 떠올리기 어려운 비트 연산 조합을 찾아냈고, 저자는 이를 개발 중인 FPU 에뮬레이터에 적용했습니다.

프로그래밍을 위한 부고

발행

프로그래밍을 좋아해 AI 코딩 에이전트 사용을 미뤄 온 개발자가 직접 써 본 뒤 느낀 상실감을 적었습니다. 에이전트가 버그 수정과 최적화, 미뤄 둔 리팩터링을 빠르게 해내면서 프로그래밍의 재미와 개발자라는 직업의 의미가 흔들린다고 말합니다.

Teal - 정적 타입을 더한 Lua 방언

발행

Teal은 배열, 맵, 레코드, 인터페이스, 유니온 타입, 제네릭을 타입 주석으로 표현하는 Lua 방언입니다. 컴파일러 tl이 .tl 파일을 .lua 파일로 변환하며, Lua의 간결함과 이식성, 임베딩 특성을 유지하는 데 초점을 둡니다.

역방향으로 생각하는 새로운 대여 검사 방식

발행

Valen의 대여 검사기는 함수 본문을 뒤에서 앞으로 훑으며 참조의 사용, 선언, 변경을 추적합니다. 글은 이 방식이 마지막 사용 지점을 찾고 반복문을 처리하는 데 편리하다고 설명하지만, 반복문 처리에는 별도 규칙이 필요하며 검사기의 기능도 아직 완성되지 않았습니다.

의존성 설치의 신뢰는 어디서 깨지나: 이름, 패키지 매니저, 바이너리

발행

AI가 제안한 패키지 이름이 실제로 존재하는지, 패키지 매니저가 내려받은 파일의 변경을 막는지, 배포된 바이너리가 소스와 일치하는지는 서로 다른 검증 문제입니다. 세 자료를 비교하면 한 단계의 확인만으로는 다음 단계의 위험까지 해결할 수 없으며, 각 경계에서 무엇을 확인하는지가 달라집니다.

하이브리드 이미지 만들기

발행

Jeremy Kun은 Fourier transform으로 한 이미지의 저주파 성분과 다른 이미지의 고주파 성분을 추출해 하나로 합치는 방법을 설명합니다. 가까이서는 Einstein이, 멀리서는 Marilyn Monroe가 보이는 이미지처럼 관찰 거리에 따라 인식이 달라지는 결과를 Gaussian filter와 Python 코드로 만듭니다.

Show HN: 고품질 오리 소리 합성기

발행

오리 소리를 녹음 파일 재생 없이 실시간으로 합성하는 작은 오리 연못 시뮬레이터입니다. 연못가에서 듣는 위치에 따라 소리가 들려오며, 제작자는 오리의 울음 기관을 모델링했다고 설명합니다.

Lean에 검증된 커널이 함께 배포됩니다

발행

Lean v4.35.0은 개발 내용을 여러 커널로 다시 검사하는 `lake check`를 제공합니다. Lean으로 작성하고 일관성을 증명한 con-leche와 Rust로 옮겨 검증한 con-ron을 포함해 검사 경로를 늘렸으며, 정식 배포 커널과 구현·컴파일러의 오류가 증명 결과에 끼칠 위험을 줄이는 데 초점을 둡니다.

Around The World 게임의 하늘을 더 아름답게 렌더링하기

발행

항해 탐험 게임 Around The World의 개발자가 Godot에서 구름의 다중 산란, 대기 산란, 수평선과 톤 매핑을 조정해 하늘을 다듬습니다. 직접 만든 Rust 광선 추적기로 기존 구름 조명 테이블의 한계를 확인하고, 행성과 달의 공전·자전을 엔진에서 모델링해 일출과 일몰을 계산합니다.

포맷하면 스네이크로 바뀌는 테트리스 JavaScript 파일

발행

JavaScript 포맷터와 난독화 해제 도구가 코드를 읽기 좋게 바꾸는 과정에서 프로그램 동작까지 바꿀 수 있다는 분석입니다. 작성자는 37개 이상의 도구에서 186가지 기법을 찾아, 원본은 테트리스를 실행하고 처리된 코드는 스네이크를 실행하는 시연을 만들었습니다.

기술 면접에서 아는 답도 막막해질 때, 말문을 트는 연습

발행

기술 면접에서 답을 알면서도 말문이 막히는 상황을 압박에 익숙하지 않은 반응으로 설명합니다. 낯선 사람에게 말을 거는 낮은 강도의 연습부터 면접 중 생각을 소리 내어 말하는 방법까지 단계별로 제안합니다.