서론

원래 JavaScript는 별로 배우고 싶지 않았다

그 이유는

1. 가끔 프로그래머 유머 같은 곳에 보면 자바스크립트의 이상한 규칙이 올라온다.

예를 들면 이런 거

2. 게임 제작 커리어를 가지고 있다보니 C/C++ 위주의 정적이고 컴파일러를 사용하는 언어에 더 익숙했으며, 동적이거나 인터프리터를 사용하는 언어에는 익숙하지 않았다. 다시 말해, 문화적 거부감 또는 "외국어"를 배우는 듯한 느낌이랄까?

 

3. 내 직관과 어긋났다. 사실 자바스크립트는 2005년 대학교에서 처음 다뤄보긴 했다. 거기서 DOM을 사용했었는데, 어렴풋한 기억으로 메모장에 document.write("Hello World!"); 뭐 이런걸 썼던 것 같다. 2번과는 조금 다른 맥락에서 이질적으로 느꼈는데, 원래 나는 C++을 잘 못 쓰고 C를 먼저 배웠기 때문에 절차 지향 프로그래밍에만 익숙했고 객체 지향 프로그래밍은 잘 몰랐던 상황이었다. 여기서 document.write 라는게, 지금이야 웹 페이지라는 객체에다 출력한다는걸 알 수 있었지만, 그 당시에는 printf("") 보다 더 나에겐 이상하게 보였다. 사실 지금 따져보면 printf도 stdout이라는 객체에다 출력하는 거라고 볼 수 있지만. 그게 C++에서는 std::cout 이었던 것이고.

 

4. 분명히 자바스크립트로 할 수 있는 어떤 기능은 다른 언어로도 할 수 있을 것이라고 생각했다. C++로만 할 수 있는 게 있을리가 없잖아? 같은 느낌. 그리고, 충격적이게도, 나는 틀렸다.

 

본론

그래도 배워야 하겠다는 생각이 들기 시작했다

처음 자바스크립트를 접한 뒤로 18년이나 흘렀다. 아직도 자바스크립트는 웹에서 지배적인 언어이다. 아니, "언어"라는 면에서는 대체품이 많지만, "기능"면에서 대체품이 없다. 이게 대체 어떻게 된 건지 이해가 안 되지만 그냥 그렇게 흘러왔다. C/C++로 소켓을 사용해 웹서버를 만들더라도, 결국엔 웹 브라우저로 접근하기 위해서는 어딘가에서 HTML을 출력해줘야 만 하듯이, 상호작용이 가능한 웹 페이지를 만들기 위해서는 자바스크립트를 쓸 수밖에 없다는 생각이 들기 시작했다. 아무리 더럽고 치사해도 써야만 하는 제품이 있기 마련이다.

 

마치 게임 클라이언트 제작에 C++ 외에 선택지가 거의 없는 것과 같다. 

 

 

결론

언어는 자체는 중요하지 않지만, 언어를 배우면서 얻는 경험치는 중요하다

프로그래머로서 짬(?)이 차다 보니깐, 언어란 단지 생각의 표현일 뿐이며, 언어를 잘 다루는 능력은 "(한국어 외에) 외국어를 유창하게 할 수 있는 사람"이 될 뿐이지만, 생각을 잘 하는 것은 "(어느 언어로든) 좋은 글을 쓸 수 있는 능력"에 해당한다는 것을 알게 되었다. C/C++이든, 파이썬이든, 자바든, 자바스크립트든, 생각보다 언어 자체는 크게 중요하지 않다... 라고 하고 싶지만, 사실은 이 또한 중요하다. 똑같은 한국어라도, "공구리 쳐라"와 "콘크리트를 타설해주세요"는 같은 말이긴 해도 현장에의 효율성은 상당히 다를 것이다.

 

다음 목표는 자바스크립트로 회사 주변 식당 정보를 보여주고, 오늘 먹고 싶은 음식을 찾아주는 웹 사이트를 만드는 것이다. node.js 사용해서 웹 서버 띄우는 것은 정말 쉽게 했다. 20년 전만 해도 APM이라고 해서 Apache, Php, MySql 깔아서 구현하고는 했는데 세상 참 좋아졌다.

반응형

+ Recent posts