달력

3

« 2024/3 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
작년에 진행하던 프로젝트를 마무리하고 나서 틈틈히 공부하는 책이 있다.
사실 웹 개발을 오래하다 보면, 쉽게 간과하기 쉬운 부분이 Javascript와 CSS와 같은 부분이다. 왜냐하면, 요즘에 나오는 HTML Editor 툴과 개발에 사용하는 IDE의 성능이 상당히 향상되어서 양질의 코드를 생산할 수 있기 때문이다.
그러나 요즘에 사용하는 자바스크립트는 이전의 그것과 전혀 다른 모습을 띄고 있다. 한 마디로 스크립트 언어이기에 배우기 쉽고, 인터넷의 웹에서 비슷한 Sample들을 쉽게 가져 올 수 있기 때문에 별로 배울 가치가 없다라고 생각하면 큰 코 다친다.

AJAX라는 기술이 Web 2.0을 대표하는 기술로 이야기 되어진 이후로, Javascript를 좀도 체계적이고, 라이브러리처럼 쓸수 있는 많은 Javascript Framework들이 만들어 졌다. Yahoo의 YUI, Roby on Rails에서 기본적으로 사용할 수 있는 Prototype, 최근에 마이크로 소프트의 ASP.NET을 위해서 Visual Studio에서 지원하는 JQuery 그리고, ExtJS와 같은 상용 프레임워크까지 셀수 없이 많은 새로운 Javascript Framework가 나타나고 있다.

하지만 자바 스크립트라는 언어의 근간을 이해하지 못하면, 좀더 효율적으로 사용하지 못할 거라고 생각 한다. 그렇기 때문에, 공부의 우선순위가 떨어져서 한번을 공부해야지 했던것이 이제야 살펴 볼수 있는 기회를 갖게 되었다.

책을 읽어가면서 내가 느낀것은, 한마디로, 내가 10여년전에 사용하고 이해하던 자바스크립트와는 전혀 다른 세계였다. OO를 적용한 객체지향적인 속성과 재활용을 위한 여러가지 기능과 속성들을 이해해야만 한다.  너무나도 자유롭고 쉬운 문법을 가지고 있지만, 확장과 변경을 위해서는 언어의 특성을 완전히 이해해야만 한다.

위의 보이는 사진속의 책이 내가 최근에 공부하고 있는 책이다.
책은 각 쳅터의 주제에 맞는 쉬운 예제들을 보여주고 있다. 이를 통해서 기본 원리들을 익힐 수 있도록 구성되어 있다. DOM을 통한 Object를 찾고 접근하고 제어하는 방법과 Dynamic HTML의 속성들을 이용하여 접근할 수 있는 Object들의 사용법도 익히면, 책의 내용을 이해할 수 있는 기본적인 소양을 갖추고 있다고 할 수 있다.

책의 내용을 결코 어렵지 않지만, 이전에 알고 있던 자바스크립트에 대한 선입견을 버리지 않는다면 쉽게 이해하기 어려울 것이다.

나와 같이 개발에 참여하고 있는 개발자는 ExtJS를 이용하는데, 큰 어려움을 가지고 개발 작업을 진행했다. 사실 ExtJS를 구매하고 개발에 이용하는 목적은 개발의 효율성과 리소스를 절약하려는 목적이었는데, 이에 대한 효과는 전무하였다.
나름 대로 분석을 해보면, 주어진 컴포넌트는 API 다큐멘트를 찾아보면 알수 있지만, 이의 변형이나 새로운 형태로 변형을 가할 때는 Javascript와 Prototype 라이브러리에 대한 이해가 적었기 때문이다. 그렇기 때문에 다른 컴포넌트를 이용할 때도 기본기는 항상 중요하다.

약 380페이지의 책중에서 현재 110페이지를 읽고, 코드를 짜보고 있다. 책 속에는 개발시 필요한 디버커 툴을 소개해 주고 있는데, 개인적으로는 Firefox의 plug-in인 Firebug를 좋아하고 자주 사용하고 있다. 이외의 다른 툴들은 책의 내용을 참고하면 된다. 그리고 Junit와 유사한 Javascript Unit 테스트 툴들도 소개하고 있다. 아직은 별로 관심 없는 부분이다.




:
Posted by 행복상자

지난주 까지 "베르나르 베르베르"의 신 1권을 읽었다. 그의 작품이 새로 나오게 되면, 습관적으로 구매를 하게 된다. 그 이유는 그의 작품에 대한, 기대감과 신뢰가 내게 항상 있기 때문이다.

이번에 나온 그의 작품 역시, 제목에서 주는 호기심은 나의 습관적인 구매욕을 자극하기 충분하였다.
책을 한장 한장 읽어가면서, 작가의 의도와 스토리 속에 숨의 있는 의미들을 찾아보려고 노력하였지만, 신화와 창조에 대한 그의 또 다른 관점과 생각은 아직까지도 쉽게 이해하기 어려웠다.
 
"신"은 프랑스에서만 100만부가 넘게 팔린 "베르베르"의 최고 히트작이다. 그는 이 책에서 다양한 종교와 신화들을 종합하여 새로운 이야기들과 신화를 만들어서 독자들에게 보여주고 있지만, 마치 개미에서와 같이 지적이면서 자신들의 문화를 같는 인간들을 절대적인 존재들이 어떻게 바라보는지를 간접적으로 표현하고 있다.

종교적으로는 기독교, 불교 그리고 다른 여러 신화들을 종합하여 절대적이지도 상대적이지도 아닌 또 다른 신화를 그리고있다.
소설의 주인공 "미카엘 팽숑"은 윤회를 반복하며 자신의 업속에서 사는 인간이었지만, 그는 또한 천사의 신분이 되어 육체적인 한계과 고민들을 극복할 수 있는 존재가 되기도 한다. 하지만 어느날 갑자기 그는 "신"의 신분으로 얻게된다. 아니 사실은 "신 후보자"의 자격을 얻는 것이다. "미카엘 팽송"은 천사의 신분으로 "육"에 구속되지 않는 자유로움을 원했지만, 그에게는 선택할 수 있는 권리는 없고, 다만 주어진 각본 또는 시나리오에 따라 다른 "신 후보자"들과 경쟁을 해야 한다.

작가가 원하는 것이 무었인지 모르겠지만, 우리가 생각하는 절대적은 힘은 보이지 않고, 그리스 신화속의 여러 신들의 지도와 교육아래에서 하루 하루를 경쟁하면서 살아야 하는 너무나 인간 세계와 닮은 신들의 이야기는 무척이나 낯 설다. 그들은 단지 호기심들이 많은 인간들이다.

그리고, 알수 없는 미스터리한 존재들에 대한 주인공의 탐험과 모험은, 너무나도 인간의 세계와 닮아 있어서 신화속의 세계에 대한 의심을 낳는다. 1권에서는 이에 대한 힌트가 조금도 없다. 아마도 이는 독자들을 책속으로 가두기 위한 장치일지도 모른다. 호기심을 자극하는 것 만큼, 주도적이고 자율적으로 만들수 있는 것은 없다.

"18호 지구"에 대한 "신 후보자"들의 여러가지 실험들은, 삶과 존재에 대한 의미를 다시 보게 만들어 준다. 하지만 이 역시 어떠한 기준들을 통해서 필터링 되는 규격화된 의미이다. 왜냐하면, "신 후보자"들이 창조하고 있는 지구와 생태계는 적자 생존의 원시적인 세계이다. 많은 경쟁과 위험속에서 개체를 보존하고 살아남아야 하는 기본적인 률만 존재하기 때문이다. 아무리 미적이고, 특이한 것을 창조할찌라도 자신을 보호하고 살아남기에 필요한 능력이 없다면, 도태가 되거나 사라져야만 한다. 그리고 이를 창조했던 "신 후보자" 역시 경쟁자와 분리되고, 후보자의 자격을 박탈 당하게 된다. 

"신 후보자"들이 속해있는 신화의 세계와 그들이 창조하는 세계는 수 많은 경쟁요소들이 존재하고, 이를 통해서 우월한 자를 구별해 내지만, 결과적으로 그렇지 못한 자들은 제거되어져만 간다.
책의 마지막은 그들의 만들어낸 18호 지구에서 각각 144명의 사람을로 구성된 부족들을 번성시켜야 한다. 지적으로 종교적으로 문화적으로 우월하지 않다면, 다른 부족과의 전쟁속에서 사라지고 말 것이다.

"베르베르"의 소설속에는 독자를 끌어당길 만한 호기심 어린 주제와 과학적인 지식들이 같이 혼재 되어 독자를 자극한다. 그는 소설속에서 "신 후보자"들을 통해서 신화의 세계와 새롭게 탄생되는 "18호 지구"를 보여준다. 이는 마치 게임속의 가상의 세계와도 같다. 두 개의 세게가 분리되어 있기 때문에 정해지 규칙과 률을 통해서만 게임에 영향력을 주게 된다. 마치 영화 "매트릭스"의 가상 현실 세계를 만들어 가는 것처럼 새롭게 만들어 가고 있다.

오늘 2편을 구매했다. 주인공 "미카엘 팽숑"이 어떻게 이야기를 전개하는지 궁금하다.

:
Posted by 행복상자
이번 주는 휴가 중이라서, 그 동안 보고 싶던 책들과 이 전에 읽고 있던 책들을 마져 읽는 시간이 되었다. 랜디 포시의 마지막 강의의 원제는 "The LAST LECTURE" 이며, 제목 그대로 저자의 마지막 강의에 대한 이야기를 중심으로 이야기를 풀어나가고 있다.

책 속에는 삶과 죽음이 있었고, 행복과 슬픔이 짇게 배어 있다. 그리고 아이에서 어른의 모습으로 성장하는 그의 이야기를 통해서 인생을 한 번 더 고찰 할 수 있는 많은 이야기들을 담고 있다.
하지만, 그는 행복하고 즐겁게 이야기하는데, 나의 가슴은 시리도록 아파왔고 결코 즐겁지 많은 않았다. 이미 그는 자신의 죽음을 예견하고, 아니 이미 알고 있었기 때문에 글 속의 그는 너무나도 슬픈 존재 었다. 그리고 나 자신에게 반문하게 만들었다. 같은 상황이 나에게 올때 과연 나는 얼마나 초연하게 나의 삶을 정리하고, 주변에 다른 이들에게 즐거움을 줄 수 있을까?

죽음이라고 하는 것은 결코 유쾌하지도 웃으면서 받아들이기 쉽지 않은 것이지만, 모든 사람들이 거쳐가야하는 길이다.

그리고, 해가 바뀌어서, 나이가 한 살 많아지는 것을 안타까와 해서는 안되는데, 지나간 것에 대한 미련들이 많아서라기 보다는 삶의 끝이라는 종착점에 다가가시 싫어서 일거라 생각한다. 그러나 우리의 랜디 포시의 생의 마지막을 준비하는 것은 남 달랐다.
주변 사람들의 만류와 가족들과의 마지막 시간을 함께 준비할 수 있었는데, 그는 세상의 사람들과의 마지막 소통을 원했고, 이를 이루었다.

그의 "마지막 강의"는 단지 그 때 참석했던 사람들 뿐만 아니라, 그의 아이들과 가족들 그리고 앞으로 그의 모습을 보기 원하는 모든 사람들의 것이었다.

하지만, 정말로 슬픈 것은 죽음을 대하는 나의 태도이다.
죽음에 대한 그의 의연한 태도와는 달리 나는 너무나도 슬프기 때문이다. 그가 책 속에서 이야기 했던 많은 재미있는 일화와 좋은 이야기에도 불구하고, 그를 생각하는 나의 마음은 애절하기만 하다. 아마도 그가 가진 가족에 대한 극진한 사랑이 너무나도 내게 많은 것을 생각하게 했기 때문일 것이다.

책속에서, 그가 했던 프로젝트를 보았다. www.alice.org 에 그가 이전에 했었던 프로젝트도 한번 살펴 보았는데, 꽤 흥미로왔다. 이는 프로그래밍을 모르는 사람들에게 툴의 기능을 이용해서 프로그램을 만들수 있는 툴인데, 이를 통해서 프로그밍(Java)를 가르친다. 이를 "헤드 페이크"라고 설명한다. "헤드 페이크"는 그것을 배우는 사람이 다른 흥미로운 것을 배우고 있다고 착각하게 만들어 놓고 실제로는 다른 것을 가르치는 것을 말한다. 

삶은 쉽지 않지만, 열심히 최선을 다하는 자에게 기회와 행운이 있다고 그는 자신을 삶속에 있었던 여러가지 이야기를 통해서 이야기 하고 있다.

랜디 포시, 그는 지난 2008년 7월 25일 죽음을 맞이 하였다.
그의 거룩한 죽음에 대해 감사와 조의를 표하는 바이다.

책을 다 읽은지, 3일이 지났다.
그의 강의가 인터넷에 올려져 있는데, 오늘에서야 볼 마음이 생겼다.

 

내가 사랑하는 사람들에게 줄 수 있는 것들이 뭐가 있을지, 오늘 하루는 생각해 봐야 겠다.
:
Posted by 행복상자
그 동안 사서 봐야할 도서 목록에 들어 있었는데, 이제야 막 주문해서 어제 받아 본 책이 있다. 한국의 개발자들에게 잘 알려져 있는 개발 자 중의 한 명인 켄트 벡의 "구현 패턴"이라는 책인데, 이제 막 읽기 시작한 책이다. 하지만 그의 책은 읽는 사람으로 하여금 생각하게 만들고, 생각할 꺼리를 제공한다.

그의 책은 읽으면, 생각의 흐름을 그대로 글을 통해서 느낄수 있다. 설명과 예제는 누군가에게 말을 걸듯, 가르치듯 이야기한다.

내가 그의 책 여러 권을 여러 번 읽어 보았지만, TDD(테스트 주도 개발)는 정말 난해하다. 아니 사실 읽을 때마다, 다른 관점에서 접근하게 만들고, 이 때마다 나에게 새로운 아이디어를 준다.

구현 패턴 역시 나에게 동일한 아이디어와 영감을 줄거라는 믿음에 의심하지 않는다.

책의 가장 첫장을 열면, 책의 커버를 열면, 가장 먼저 볼수 있는 글은 "한국의 독자 여러분께" 라는 글이다. 그는 한국의 독자들에게 이렇게 말하고 있다.

"프로그램을 짤 때는 자신과 컴퓨터뿐 아니라, 다른 사람들을 생각해야 한다.!"

하지만 이 모든 것이 자신에게 즐거움을 주어야 한다는 것의 그가 책을 통해서 주는 핵심적인 메시지이다.
아는 것과 즐기는 것 그리고 누리는 즐거움이 개발자는 코드를 통해서 하루 하루, 매일 같이 느끼길 바란다. 누구를 위해서? 바로 자신을 위해서....

이제 켄트 백의 구현 패턴의 세계에 한번 빠져 볼 생각이다.
:
Posted by 행복상자