두 프로그래밍 언어를 비교할 때 '왜 하필 Python과 Ruby인가?'라는 의문이 먼저 떠오릅니다. 그 이유는 두 언어 모두 인터프리터 방식의 애자일(agile) 언어이면서 객체지향 철학을 기반으로 하고, 거대한 커뮤니티의 지원을 받고 있기 때문입니다.
흥미로운 점은 두 언어가 일부 아이디어와 문법 요소를 공유하고 거의 동일한 기능을 제공함에도 불구하고, 각각의 커뮤니티는 서로 공통점이 거의 없다는 사실입니다. 두 언어는 개발자 커뮤니티에서 매우 인기가 높으며, 이것 역시 두 언어를 비교하는 이유 중 하나입니다.
GitHub에서 오픈된 풀 리퀘스트 기준 인기 언어 TOP 10
다음은 2018년 GitHub에서 열린 풀 리퀘스트(pull request) 수를 기준으로 집계한 가장 인기 있는 프로그래밍 언어 10위 목록입니다.

Python과 Ruby 정면 비교
두 언어 모두 코더들 사이에서 큰 인기를 누리고 있습니다. 이제 다양한 측면에서 Python과 Ruby를 비교해 보겠습니다.
| PYTHON | RUBY | |
|---|---|---|
| 언어 특성 |
|
|
| 설계 목적 | 생산성과 코드 재사용성을 강조하기 위해 설계됨 | 프로그래밍을 더 즐겁고, 효율적이며, 유연하게 만들기 위해 탄생함 |
| 장점 |
|
|
| 단점 |
|
|
| 웹 프레임워크 |
|
|
| 커뮤니티 |
|
|
| 주요 사용 기업 |
|
|
| 활용 분야 |
|
|
그렇다면 무엇을 선택해야 할까?
모든 영역에서 절대적으로 우월한 언어는 존재하지 않습니다. 각 언어는 특정 작업 영역에 더 잘 맞는 경향이 있습니다.
Python과 Ruby는 본질적으로 매우 유사하지만, 문제를 해결하는 접근 방식이 다릅니다. Python으로 할 수 있는 일은 Ruby로도 가능하며, 그 반대도 마찬가지입니다. Django와 Ruby on Rails 중 어느 프레임워크가 더 낫느냐보다는, 본인과 팀원들에게 어떤 지원 체계가 잘 맞는지가 훨씬 중요합니다.
일반적으로 프로젝트가 데이터 과학(data science)과 관련되어 있거나 데이터 과학 분야에 관심이 있다면, 안정적이고 폭넓게 사용되는 다양한 데이터 과학 라이브러리를 보유한 Python이 첫 번째 선택이 되어야 합니다.
반면 웹 애플리케이션 구축에 집중할 계획이라면 Ruby on Rails를 우선 고려해 볼 만합니다. Rails는 강력한 커뮤니티를 기반으로 하며 항상 최신 기술 흐름의 선두에 있습니다.
하지만 웹 애플리케이션 개발에 관심이 있으면서도, 보다 범용적으로 활용 가능한 언어를 배우고 싶다면 Python과 Django 조합을 추천합니다. Python은 훨씬 크고 다양한 커뮤니티를 갖추고 있으며, 여러 산업 분야에서 얻는 영향력과 지원도 훨씬 방대하기 때문입니다.