* 잡설이 길어져서 분리한 포스팅이다.

 

 

자바 스크립트는 초보자가 들어오기에도 참 쉬운 언어라고 한다.

 

역사가 길고 사용자 커뮤니티가 발달하여 레퍼런스도 많고 기능도 강력한데 비하여 코딩을 처음하는 누구나에게 접근이 쉽다.

 

 

아마 다른 언어와 달리 웹브라우저에서 바로 실행가능한 코드를 작성하면서 배우기 때문이라고 생각한다. 그만큼 무엇인가를 작성한 결과물을 시각적으로 볼 수 있느냐 없느냐는 초기 학습자에게 중요하다. 이것을 극복하지 못하고 초기에 다 떨어지는 대표적인 언어가 C언어다.

 

 

C언어를 처음 언어로 시작하면 상당히 오랜 기간 동안 printf("%d\n", number) 이런 함수를 처다보는게 시각적 요소의 대부분을 차지한다. 심지어 약 일주일 정도 학습을 하면 컴퓨터의 하드웨어인 메모리를 제어하는 방법을 배운다. 메모리라는 것은 웹페이지 처럼 눈에 보이지도 않고 오타 하나에도 치명적인 오류가 발생할 수 있는 영역이다. 사용자는 컴퓨터처럼 사고해야 한다. 이처럼 까다롭지만 C언어는 컴퓨터 구조를 학습하기에는 최고의 언어이다. 오랜 기간 경험을 쌓으면 시스템을 조작할 수 있는 능력을 갖게 된다.

 

 

컴퓨터 구조라는게 사실 우리 눈에 보이지 않는다. 보통 컴퓨터 구조란 어느 정도의 추상화를 거친 가상의 모델을 만들어서 접근하는 것이다. 컴퓨터의 설계자들은 이것을 가상 기계라고 한다. 학습자는 CPU와 메모리의 설계자들이 작성한 지도를 바탕으로 컴퓨터처럼 생각해야 한다. 메모리 주소에 하나씩 접근하여 문을 두드려봐야 하는 일이기 때문에 쉽지 않다.

 

 

사람들은 시각적으로 즉각적인 반응을 원하는데 C언어는 마음의 눈으로 보길 원한다;;;

 

 

그에 비해 자바스크립트는 우리가 일상적인 생활을 하는 사이버 공간인 웹페이지에서 바로 보여준다. 바로 보여줄 수 있다는 것은 즉 공유가 쉽다는 것이다. 좋은 아이디어가 있다면 지금 당장 웹사이트를 만들어서 즉각적으로 전세계에 공개할 수 있다. 물론 갑자기 공개한다고 해도 트래픽이 없기 때문에 잘 알려지지 않을 것이다. 그러면 많은 사람이 나의 웹사이트를 보도록 만들기 위해서는 뭐가 필요할까? 라는 질문이 필요하다.

 

이렇든 자바 스크립트와 C언어는 목적 자체가 다르다. C언어는 컴퓨터 시스템을 위한 언어이고 자바 스크립트는 인터넷 통신을 활용하는 것에 우선순위를 둔다.

 

 

대부분의 프로그래밍 언어는 범용성을 가지고 있다. C언어로도 웹사이트를 만들 수 있고, 자바 스크립트로도 어느정도 시스템의 제어가 가능하다. 그러나 그렇게 하면 효율성이 떨어진다. 마치 육상선수에게 수영대회에 나가라고 하고 수영선수에게 마라톤을 뛰라는 것과 마찬가지다.

 

 

언어의 범용성은 컴퓨터가 본질적으로 0과 1만을 가지고 모든 문제를 해결한다는 것에 기반하지만 그것이 모두가 똑같은 일을 해야 한다는 것을 의미하지 않는다.

 

 

어떤 언어를 배워야 하나 어떤 언어를 주력으로 배워야 하나? 이것은 초기 학습자 뿐만 아니라 기존 개발자들에게도 해당하는 문제이다. 10년 뒤에 자바가 없어질지 파이썬이 번영할지는 알 수가 없는 일이다. 롱테일의 관점에서 바라봐야 한다.

 

 

그럴 때 중요한 것이 내가 이 언어로 궁극적으로 무엇을 어떻게 할 것인가? 적어도 하나의 목표 정도는 가지고 있다면 휘둘릴 일도 없다. 이것은 직업인들에게 필요한 것이고 컴퓨터 공학을 전공하는 4년제 학생들의 경우 학창시절에 최대한 많은 언어에 대한 지식을 쌓고 경험을 해보는 것을 추천한다. 운이 좋다면 빠르게 적성을 찾을 수 있을 것이고 이게 아닌 것 같다면 빠른 방향 전환이 가능하다. 학창시절 시간낭비를 최소화 하는 것도 나중을 위해 중요하다.

 

 

그리고 별로 재미가 없다고 해서 낙심할 필요는 없다. 한 5년이나 10년 뒤에 IT산업의 생태계가 또 한번 뒤집혀지지 않는다는 보장이 없다. 최근의 세계적 흐름을 보면 또 그럴 가능성이 있다고 본다. 그 때가면 지금의 IT 산업에 적성이 안맞는 사람도 갑자기 잘 나갈 수가 있다. 2010년과 현재 2020년을 비교하면 2025년 2030년에 어떤 상황이 올지 아무도 모른다.

 

 

자바 스크립트와 C언어의 특성을 비교하면 IT산업에 대하여 단순히 직업이 아니라 조금 다른 관점으로 바라볼 수 있다.

 


 

필자는 포스팅에 짧은 식견이긴 하지만 개인적인 사견을 종종 넣는다. 기술적인 부분만 포스팅을 하면 그런 것들은 어디가서나 다 찾을 수가 있다. 인터넷에는 API 문서 자료실이나 강의 자료들이 널려있다. 풀어서 설명하는 개인 블로그도 잘되어 있고 영문 자료를 찾으면 더 많은 자료를 찾을 수 있다.

 

 

그런 내용을 웹문서에 복제하여 올려 봤자 큰 의미를 찾기가 힘들다. 하나라도 자기가 알고 있는 것(설령 100%는 정확하지 않을지라도)을 공유하는 것이 웹의 정신이라고 생각한다. 요즘 시대에 다들 유튜브 보는 것을 선호하지만 그것도 한계가 있다. 유튜브는 자기들의 시청자를 중요시하기 때문에 소신을 잃어가는 사람들도 늘어난다. 생리적으로 시청자에게 맞는 말을 해주고 보고싶은 영상을 틀어주는게 우선이다. 영상을 하나 만드는데는 상당한 시간과 노력이 들어간다. 그것은 당연한 일이라고 생각한다.

 

 

좋은 웹문서를 찾기 힘들지만 그래도 많은 사람들이 무언가 얻어갈 수 있는 웹문서를 만들려고 노력하고 있다. 순위는 구글의 알고리즘이 매겨줄 뿐이고 검색 시스템에 사람들의 평가가 잘 반영되기를 바랄 뿐이다.

 

공유하기

facebook twitter kakaoTalk kakaostory naver band