내 인생을 바꾼 단 하나의 책
-「 모던 웹을 위한 node.js 프로그래밍」를 읽고 -
‘node.js’는 확장성 있는 네트워크 애플리케이션 개발에 사용되는 소프트웨어 플랫폼이다. node.js는 작성언어로 자바스크립트를 활용하여 단일 스레드 이벤트 루프를 통한 높은 처리성능을 가지고 있다. node.js는 내장 http 서버 라이브러리를 포함하고 있어 웹서버에서 아파치 등의 별도의 소프트웨어 없이 동작하는 것이 가능하며 이를 통해 웹서버의 동작에 있어서 더 많은 통제를 가능케 한다.
쉽게 말하자면, 자바스크립트를 이용해 홈페이지를 만들기 위한 도구이다. 이러한 node.js를 배우기 위해 이 책을 읽은 이유는 단순했다. 홈페이지를 만들기 위해서였다. 지난 12월, 공주대학교의 강의평가홈페이지를 만들고 싶었다. 공주대학교의 강의를 듣기전에 보통 선배나 친구들에게 “이 강의가 어떤가?”하며 물어보며 선택을 하게 되는데 그렇게 해서 선택한 강의가 기대 이하였던 적이 많았다. “대체 한 학기를 책임지는 강의를 그렇게밖에 선택을 못할까? 그 강의를 들었던 사람들 전부가 평가를 하고 그걸 보게 된다면 좀 더 나은 선택을 하지 않을까?” 하는 생각이 들었다. 지금까지의 공주대학교 강의평가시스템은 그저 강의를 듣고 성적열람을 보기 위해서 꼭 평가를 해야하고 그 평가들은 우리들이 볼 수 없었다.
이러한 문제점을 고치기 위해서 강의를 들은 사람들이 평가를 매기는 공개된 홈페이지 “공주대학교 강의평가홈페이지”를 만들기 위해서 컴퓨터앞에 앉았다. 홈페이지를 만들려고 보니 프로그래밍언어는 하나도 몰랐고, 홈페이지 개발 경력은 커녕, 홈페이지가 구조로 이루어져있는지도 몰랐다. 인터넷에 있는 자료들은 점조직처럼 체계화되어있지 않고, 인터넷에 나와있는 대로 해도 안되는 경우가 태반이었으며, 그 가이드대로하다가 내 컴퓨터가 악성코드가 걸리기 십상이었다.
그렇게 허우적되다 2014년 4월이 되었다. 제대로 공부하기 위해선 책이 필요했다. 그렇게 해서 알아본 책이 모던웹을 위한 html5+css입문, javascript+jquery입문, 그리고 “모던웹을 위한 node.js프로그래밍”이었고, “모던웹을 위한 node.js프로그래밍” 이 책을 통해 공주대학교 강의평가홈페이지를 만들게 되었다고 해도 과언이 아니다.
지금 존재하는 홈페이지중 거의 대부분은 mysql과 php를 사용해서 이루어져 있다. 그래서 거기에 관련된 자료들은 정말 많았다. 그러나 그 자료들을 보며 따라하다 실패를 반복하고, 흔해빠진 게시판 중심의 홈페이지가 거의 그걸로 이루어졌단 사실을 깨닫고 그런 사이트는 만들지 말아야 하는 생각이 들었다. 나는 나만의 독특하고 단순한 홈페이지를 만들고 싶었기 때문에 node.js를 이용해서 홈페이지를 만들게 되었다.
이 책에는 node.js의 모듈에 대해 상당히 좋은 설명들이 있다. node.js의 모듈중에서는 express모듈, socket.io 모듈, mysql과 연동하는 예제 등 홈페이지를 만들 때 매우 필요한 지식들이 이 책에 가득히 들어가 있었다. 그 중 난 이 책의 mysql과 express모듈을 연동한 예제를 보고 착안하여 공주대학교의 모든 강의 4588개를 mysql을 통해 데이터베이스화 시키며, express모듈을 통해 클라이언트 페이지, 즉, 사람들에게 보여주는 페이지를 만들고 경로설정까지 하였다. 그리고 오랜 시행착오 끝에 도메인연결을 하고, cafe24란 원격저장소를 통해 홈페이지를 올리게 되었고 7월, 드디어 오픈하게 되었다. 지금은 최고조회수 25,000횟수를 기록했으며, 575개의 강의평이 등록되었다.
그 후, 내 후배나 친구들이 싸이버강의나 어떤 강의를 신청할 때, 이 홈페이지를 보고 선택했다고 하는 걸 들으며 나는 이렇게 생각했다.
‘내가 세상을 바꿀 수 있다! 내가 다른 사람의 행동에 영향을 미칠 수 있다. ’
스티브잡스가 이렇게 말했다.
“당신의 인생은 그것보다 훨씬 장대할 수 있어요. 한가지 단순한 진실을 깨달으면 말이죠. 그것은 지금 당신이 인생이라고 일컷는 모든 것들이 당신보다 똑똑하지 않는 사람들에 의해 만들어졌다는 것과 당신이 그것을 바꿀 수 있고 그것에 영향을 미칠 수 있으며 다른 사람들이 이용할 수 있는 당신만의 무언가를 만들 수 있다는 사실입니다.”
나에게 “모던웹을 위한 node.js프로그래밍”이란 책은 단순히 홈페이지를 만들기 위한 도구가 아니였다. 나의 생각을 바꿔줄, 나의 인생을 바꿔줄 도구였다.
옛날에 쓴 글인데.. 있어서 적습니다. 정말 좋은 책입니다.