눈썹 한 쪽 밀고 입산수도

현실, 위치, 익명, 모바일, 놀이, 소통.

이것들은 내가 많은 관심을 갖고 있으며, 이쪽 일을 하고자 8년 넘게 해오던 게임 개발계를 떠나 인터넷 업계에 왔다. 인터넷에 깊은 관심을 가진 것이야 97년부터 였지만, 꿈과 생각을 구체화하고 고민과 탐구는 2003년부터 해왔다. 나 나름대로 다양하고 많은 생각을 했다고 여겼는데, 1년여 인터넷 업계에서 일을 해보니 무척 많이 부족하고 몽상 속에서 놀았다는 반성을 할 수 밖에 없었다. 그래 인정! 이번엔 너가 날 이겼다!

어떻게 버무리느냐에 따라 열매 모양새는 다를텐데, 나는 저 여섯 가지를 버무려서 메타버스로 틀을 잡았다. 그래도 밥벌이 하던 가닥은 게임 개발이어서 좀 더 게임에 가까운 꼴이긴 하지만, 네모, 세모, 동그라미라고 이름을 붙이듯 그 꼴에 적절한 이름을 붙이면 메타버스이다.

메타버스는 아니지만, 내가 관심 갖는 요소 중 몇 가지가 잘 어우러진 프로젝트를 얼마 전에 시도했다. 성공이나 실패를 논하기엔 너무 건방지고, 내가 얼마나 부족했는지를 논하는 것이 양심을 거스르지 않는 일이다. 고백하자면 난 턱없이 부족했다. 기초와 기본도 없이 너무 꿈만 좇았고, 결국 체력 부족은 물론 기술과 경험 부족으로 많은 민폐를 끼쳤다. 파랑 나비를 쫓아 팔 허우적대며 달릴 때는 몰랐는데, 숨이 차 잠시 주저 앉아 하늘을 올려다보니 하늘이 까마득하다 못해 샛노래서 내가 꿈을 꿨는지 꿈이 나를 꿨는지 아리송 했다.

결국 이달 초에 눈썹 한 쪽 밀고 산에 들어가 기초부터 차근 차근 공부를 하기로 마음을 다졌다. 약 80여일 정도 계획하고, 공부할거리를 추렸다. 벌써 30일 가까이 됐는데 계획했던 것 중 반 밖에 못했다. 원래는 지금쯤이면 C# 을 마쳐서 간단한 장난감 정도 만들고 있어야 하고, Javascript 도 계획했던 정도는 익혀서 머뭇거림이 없어야 하는데. 히히.

삶이 팍팍하여 밥벌이 하지 않고 입산수도로 가장한 산놀이 떠나기가 쉽진 않다. 매달 나가는 돈이 워낙 커서 아무리 입산수도 중이라 할 지라도 최소한으로 잡은 한 달 유지비를 채워야 한다. 입산 시작부터 삐걱대던 터라 어쩌면 10년 공부, 아니 11주 공부를 차마 채우지 못하고 산에서 내려와야 할 지도 모른다. 그런 생각을 하면 기분이 좋을리가 없다. 낯은 웃고 있어도 혀는 비비 꼬여 말이 안나온다.

그래도 여기서 하산유혹을(?) 떨치지 못하면 나는 고작 이 정도로 멈출 것이다. 나는 이제 첫 번째 판 후반에 도달하여 우두머리(boss)와 벌일 결투를 앞두고 있는데, 여기서 발길을 돌리면, 그런다면, 어쩌면 나는 평생 두 번째 판으로 넘어가지도 못할 것이다. 으악, 싫다!

지난 6월부터 시작하여 얼마 전에 django 웹프로그래밍 강좌를 마쳤다. 그리고 새 연재물을 기획하고 있다. 한 개에서 두 개 정도 생각하고 있다. 이미 충분한 내공을 갖춰서 연재하려는 건 아니고, django 강좌에서 그랬듯이 공부하는 과정을 정리해서 잘난 척하며 글로 쓰려는 것이다. 앎은 나눌수록 무르익는다는 걸 잘 알기에, 그리고 공부 열심히 하고 있고 해야 한다는 채찍질을 사람들 보는 곳에 공개하는 걸로 대신하려는 것이다. 좀처럼 기획 관련된 이야기를 글로 안써왔는데, 이번에 그 굴레 아닌 굴레를 벗을 것 같다.

이런 글. 안써도 그만이고, 냉정히 말해 쓸 이유도 없다. 아무도 읽지 않을 수도 있다. 그래도 이렇게 청승 떨듯 주절 주절 이야기 늘어놓는 건 담배 끊었다는 이야기를 주변 사람들에게 하고 다니듯이 나 자신에게 숙제를 내주기 위함이다. 통장엔 잔고 2000원 뿐인데 형광등은 나갔고 쌀은 떨어졌다. 미안하지만 이번 달은 전기세와 가스비는 밀려야겠다. 그래도 조금 더 이를 악물고 남은 입산수도 50여일을 채울 수 있도록 애쓰려 한다. 잘 됐으면 좋겠다. 사실 많이 힘들지만, 잘 됐으면 좋겠다.


다) django 강좌를 마치며 (8편) - django 강좌

강좌를 마치다

우리는 지난 2008년 6월 1일을 시작으로 10주에 걸쳐 파이썬과 django 로 아주 간단한 형태로 블로그를 만들었다. 연재 기간으로는 3달 조금 안되지만, 연재 2주 전에 미리 글을 쓰고 기획을 했으므로 나로서는 꼬박 3달(13주)을 연재한 셈이다.

머리가 좋은 편은 아니지만 호기심 많고 욕심도 많아서 이것 저것 건드리는 것이 많다. 하지만 깊이 파고들지 않아서 지식이 참으로 얄팍하여 이렇게 마치 잘 아는 냥 글을 쓰는 데 많은 부담이 있었다. 파이썬과 django 를 개발로 하는 일을 주업으로 삼지 않아 경험이 부족하고 프로그래밍 능력도 떨어져서 강좌를 쓸 생각은 애초에 없기도 했다. 그러다 슬며시 django 책 쓴다고 운을 떼봤는데 의외로 관심 갖는 분들이 계셔서 용기를 내어 지난 5월부터 강좌를 기획하고, 지금 이렇게 강좌를 마치는 글을 쓰기에 이르렀다.

이 강좌를 쓰며 무척 많이 배웠다. 강좌를 쓰며 django 공식 문서를 서 너 번은 완독했고, django core 소스 코드도 두 번 정도 훑었다. 잘못된 내용으로 이 강좌로 파이썬과 django 공부를 시작할 새내기 분들에게 큰 피해를 줄까 두려워서 실제 작동을 확인하고도 인터넷에서 관련 내용을 찾아다니며 작동 원리를 공부하고 이해하려 애썼다. 정작 난 django 로 블로그를 만든 적도 없었으면서 이 강좌를 쓰며 처음으로 만들어봤다. 즉, 여러분이 이 강좌를 통해 django 로 블로그를 처음으로 만들었듯이 필자인 본인 역시 처음으로 만들었다. 그래서 조금이라도 새내기 분들이 답답해 할 부분을 긁어주었기를 바라고 있다. (물론 블로그를 만들지 않았을 뿐, 간단한 장난감거리는 몇 개 만들었었다^^; )

이 강좌 너머로...

이 강좌는 어디까지나 파이썬이나 django를 다뤄보지 않은 이들을 대상으로 한다. 이 강좌를 통해 깊은 내공을 얻을 리 만무하고, 이 강좌로 만족할 리도 없다. 이 강좌는 앞으로 나아가기 위한 첫 디딤돌 일 뿐이다. 앞으로도 계속 공부를 하거나 제대로 된 기초 체력을 갖추고 싶다면 다음 내용을 익히길 권한다.

  • 파이썬 기초 공부 : 파이썬 자료형이나 보다 자세한 문법, 원리를 깨우치길 권한다. 책을 하나 진득하게 파도 좋고, 왕초보를 위한 파이썬 강좌처럼 가벼운 글도 좋다. 혹은 점프 투 파이썬도(책을 웹으로 옮겼다) 좋다. 난 파이썬 책을 보거나 강좌를 보지 않고 django를 시작해서 잔고생을 했었다.
  • django shell 로 기능 실험하기 : 기능을 만들고 일일이 웹 브라우저에서 확인하지 말고, django shell (manage.py shell) 에서 모델을 통해 DB에 글을 넣거나 가상으로 html form 정보를 받게 해보자. 뭐 별 거 있겠냐 싶겠지만, 이 과정이 익숙해지면 놀랍게도 django 흐름이 머리에 그려지기 시작한다. 정말이다.
  • Open API 연결해보기 : yes24 나 aladdin , me2day, google 등 많은 인터넷 서비스에서 Open API 를 제공한다. Open API로 이러한 서비스들로부터 자료를 가져와 다루는 장난감(mash-up service)을 만들어 보자. 클래스나 예외 처리, 코드 구조 잡기 연습하기 좋다. 무엇보다 만든 결과물이 제법 있어 보이는 장점이 있다. ^^;
  • django 해부하기 : 위 단계를 거쳤다면 django 에 있는 각종 메소드나 기능들을 의심해보고, 안에서 어떻게 움직이는지 파고들길 바란다. 충분히 그럴 능력이 되어 있을 것이다.

구글 앱 엔진 (Google App Engine)

올해 4월 중순에 구글에서는 구글 앱 엔진(Google app engine, 이하 gae)발표했다. 정말 놀랍고 멋진 서비스이며, 엔지니어가 부족하거나 개발자가 없이 기획자만 덜렁 있는 팀이라면 이 서비스를 통해 꿈을 이룰 수도 있을 것이라 본다. 그런데 gae 는 아직 프로그래밍 언어로 파이썬만 지원하고 있어 아직 파이썬을 다룰 줄 모르는 이들이 아쉬워하고 있다. 재밌는 사실은 아직 파이썬만 지원하지만, 파이썬에서 쓸 만한 여러 웹 프레임워크도 함께 제공하며 그 중 하나가 django 이다.

나는 gae이 발표 됐을 때 django 를 이용하여 gae 에 문자열을 출력하는 걸 만들어 봤다. 많은 가능성을 봤으며, 기획자가 좀 더 행복해지고 도전할 기회가 많아졌다는 생각을 했다. 혹시 이 강좌로 파이썬과 django 를 공부한 웹 기획자가 있다면 gae 를 이용해 멋진 도전을 하길 기대해 본다.

보다 많은 이들이 파이썬과 django에 관심을 갖길 바라며

아직 우리나라에서 파이썬이 널리 알려지지 않아서 그럴까? 이 강좌 대상자인 새내기 보다는 개발 경험이 있거나 이미 파이썬을 잘 다루는 이들이 더 많은 상황이다. 이 강좌가 아니더라도 어려움 없이 django 를 쓸 수 있는 사람이 많다. 그래서인지 아직은 관심이 부족해 보인다.

참 좋은 웹 프레임워크가 많다. 난 그 중에서 PHP 용 웹프레임워크로 유명한 Cakephp, Ruby용 웹프레임워크로 유명한 Rails, 그리고 이 강좌에서 다루고 있는 django를 써봤다. 각 웹 프레임워크들 마다 특성과 장단점이 있었다. 각 장단점과 개성 탓에 무엇이 더 뛰어나다고 말을 하기 조심스럽지만, 새내기가 배우고 익히기에 참 좋은 프로그래밍 언어와 웹 프레임워크로 파이썬과 django 를 꼽으며 권한다. 인터넷에서 도움을 받을 곳도 많고 자료도 많으며(비록 상당 수가 영문이지만), 파이썬이나 django 자체가 상당히 쉽고 간단명료 하기 때문이다.

웹 기획자가 쓰기에도 좋다. 기획자라면 생각하고 있는 바를 다른 직군 사람에게 최대한 명확하게 전달해야 하는데, 그런 소통 수단으로 프로그래밍은 참 좋다. 기획자가 프로그래밍에 관심을 가질 때 얻을 수 있는 여러 장점들이 있어 나는 꾸준히 프로그래밍에 관심을 갖고 다루고 있다. 하지만 프로그래밍에 너무 생각과 손이 쏠리면 되레 안하느니만 못하다. 어쨌든 기획자가 해야 할 일은 개발이 아니라 기획이기 때문이다. 그런 제한 상황을 고려하여 파이썬과 django를 택한다면 무척 훌륭한 선택이라고 하고 싶다.

더욱이 gae 에서 공식 지원을 하므로 분산 환경이나 고성능에 깊은 고민을 하지 않고 머리 속에 그려진 기능을 마음껏 펼칠 수 있는 훌륭한 환경도 파이썬과 django 로 누릴 수 있다. 기능을 구현하려고 많은 노력과 시간을 들여야 했던 과거와는 달리 기능을 표현하는 데 집중하고 즐겁게 만들 수 있는 환경을 제공하는 멋진 꾸러미다. 비록 이 강좌는 많이 부족하지만, 이 강좌를 통해 많은 이들이 파이썬과 django에 관심을 갖고 참여하여 우리나라에도 django로 즐거움을 누리는 이들이 많아지기를 바라고 기대해 본다.

지난 11회 연재 동안 이 강좌와 함께 한 많은 분들께 고마움을 가득 담은 인사를 드리며 글을 마쳐 본다.