루비는 진지한 프로그래밍 언어가 아니다
(wired.com)- 첫 언어가 남기는 각인 효과가 Ruby에 대한 독특한 애정을 만들어, 많은 개발자가 결함을 ‘개성’처럼 받아들이고 있음
- 뒤늦게 Ruby를 접하면 화려한 겉모습 아래에 있는 동적 타이핑의 허점·footgun·느린 성능이 그대로 드러나며, 한 세대 전에 머물러 있는 느낌이 강하게 남음
- Twitter의 Fail Whale과 Scala 전환, 그리고 2010년대 전체를 관통한 Ruby 탈출 흐름이 이 언어의 성능 한계를 그대로 증명함
- Rails는 한 시대를 풍미했지만, 지금은 통합된 철학이 확장성의 벽이 되어버렸고, 웹의 폭발적 성장 속에서 더 이상 자연스럽게 맞지 않음
- 현재 Ruby를 떠받치는 것은 Rails 레거시와 초기 각인된 개발자들의 감정적 충성심, 그리고 아름다운 이름에 대한 향수뿐임
프로그래밍 언어와 ‘각인’의 힘
- 심리학에서 말하는 각인(imprinting) 은 프로그래밍과도 비슷하게 작동함
새끼 거위가 처음 본 존재를 부모로 여기듯, 처음 배운 언어가 개발자의 감각을 오래 지배함 - Ruby는 바로 그 각인의 대표적인 수혜자임
“프로그래밍이 처음으로 자연스럽게 느껴진 순간” 과 연결되어, 언어 자체에 대한 애착이 깊게 남음 - 처음 배우면 애정이 앞서 결함이 흐려지지만, 뒤늦게 배우면 그 흐림효과 없이 실체만 보임
Ruby의 탄생과 특징
- 1995년 일본 오사카 출신 개발자 마츠모토 유키히로(Matz) 가 Ruby를 만들었음. 루비는 서양 이외 지역에서 탄생한 유일한 주요 프로그래밍 언어
- Matz의 친절한 성격에서 유래한 MINASWAN(Matz Is Nice And So We Are Nice)이라는 커뮤니티 모토 존재
- 세미콜론이나 괄호 없이 간결한 문법을 갖추어, Python보다도 평이한 영어처럼 읽힘
- 초보자에게 프로그래밍이 "이해되는" 순간을 주는 언어로 자주 언급됨
Ruby를 늦게 배웠을 때 드러나는 민낯
- 여러 언어를 거친 뒤에 Ruby로 들어오면, 기대한 ‘우아함’보다 시대착오적인 허술함이 먼저 다가옴
- 예쁘게 보이도록 디자인된 문법 뒤에, 동적 타이핑의 모호함과 예측 불가한 동작이 그대로 남아 있음
- Ruby는 동적 타입 언어로, 소규모 프로젝트에서는 유연하지만 대규모 구조에서는 오류가 런타임에서야 드러나는 문제 발생
- Python이나 JavaScript는 수년간 타입 도구와 정적 분석 생태계를 강화하며 발전했음(예: TypeScript, mypy 등)
- Ruby는 이에 상응하는 도구가 부족해 "footgun"(스스로 발등을 찍는 기능)이라 불리는 위험 요소에 취약
- 작은 규모에서는 부드럽게 보이지만, 시스템이 커지면 오류가 실행 시점에야 드러나는 위험을 그대로 안고 있음
Ruby의 일관된 성능 한계
- 주요 언어 성능 비교에서 Ruby는 거의 항상 최하위권에 머물러 있음
- Twitter의 Fail Whale(오류시 보이던 고래) 시절은 Ruby 기반 인프라의 한계를 상징하는 사건이었고, 2010년 월드컵 때 대규모 장애가 터지면서 한계가 분명해짐
- Twitter는 Scala 전환했고, 이후 2014년 월드컵 결승전에서 3,200만 트윗을 문제 없이 처리했으며, 새 백엔드는 이전보다 최대 100배 빠르게 작동
- 2010년대 내내 많은 기업이 Ruby 인프라에서 벗어났고, 남은 부분도 대부분 레거시 성격으로 유지됨
Ruby가 잃어버린 자리
- 한때 Ruby와 경쟁하던 Python·JavaScript·Perl은 각자 더 명확한 영역을 확보함
Python은 AI·과학·교육 시장을 차지했고, JavaScript는 웹 전체를 장악함
Perl은 쇠퇴 중이지만 Ruby가 대체할 틈은 없었음 - Ruby가 독자적으로 잘하는 영역이 사라지면서, 현재는 애매한 중간 지대에 머무르게 됨
Rails라는 마지막 지지대
- Ruby가 실제 현업에서 살아 있는 가장 큰 이유는 Rails임
- Rails는 2004년 DHH가 공개한 뒤 Web 2.0 시대를 주도했고, 당시엔 웹 개발의 모든 요소를 하나의 통합된 비전 안에 담아 제공했음
- 덴마크 개발자 David Heinemeier Hansson(DHH) 는 Matz와 대조적으로 논쟁적이고 카리스마 있는 인물로 알려짐
- Web 2.0 초기, Rails는 데이터베이스·프론트엔드·백엔드를 올인원 패키지로 제공해 스타트업에서 각광
- Airbnb, GitHub, Twitter, Shopify, Stripe 같은 회사들이 Rails 기반으로 시작함
- 그러나 웹 규모가 폭발적으로 성장하면서 Rails의 통합형 구조가 오히려 확장성의 장애물로 작용
프랭크 로이드 라이트의 유소니언 하우스처럼, 처음엔 아름답지만 나중엔 개조가 거의 불가능한 구조가 됨
Ruby의 하락세와 남아 있는 힘
- Stack Overflow 개발자 설문 조사에서 Ruby는 2013년 Top 10에서 2025년 18위까지 떨어졌고, Assembly보다도 뒤로 밀림
- 신규 개발자들은 Python과 JavaScript로 몰리고, Ruby는 과거의 기억을 가진 일부 개발자들의 언어로 남음
- 지금 Ruby를 떠받치는 건 Rails 레거시, 각인된 개발자들의 정서적 충성심, 그리고 ‘예쁘고 읽기 쉬운 문법’에 대한 감정적 이미지뿐임
- 그러나 감정만으로는 언어의 위치를 다시 끌어올릴 수 없으며, 현실은 이미 Ruby보다 더 빠르고, 더 안전하고, 더 확장 가능한 도구들로 넘어가 있음
Hacker News 의견
-
대체 링크는 archive.is/O7rEl임
-
기사에서 제시된 논거가 “마음에 안 든다”, “동적 타이핑이라 싫다”, “트위터가 예전에 크래시 났다”, “느리다”, “Stack Overflow 설문에서 상위 20위 안에만 든다” 정도라니 좀 빈약하게 느껴짐
- 기사 자체가 클릭베이트임이 명확하다고 생각함. 제목만 봐도 그렇고, 초반 몇 단락의 “imprinting” 이야기가 그 증거임
나의 첫 언어는 BASIC, 두 번째는 Z80A와 6502용 어셈블리, 세 번째는 Pascal이었음. 하지만 어떤 언어도 내 취향을 영원히 고정시키지 않았음
오히려 대학 시절 한 교수가 “BASIC을 배운 사람은 평생 망가진 프로그래머다”라고 말했던 게 진짜 형성적 경험이었음. 그때 ‘권위를 가진 사람도 편견으로 타인을 망칠 수 있다’는 걸 배웠음
결국 이 글은 저자가 얼마나 똑똑한지를 과시하려는 시도 같음. Steve Yegge의 글처럼 재밌게 읽을 수도 있지만, Yegge는 적어도 더 많은 이야기를 했음 - Ruby가 “진지한 언어가 아니다”라는 근거는 전혀 없음. 저자는 단지 Ruby의 이름이 마음에 안 든다고 함
만약 그의 주장이 맞았다면 굳이 이런 공격적인 글을 쓸 이유가 없었을 것임. Ruby로 실제로 많은 결과물이 나오고 있고, 언어도 계속 발전 중이라는 사실이 반박이 됨 - Bjarne Stroustrup의 말처럼 “사람들이 불평하는 언어와 아무도 쓰지 않는 언어, 두 종류만 존재함”이라는 인용이 떠오름
- 게다가, 누군가의 성격에 대한 반감까지 언어 평가에 반영되는 듯함
- 기사 자체가 클릭베이트임이 명확하다고 생각함. 제목만 봐도 그렇고, 초반 몇 단락의 “imprinting” 이야기가 그 증거임
-
나도 기사 내용에 완전히 반대하진 않지만, 이런 기준이라면 Python, JS, C++ 같은 대부분의 “전문 언어”에도 똑같은 비판을 쓸 수 있음
“컴퓨팅은 대중문화다”라는 말이 여전히 유효하고, Wired 같은 매체에 이런 글이 실리는 게 그 증거임- 완전 동의함. 그래서 내가 좋아하는 링크를 다시 공유함 — A Brief, Incomplete, and Mostly Wrong History of Programming Languages
-
끝까지 읽었지만 Ruby를 쓰지 말아야 할 실질적 이유는 없었음.
내용은 마치 몇 시간 ChatGPT로 만든 듯한 저널리즘 실패작처럼 느껴졌음. 아마 저자가 처음 접한 Ruby 코드베이스가 유난히 엉망이었던 듯함 -
예전엔 Wired가 읽을 가치 있는 잡지였던 시절이 있었던 것 같은데, 이제는 기억조차 나지 않음
- 1995년쯤이 마지막이었던 듯함
-
Scala로의 리라이트는 비즈니스적으로 좋은 결정이 아니었다고 생각함. 15년이 지난 지금, Scala의 인기는 Ruby보다 훨씬 낮음. 지금은 뭘 쓰는지도 모르겠음
-
이건 그냥 페이월용 클릭베이트 기사 같음
-
덕분에 잊고 있던 Wired 구독을 취소해야겠다는 생각이 났음
- 맞음. AI가 만든 허접한 기사라면 ChatGPT에서도 언제든 볼 수 있음