핵심 요약
- REBOL, Forth, Janet 등 마이너 프로그래밍 언어를 주로 사용해온 개발자 우포(oofoe)가 자신의 개발 여정과 독특한 철학을 인터뷰로 밝혔습니다.
- 과거 VFx 업계 시절 프로젝트 간 렌더링 자원 쟁탈전을 막기 위해 자원을 적게 요청할수록 우선권을 주는 역발상 렌더팜 제어기를 직접 개발해 600대 규모로 운영했던 일화를 소개했습니다.
- 거대한 코드베이스 대신 작고 직관적인 코드와 데이터 중심 설계를 지향하며, 최근에는 초경량 언어 Janet으로 상용 계측 소프트웨어까지 출시했다고 전했습니다.
요약 애니메이션과 시각효과(VFx) 업계를 거쳐 현재 정밀 계측 소프트웨어 분야에서 일하고 있는 개발자 우포(oofoe)의 흥미진진한 인터뷰가 공개됐습니다. 그는 REBOL, Forth, Janet, NewLisp, Racket 등 비주류 비인기 언어들을 깊게 파고들며 자신만의 독특한 개발 철학을 구축해온 인물입니다.
우포는 아미가(Amiga) OS 설계자인 칼 사센라스(Carl Sassenrath)가 만든 REBOL에 깊은 애정을 드러냈습니다. REBOL은 극도로 간결한 문법, 내장 파싱 표현 문법(PEG), 뛰어난 선언형 GUI 라이브러리를 갖추고 있었으며, '프로그래밍 인 더 스몰(Programming in the small)' 철학을 실현한 언어였습니다. 복잡한 라이브러리 임포트 없이도 날짜, 시간, 좌표 같은 풍부한 데이터 타입을 기본 인식하며, 거대한 프레임워크나 복잡한 절차 없이 가볍고 직관적인 코드로 빠르게 소프트웨어를 만들 수 있었다는 설명입니다. 하지만 사센라스가 64비트 전환 전에 포도 농장을 운영하러 떠나고, 파이썬이나 루비 같은 오픈소스 언어가 급부상하던 시기에 유료화 모델을 고수하면서 역사 속으로 사라지게 되었습니다.
또한 우포는 과거 IMAX 3D 영화 및 VFx 제작 현장에서 겪었던 전설적인 일화도 털어놓았습니다. 당시 스튜디오에서는 프로젝트 간에 렌더링 파워를 더 확보하기 위해 서로의 계정을 해킹하거나 다른 사람의 렌더링 작업을 지워버리는 '렌더링 전쟁'이 빈번했습니다. 이에 우포는 '컴퓨터를 적게 요청한 프로젝트에 최우선 순위를 부여하는' 역발상 스케줄러를 파이썬과 Forth REPL을 결합해 직접 개발했습니다. 이 시스템은 최대 600대의 머신을 제어하며 몇 년간 수많은 라이선스 비용을 아꼈습니다.
그는 거대하고 복잡한 코드베이스는 질문을 다르게 정의하면 대부분 불필요해진다고 강조하며, 문제 해결에 꼭 필요한 최소한의 어휘만 구축하는 Forth의 정신과 데이터 중심 설계를 신봉한다고 밝혔습니다. 최근에는 초경량 Lisp 방언인 Janet을 활용해 산업용 계측 소프트웨어 상용 제품까지 1.7MB 크기의 단일 실행 파일로 패키징해 출시했다고 전했습니다.
Sponsored · 광고