트위터에서는 "이제 프로그래밍은 끝난 문제"라는 밈이 유행하고 있다. 실제로 어느 정도까지 그런지는 모르겠지만, 한 가지만큼은 분명하다. 특정 언어에 익숙해지는 과정 자체가 더 이상 중요하지 않으며, 인간 개발자에게 걸림돌이 되던 마찰들이 에이전트에게는 아무런 장애가 되지 않는다는 점이다. 그 결과, LLM은
그 결과, LLM은 언어 선택의 무게를 크게 덜어냈다. 선택이 마음에 들지 않으면 다른 언어로 통째로 다시 짜면 그만이고, 개발자 본인이 전혀 모르는 언어를 골라 맡겨버릴 수도 있다.
그러다 보니 언어 선택에 있어 마케팅의 영향력이 전보다 훨씬 커졌다. 오랫동안 Rust를 써온 입장에서, 예전이라면 선뜻 손대지 않았을 개발자들이 이제 Rust 코드를 직접 출시하는 광경은 꽤나 흥미롭다. 이 현상에는 최근의 두 가지 분위기 전환이 적잖이 기여했다고 본다. 빠른 소프트웨어에 대한 목소리가 부쩍 높아진 것, 그리고 LLM이 동작을 깨뜨리지 않으면서 코드를 최적화하는 데 탁월하다는 인식이 퍼진 것이다.
Mitchell Hashimoto, Charlie Marsh, Jarred Sumner, Daniel Lemire를 비롯한 여러 인물들은 늘 빠르고 고성능인 소프트웨어에 집착에 가까운 열정을 가져왔는데, 공교롭게도 이들 모두 에이전트가 코드를 작성하는 방식에 열린 태도를 보인다. 그 영향인지 아닌지는 몰라도, 이제 비슷한 생각을 가진 사람들이 속속 합류하고 있다. 자동 리서치(autoresearch) 같은 도구 덕분에 모든 기법을 꿰고 있을 필요조차 없어졌기 때문이다. 에이전트에게 맡기기만 하면 된다. 물론 깊은 지식이 있으면 훨씬 유리하지만.
주위를 둘러보면 빠르고 가볍게 만들고 싶어서 이른바 '어려운 언어'를 택하는 프로젝트가 점점 늘고 있다. Rust만의 이야기도 아니다. Zig도 수혜를 입고 있다. 창시자와 핵심 커뮤니티 일부가 AI 전반에 상당히 비판적인 입장임에도 불구하고 말이다. 실제로 Cloudflare의 새 Artifacts 서비스는 순수 Zig로 작성된 Git 프로토콜 엔진을 탑재했는데, 이를 약 100KB짜리 WebAssembly 모듈로 컴파일한다. Vercel 역시 작고 빠른 Zig 기반 코딩 에이전트인 fx를 공개했다. 내가 파악한 바로는, 이 프로젝트들 대부분이 LLM의 도움을 크게 받아 만들어졌다.
변화는 단순히 비주류 언어를 선택하는 데 그치지 않는다. 훨씬 다루기 어려운 기술 영역으로 뛰어드는 사람들도 부쩍 늘었다. DWARF 파일, eBPF, 커스텀 네트워크 드라이버, 맞춤형 암호화 구현, 아주 오래된 컴퓨팅 하드웨어까지, 예전엔 엄두도 못 냈을 작업들을 척척 해내는 사례가 눈에 띄게 많아졌다. 이 중 일부, 특히 암호화 같은 영역은 해당 분야 전문가들이 의도적으로 진입 장벽을 높여왔던 터라 일반 개발자들은 더더욱 접근하기 어려웠다.
어쩌면 세상에 조잡한 코드가 넘쳐날 수도 있다. 하지만 동시에, 빠르고 가벼운 소프트웨어를 원하는 개발자들도 그만큼 더 많아질지 모른다.