Rust는 좋은 언어다. 하지만 종교는 아니다.
10년 전, 아무도 관심 없던 시절에 저는 이미 말했습니다. "Rust는 좋은 언어다."
그땐 데이터를 들이밀 수도 없었죠. 그냥 제 경험으로 느낀 겁니다. Rust는 기본 동작 자체가 프로그래머의 실수를 줄여주는 방향으로 설계되어 있었습니다.
그리고 이제 데이터가 그걸 증명합니다. 마이크로소프트, 구글, 안드로이드 — 다 발표했죠. 보안 취약점의 절반 이상이 메모리 안전 문제에서 나온다고. 그런데 Rust를 쓰면 그런 실수를 애초에 못 하게 막습니다. 실제로 Rust 코드에서는 그 취약점이 눈에 띄게 줄었습니다.
Rust 종교에 대한 피로감
그런데 요즘 Rust 얘기를 보면 솔직히 좀 짜증납니다. "Rust가 다른 언어 다 죽인다", "C++은 이제 끝났다" 같은 과장된 주장들 말이죠.
이건 기술 얘기가 아니라 종교입니다. 논리도, 데이터도 없습니다. 그냥 실력 없는 사람들이 ‘혁신적인 흐름’이랍시고 타는 거죠. 이런 건 오히려 Rust의 발전을 막습니다.
C++이 여전히 살아 있는 이유
보통 Rust가 C++을 대체할 거란 말을 많이 합니다. 그럼 묻겠습니다. 왜 아직 C++은 죽지 않았을까요?
-
기존 자산이 너무 많습니다. 게임 엔진, OS, 네이티브 라이브러리, 임베디드 시스템… 수십 년 쌓인 코드들이 전 세계를 굴리고 있습니다. 이걸 하루아침에 Rust로 갈아엎는 건 불가능하죠.
-
툴과 생태계가 너무 탄탄합니다. Visual Studio만 봐도 그래요. 예전엔 소니, 닌텐도 같은 콘솔 제조사들도 자기 IDE를 썼습니다. 하지만 코드가 복잡해지고 개발 효율이 중요해지자, 결국 전부 Visual Studio를 지원하게 됐습니다. 그 결과? 업계 전체가 C++ 생태계로 흡수됐습니다. 죽기는커녕 오히려 더 강해졌죠.
-
학습 곡선과 인력 풀의 차이. Rust는 안전을 위해 강력한 제약을 겁니다. 하지만 그 제약을 다룰 수 있는 개발자는 아직 많지 않습니다. C++은 여전히 인력도 많고, 대학부터 산업까지 기반이 단단하죠. Rust가 단숨에 대체하긴 힘듭니다.
-
기존 언어들도 Rust의 장점을 흡수할 수 있습니다. 메모리 안전, 동시성 모델 — 다 따라올 수 있어요. "Rust만의 독점적 혁신"은 점점 줄어들 겁니다.
안전만 알아선 진짜 실력을 쌓기 어렵다
마지막으로, 안전한 언어만 써온 개발자들의 한계가 있습니다. C처럼 야생의 언어를 써보고 온몸으로 피를 본 경험이 없으면, Rust 같은 ‘안전한’ 언어 안에서도 엉뚱한 실수를 할 수 있습니다.
이건 Rust만의 문제가 아닙니다. 과거에 Java, C# 같은 매니지드 언어에서도 이미 똑같은 현상이 있었습니다.
역사는 반복된다
옛날에 Java도 외쳤습니다. "이제 C++은 끝났다! Java가 세상을 바꾼다!"
하지만 결과는요? C++은 여전히 살아 있고, 지금은 오히려 Java가 점유율 하락을 걱정합니다. Rust도 같은 함정을 피해야 합니다. 언어가 좋은 건 맞지만, 그걸 종교화하면 망합니다.
결론: 언어는 도구다
언어를 평가할 때는 객관과 주관을 구분해야 합니다. 객관이란, 이 언어가 실수를 줄이는가, 그리고 그게 데이터로 증명되는가입니다. 이 기준에서 Rust는 분명히 좋은 언어입니다.
하지만 "내가 쓰기 편하다"는 건 주관일 뿐입니다. 그걸 객관인 것처럼 포장하는 순간, 기술은 사라지고 종교가 됩니다.
프로그래밍 언어는 종교가 아닙니다. 언어는 도구입니다. 그리고 도구는 언제나 데이터와 현실에 맞게 써야 합니다.
제대로 대우받는 개발자 | 부족한 컴공지식 배우기 | MIT급 컴공인강
최저임금으로 고통받는 일회성 프로그래머는 그만! POCU 아카데미가 올해 연봉협상을 책임지겠습니다!