업무와 관련된 학습의 의지는 항상 불타지만, 게으른 자신을 탓하며 미루고 미루다 보니 2017년이 되었습니다. 그래서 백엔드 웹 개발자인 저는 2017년 개인 KPI로 ‘새로운 개발 언어를 습득하고 웹사이트 1회 이상 제작하기’를 설정하였습니다.
일단 새로운 언어를 배우겠다고 하긴 했는데, 어떤 언어를 배워야 할지 감이 잡히지 않았습니다. 세상에는 많은 개발 언어가 있고 계속해서 새로운 언어가 생겨나고 있기 때문이죠.
어떤 언어를 배워야 할까요? 그에 앞서 다양한 통계를 먼저 살펴보도록 하겠습니다.
통계로 보는 개발 언어
1. Developer Survey Results 2016
전 세계의 많은 개발자들이 활동하고 있는 개발자 포럼인 Stack Overflow에서 전 세계 173개국의 56,033명의 개발자를 상대로 실시한 설문입니다.
Full-Stack 웹 개발자(OS부터 서버, 데이터베이스, 백엔드, 프론트엔드 등 전반적인 웹 개발을 아우르는 능력을 가진 개발자)라고 응답한 비율이 28%로 가장 많고 백엔드 웹 개발자, 모바일 개발자 등의 순서대로 비중을 차지했습니다.
설문에 참여한 개발자 중 웹 개발자의 비율이 높은 만큼 50%가 넘는 응답자가 JavaScript를 사용한다고 답했습니다. 그 뒤로 Java와 C#, PHP, Python 등이 주로 사용하는 개발 언어를 차지했습니다.
Rust, Swift 등이 응답자가 사용해본 언어 혹은 기술 중에 가장 많이 사랑받고 있다는 결과가 나왔습니다.
현재 사용하고 있지 않은 언어나 기술 중에서 가장 써보고 싶은 것에는 Android, Node.js, Angular.JS 등이 상위권을 차지했습니다.
버전관리 툴인 깃(Git)을 사용하는 프로젝트를 지원하는 서비스인 GitHub에서 2015년에 발표한 통계도 흥미롭습니다.
아래는 GitHub가 2008년에 출시 된 이후부터 GitHub.com에서 사용된 프로그래밍 언어의 빈도를 토대로 그 순위를 보여주는 그래프입니다. Java가 눈에 띄는 성장세를 보였고, Stack Overflow의 ‘가장 대중적인 기술’의 결과와 비슷하게 JavaScript와 PHP 등이 높은 순위를 차지했습니다.
통계가 의미하는 것
이런 결과들이 의미하는 것은 무엇일까요? 사실 의미하는 바가 그리 크지 않다고 생각합니다. 물론 일부 개발자들의 생각과 언어 사용 빈도, 추세 등을 볼 수는 있습니다. 그리고 생각보다 재밌었습니다. 학창시절에 Java를 배웠었는데 Java 순위의 변화 추세를 보며 ‘그때 열심히 배워둘걸’하는 생각도 했습니다.
이러한 통계도 ‘재미로’ 진행하지 않았을까 생각합니다. 온라인 설문 조사의 특성상 응답자가 제한되어 있고 세계적인 트렌드라고 하기에는 표본 집단의 수가 적기 때문입니다. 또한, Node.js가 10년 전에는 존재하지 않았던 것처럼 빠르게 변화하는 개발 언어의 전망은 쉽게 예측할 수 없기 때문입니다.
왜 배우려고 하는가
사실 ‘어떤 언어가 인기 있더라, 이 정도는 알아야 하더라’ 하는 ‘~카더라’ 통신이 난무하더라도, 제일 중요한 것은 배우려는 목적입니다. 백엔드 웹 개발자가 스타일과 레이아웃에 더 많은 욕심이 생긴다면 HTML과 CSS를, 프론트 웹 개발자가 DB를 좀 더 잘 다루고 싶다면 SQL, PL/SQL 등을 배워 볼 수 있겠죠.
제가 언어를 배우려고 하는 목적을 생각해 보았습니다. 저는 업무에 도움이 되면서도, 생산성이 높은 언어를 배움으로써 경쟁력을 가지고 싶었습니다. 그래서 Ruby on Rails라는 프레임워크를 사용하여 상대적으로 빠르고 쉽게 웹사이트를 만들 수 있다고 알려진, Ruby라는 개발 언어를 배우기로 하였습니다.
시작이 반이다
새롭게 마음먹은 김에 바로 실행에 옮겨보았습니다. 먼저 AWS에서 리눅스 서버 호스팅을 신청하고, Ruby 가이드와 Ruby on Rails 가이드를 보면서 설치를 했습니다.
그리고 home/hello라는 URL 세팅을 하고
‘Hello, World!’를 출력했습니다 🙂
이제 할 일을 다 한 것 같은 기분이 들긴 하지만 시작이 반이라고 했습니다! 저는 개발계의 초석 같은 ‘Hello, World!’를 출력함으로써 반이나 나아갔습니다(라고 믿고 있습니다).
어떤 개발 언어를 배울지, 어떤 언어가 요새 트렌드인지 고민하는 사이에 시간은 흐르고 있습니다! 당신이 배우고 싶은 개발 언어는 무엇인가요? 그게 어떤 것이든 개발 언어 공부의 시작을 응원합니다.
원문: 슬로워크 / 필자: 김다래