작업의 연속성

머리아픈 이야기 2007/05/21 10:18 by lifthrasiir

오늘도 머리아픈 이야기로 아침을 여는(응?) lifthrasiir입니다. 졸리네요.

최근 세 달동안 다양한 일들 때문에 정신없는 나날을 보내고 있습니다. 아시는 분은 아시겠지만 한달에 보름을 밤을 샌다고 생각하면 맞을 정도로 바쁩니다. 제가 하고 있는 일은 다양한 것들이 있습니다만 이 세 달동안 저를 계속 괴롭혔던 건 역시 학교 숙제와 프로젝트...였습니다. (강의를 너무 잘못 골라서 모든 과목이 빡쎄답니다.)

그런데 제 부모님께서 제가 이렇게 사는 걸 아시면 항상 하시는 말씀이 있습니다.

"새벽 한 시부터 세 시까지는 꼭 자라!"
부모님의 주장(?)에 따르면 이 시간대에 잠을 안 자면 아무리 잠을 많이 자도 피곤하다고 하던데, 그게 실제로 과학적으로 근거가 있는 건진 모르겠습니다. 뭐 좋은 얘기죠.

그런데 제가 잠을 일찍 못 자는 이유는 사실 학교 일이 많아서 그런 게 아닙니다. 정 시간이 부족하면 밥 먹을 때도 하고 수업 할 때도 하고 하면 되죠. 그런데도 잠을 늦게 잘 수 밖에 없는 건 작업의 연속성때문에 그렇습니다. 한 번 시작한 일은 어느 특정한 수준(milestone)에 도달할 때까지는 손에서 떼어 놓을 수 없다는 게 작업의 연속성의 결과이지요.

프로그래밍 같은 쪽에 인연이 없으신 분을 위해 간단한 예를 하나 들어 보겠습니다. 제가 블로그에 올릴 글을 막 쓰고 있는데 내용이 좀 깁니다. 그래서 중간까지 쓰다가 졸려서 내일 이어서 쓰자라고 생각하고 잠에 듭니다. 잠에서 깼을 때 제가 어디까지 썼는지, 어떤 내용을 앞으로 쓸 것인지, 내가 무슨 문체로 글을 쓰고 있으며 어떤 의도를 가지고 글을 쓰고 있는 건지 기억할 수 있을까요?

좀 많이 힘들 겁니다. 글 쓰기 뿐만 아니라 프로그래밍 같은 다른 일들도 마찬가지입니다. 내가 이 일을 중단하고 다시 시작했을 때 이 일을 하는 데 필요한 내용들이 내 머릿속에 남아있을 지 보장할 수 없습니다. 혹시나 내가 꿈에서 로또 번호를 봐서 앗싸 좋구나 하고 로또를 사고 돌아 오면 글에 대한 생각은 싹 사라졌을 지도 모릅니다. (물론 로또 1등 하면 글 같은 거 쓸 이유도 없긴 하지만)

불연속성은 종종 사람들의 생활을 바꾸고 사회를 바꾸기도 합니다. 예를 들어서 사람과 사람 사이의 소통 수단은 원래 말이었습니다. 하지만 음성은 그 순간에만 유효한 수단이고, 그 순간이 지나면 음성을 다시 들을 방법이 없습니다. 이것이 바로 불연속성이고, 결국 이를 해결하기 위해서 계속 보존할 수 있는 매체인 종이가 등장하고 내용을 적기 위한 프로토콜인 문자가 생겼지요. 마찬가지로 유선 전화는 돌아다니면서 쓸 수 없기에 무선 통신이 고안되었고 휴대폰이 쓰이게 되었습니다.

그러나 일반적으로 일의 연속성은 순전히 인간의 사고에 상당히 의존하기 때문에, 인간의 사고를 정확하게 보존하고 다시 되살리는 방법이 만들어지지 않는 한 최선의 방법은 "끝날 때까지 계속 한다"입니다. 안 그러면 중단했을 때의 상태로 돌아 가는데 걸리는 부하가 늘어날테니까요. 그나마 조금 더 좋은 방법은 하나의 작업 단위를 작게 만들어서 빨리 끝나게 만드는 것입니다만 이건 이거 나름대로 힘든 일입니다.

제가 정말로 고민하는 건, 제가 하는 일과 약 200만광년 정도 동떨어진 일을 하시는 부모님께 이런 작업의 불연속성을 이해시키고 제가 늦게 잘 수 밖에 없음을 어떻게 설득시키느냐입니다. 아는 거랑 설명하는 건 서로 다르다고들 하죠. 아무래도 이 문제를 해결하려면, 제가 애초에 일을 잘게 잘 쪼개는 능력을 키우거나 아니면 이 얘기를 잘 설명할 수 있는 말빨(과 인내심)을 키우거나 둘 중 하나는 해야 할 겁니다. 둘 다 하면 좋겠지만요. ;)
필자
author image
먹고 자고 놀고 하면서 종종 코딩도 하는 이상한 사람.
http://tokigun.net/

2007/05/21 10:18 2007/05/21 10:18

음악을 좋아하시나요?

따뜻한 이야기 2007/05/20 21:57 by LonnieNa

이글은 아주 지극히 객관적인 판단일 수 있습니다.


어렷을 적 아주 상반되는 두 사람을 곁에 둔적이 있었습니다.


한 분은 음악을 아주 좋아하셨습니다.
물론 예나 지금이나 취미가 뭐에요? 라고 물으면, 음악감상이 흔하게 나오는 건 변함이 없다지만.
정말로 음악을 좋아하시는 분이셨습니다.
일을 할 때, 청소를 할 때도 음악을 틀어놓고(그 당시엔 전축이라고 돈 좀 있는 부자들만 쓴다던 오디오죠) 흥얼흥얼 따라부르며 누가봐도 즐거워 보였습니다.


다른 한분은, TV에서 라디오에서 음악만 나오면 채널을 돌리거나 꺼버립니다.
음악은 시끄러운것이다 라고 하십니다.
머리만 아프다.
겉보기엔 감정이 매말라 보였습니다. 물론 내면의 마음은 꼬옥 그런건 아니었지만요.

그러던 어느날 그렇게 음악에 진절머리를 느끼시던 그 분이 역시 그 당시 부자들만 가지고 다녔다던 CDP를 어디서 구해오셨습니다.(저도 기회가 되어 살짝 들어봤는데 지금도 기억하지만 그 일제 SONY 그 제품의 음질은 아주 막강했었습니다.)
그리곤 나이 50이 다 되신 그 분이 방에 몇시간씩 틀어박혀 앉아서 귀에 이어폰을 꼽고 뽕짝을 흥얼흥얼 따라부르기 시작했습니다.

무슨 변화가 있었던건지 어떠한 심정의 변화가 있었는지. 입가엔 미소가 피는 모습을 자주 보았습니다.


사용자 삽입 이미지
어느게 우선순위 인지는 모르겠습니다.
기분이 좋아서 음악을 듣게 되었던것인지.
음악을 듣게되어 기분이 좋아진것인지.

근데 그 때도 그랬고 10년이 넘게 지난 지금에도 느끼는 것이지만,
삭막한 생활 속에서 살고 힘겹게 지쳐 사는 분들은 음악을 멀리하는것 같습니다.
그러한 여유조차, 그렇게 즐길 기분조차 없어서일지도 모르겠지만요.

개인적으로 100% 믿는건 아니지만,
음악을 멀리하는 사람은 인생이 정말 힘든사람이다 라는 생각을 가지고 있습니다.


여러분들은 어떠신가요? 음악.. 좋아하시나요?
필자
author image
LonnieNa 입니다. Needlworks에서 Painter에 있습니다.
http://blog.2pink.net
Painter로,
여러분과 나의 세상을 바라보는 시선을 달리합니다.

2007/05/20 21:57 2007/05/20 21:57

숙원 과제 해결하기

즐거운 이야기 2007/05/17 13:46 by daybreaker

저는 학교가 학교인지라(?) 학기 중에는 정신없이 바쁩니다. 바로 저번 주만 해도 전공과목 팀프로젝트로 서비스 설계문서를 A4 160장 분량(사실 UML Diagram이 대부분 차지하긴 했습니다만)을 써서 내야 했죠. 그래서, 남들은 너무 당연히 여기는 일상적인 것들에 신경을 못 쓰는 경우가 많습니다.

가장 대표적인 예로, 다음날 신을 양말이 없을 때까지는 절대로 빨래를 하지 않는다[footnote]제가 다니는 학교는 기숙사 생활을 합니다.[/footnote]든가-_-, 이발을 못/안해서 머리가 치렁치렁 길어진다든가, 손톱이 길어져도 안 깎는다든가, 자전거가 고장나도 대충 걸어다니고 만다든가, 샤워(!)를 드문드문 한다든가... 사실 이런 일들을 할 "절대적" 시간이 없는 것은 아니지만, 뭔가 계속 할 일이 있고 머릿속이 그것으로 가득 차 있으면 정말 괴로운(?) 상황이 오기 전까지 신경쓰지 않게 되죠. (네, 간단히 말해서 귀차니즘입니다. ㄱ-)

지난 주에 그 160장짜리 프로젝트가 끝난 후, 이번 주에는 조금 여유가 생겼나 싶더니 동아리 서버를 새 하드웨어로 교체하는 과정에서 nForce410 칩셋과 리눅스 커널의 비호환 때문에 한 3일을 내리 삽질하고 나서 결국 포기해버리는 에피소드가 있었습니다;; (인텔 계열로 갈아탈 생각입니다..ㅠㅠ) 그래서 일단 그 문제를 스톱시키고, 오늘 하루의 여유를 만끽했죠.;;;

그 여유의 만끽이란 이발과 자전거 수리였습니다-_-; 원래 중학교 때부터 딱 2번을 제외하고 계속 머리를 깎던 단골 이발소가 집 근처에 있는데, 집이 옆 동네로 이사를 가는 바람에 가기가 귀찮아졌고-_- 또 막상 집에 갈 시간도 많이 나지 않아 요즘 앞머리카락이 자꾸 눈썹을 간지럽혀서 죽을 지경이었습니다. 학교 안에도 이발소가 있긴 했지만 왠지 모를 불안(?) 때문에 한 번도 안 갔었는데, 얼마 전에 친구가 거기서 깎은 걸 보니 나름 괜찮다 싶어서 오늘 시도했던 거지요. 다행히 결과는 만족스러웠습니다. "조금 짧게"라고 하니까 계속 깎은 자리를 또 깎고 또 깎고 해서 걱정이 되었지만 아주 시원~하게 되었고 모양도 이상하지 않았습니다. 특별한 스타일이 아니라 그냥 무난한 스타일을 원할 때는 앞으로 자주 이용해도 될 것 같네요.

자전거 수리는, 학교 안에 자전거포가 하나 있긴 하지만 전에 거기서 바퀴를 갈았다가 하루 만에 바람이 다 빠지고 돈을 더 줘서-_- 다시 교환했던 적이 있는지라, 학교 게시판에서 추천해준 학교 근처의 다른 자전거 매장에 찾아갔습니다. MTB를 전문으로 다루는 곳이라 그런지 확실히 수리도 잘 해주고, 주인분들도 친절하시더군요. 자전거가 그동안 이상했던 원인은 기어를 조절하는 케이블이 녹슬어서 그런 것이었고, 케이블 교체와 기름칠 후 새 자전거가 되었습니다;

오늘 날씨가 정말 화창하고 좋습니다. 어제 비가 온 덕에 공기가 맑은지 햇볕이 눈부시게 쨍쨍하면서도 적당히 바람이 불어 덥지 않고, 신록은 점점 짙어져 5월의 초록빛을 유감없이 발산하고 있네요. 다른 분들도 오늘 기분 좋은 하루를 보내셨으면 좋겠습니다.
그럼 전 이만 수업에 들어가야겠군요.

필자
author image
Daybreaker(아침놀)입니다. 현재 KAIST 전산학과에 재학 중이며 전산 외에도 물리, 음악, 건축 등에 관심이 많습니다. Needlworks 내에서는 각종 홈페이지 제작 및 서버 관리 등과 함께 Textcube 개발에 참여하고 있습니다.

홈페이지 : http://daybreaker.info

2007/05/17 13:46 2007/05/17 13:46

플러그인 생각

머리아픈 이야기 2007/05/17 10:45 by J.Parker

태터툴즈 에서의 플러그인 개념이 나타나게 된 것은 아마도 작년 초쯤 태터툴즈 1.0이 배포되면서 활성화 되었습니다. 처음에는 그리 보이지 않게 움직였던 플러그인 들이 지금은 플러그인 게시판 기준 용도에 따른 다양한 플러그인이 420건 정도 됩니다. 현재 플러그인 게시판에 처음 등록되어 있는 것은TENMA님의 '댓글RSS 플러그인'이고, 최근 등록되어있는 것은 팀블로그로 유명하신 차칸아이님의 '포스트 부분 비밀글 만들기 플러그인'입니다. 이렇듯 많은 플러그인이 배포되고 사용되고 있습니다.

사실상 플러그인을 만든다고 하는 것이 스킨 만드는 것 보다 어렵게 생각할 수도 있습니다. 스킨은 html 구조로 속한 치환자만 잘 배치하면 된다고 쉽게 여기십니다. 하지만, 제가 생각하기엔 스킨 만드는 것이 더 어려운 것 같습니다. 뭐랄까 디자인 요소도 배제할 수도 없기 때문이 아닐까 합니다. 플러그인 텍스트큐브 기반 프로그래밍이 PHP입니다. PHP를 배우거나 독학하지 않았다면 플러그인 역시 어렵게 생각 될 수 있습니다. 하지만, 기 배포된 플러그인을 보거나, 플러그인 관련 설명문을 참고 하신다면 크게 어렵게 생각 안 해도 될 것입니다.
처음부터 어렵다고 생각하는 부분이 있기 때문에 막상 만든다는 것이 어려울 수도 있지만, 설치형 블로그의 강점 이기도 한 플러그인을 내가 원하는 것으로 만들어 보는 것도 재밌는 도전입니다.

요즘은 플러그인에 대한 여러 가지 아이디어들을 메모하고 있습니다. 워드프레스에는 있고 텍스트큐브에는 없는 것, 여러 사이트를 서핑 하다가 재밌을 것 같아 보이는 것, 간혹 흘려듣는 블로거분들이 하시는 이런 플러그인이 있으면 좋겠다고 하는 것 등.. 여러 아이디어를 모으고 있습니다. 생각 날 때마다 하나씩 만들다가 개인 업무에 치어 한 동한 잊혀진 대기 중인 플러그인도 많이 있고, 생각은 넘쳐나는데 역량 부족으로 아직 손도 못되고 있는 플러그인도 많이 있는 것 같습니다.

가끔 이런 생각을 자주 하곤 합니다. "어찌하면 플러그인으로 하여금 텍스트큐브가 유용하게 사용 될 수 있을까?"라는.. 혼자 생각한다고 해결될 것은 아니지만, 태터툴즈에서 텍스트큐브로 넘어오면서 뭔가 큰 변화를 줘야 한다는 생각이 뇌리에 자주 남고 있습니다. 생각해보면 아무 것도 아니라고 단정 지으면 될 것 같은데, 그게 잘 안되는 듯 합니다.
아마도 needlworks에서의 역할이 있어서 일지도 모른다는 생각이 듭니다. 오픈소스에 참여하게 된 것은 이번이 처음이지만 잘 헤쳐나 갈수 있을지... 앞으로 부딪혀야 할 난관들이 더 많을 것인데 힘찬 마음보다는 근심이 앞섭니다.

필자
author image
안녕하세요. J.Parker입니다. Needlworks의 Creator이며, 블로그 200% 활용을 위한 플러그인을 주로 제작하고 있습니다. 블로그와 함께 숨쉬는 그날까지 언제나 화이팅입니다.^^;
# 블로그 : http://create74.com

2007/05/17 10:45 2007/05/17 10:45

다양성을 높이는 Needlworks의 활동

차가운 이야기 2007/05/16 22:43 by graphittie

저의 베스트 프렌드에게 오픈 소스에 참여하고 있다고 했더니, 그게 뭐 하는 것이냐고 묻더군요. 그래서 국내 인터넷이 대기업에 편중되는 것을 견제하는 시민모임 같은 것이라고 설명해주었더니[footnote]상당히 제한적인 설명이지만 오픈 소스에 대해 장황하게 설명해줄 수 없으니 이 정도로 대답해 주었지요.[/footnote], 그 친구 대답이 이렇습니다.

"대기업 편중이 뭐가 나빠? 경쟁의 결과가 그렇게 나온 거잖아?"

조금 충격이었습니다. 사용자 입장에서는 마음에 드는 서비스, 좋은 서비스를 선택하는 것 그 이상도 이하도 없겠지만, 그 행위들이 모여서 생긴 1기업 독과점 현상이 얼마나 무서운 것인지 인식이 없다는 점이 우려스러웠습니다. 무엇이 우려스러운 것인지 되물으신다면 정말.........

Needlworks의 홈페이지 디자인을 보시면 아시겠지만, Needlworks가 추구하는 바의 상징적 존재는 대자연입니다. 대자연의 다양성을 인터넷에도 돌려주자는 취지이기 때문이지요. 다양성이 높을 수록 변화하는 환경에 적응하는 개체가 등장할 확률이 높아집니다. 이것이 생물이 점점 진화하는 원인이기도 하고 결과이기도 합니다.

생물계의 다양성을 그대로 인간세계에 끌어들일 수는 없겠습니다만, 다양성 존중이 바람직하다는 점은 인간계에서도 같습니다. 왜냐하면 인간 역시 진화의 법칙을 따르는 생물이기 때문입니다. 인간 세계는 계속 변화하고 있고, 인간의 타입이 여러종류일 수록 이런 변화에 적응하는 인간은 늘어나겠지요. 인간 세계의 다양성도 역시 사회적 진화의 원인이기도 하며 결과이기도 합니다.

Needlworks는 인터넷에 이런 다양성을 높이기 위해 다음과 같은 활동을 하고 있습니다.

  1. 태터툴즈 프로젝트.
    사용자의 컨텐츠를 볼모로 잡는 서비스는 사용자가 서비스 간에 자유롭게 이동하는 것을 막는 요인 중 한 가지입니다. 태터툴즈 프로젝트는 컨텐츠에 대한 권리를 작성자에게 돌려주자는 주목적과 함께 다양성 증가라는 부차적 목적을 갖습니다.
  2. 웹 접근성 향상.
    이것은 인터넷 서비스의 다양성 뿐만 아니라 사용환경의 다양성을 높이는 활동입니다. 접근성에 대한 개선책은 Textcube 1.1부터 조금씩 반영되고 있고, 앞으로도 빠른 속도로 접근성을 높여갈 예정입니다.
  3. 다양성의 기반 제공.
    태터툴즈 프로젝트가 활성화될 수 있도록 돕는 보조적 프로젝트들입니다. 얼마전에 공개된 미아찾기 플러그인을 비롯하여 Needlworks 내부에서는 다양성 증가에 기여하고자 하는 분들을 돕기 위한 여러가지 프로젝트가 진행중입니다.

앞으로도 Needlworks의 활동을 지켜봐 주시고, 많은 응원 부탁드립니다. 개인 명의의 포스트인데 어째 공지 같은 내용이 되어버렸군요. 흐흐흐...

필자
author image
Needlworks에서는 HTML, CSS, UI, 디자인(LonnieNa님 백업) 및 문서화에 관련된 작업을 하고 있습니다. 주요 관심사는 웹 표준과 웹 접근성입니다만, 아직도 아는 것이 없어 항상 뒤집기를 반복하는 생선구이처럼 좌불안석이군요.
현재는 Textcube와 Papyrus 프로젝트를 진행하고 있습니다.

2007/05/16 22:43 2007/05/16 22:43

Textcube - 이기적인 Software

분류없음 2007/05/16 11:52 by gofeel

많은 F/OSS(보통은 그냥 오픈소스 프로그램이라고 하죠.=) )와 그 개발 커뮤니티에게 생기는 오해중 하나는 바로 오드리 헵번이나 테레사 수녀에게 비교되는 것일 것입니다. 바로 착하고 이타적인 사람들로 찍히는 것이지요. 이러한 인상은 몇몇 거대 악마로 비춰지는 기업들과 비교될때 더욱 빛을 발합니다. 심지어 Beastie[footnote]Beastie는 BSD의 마스코트 입니다. 악마의 모습을 하고 있죠.[/footnote]를 보면서도 등 뒤에 천사날개를 속으로 달기도 합니다.


머 어쨌든 오해와는 별개로 대부분의 F/OSS가 봉사를 목적으로 생겨난 것은 아닙니다. 실제 대부분 다 자기 좋자고 만들어진거죠. 자기 쓰자고 만들었다가, Open Source License가 그 프로그램에 어울리기에 적용된 것들이 대부분 입니다. 대표적인 사례가 Linux Kernel[footnote]Kernel은 OS의 가장 핵심을 이루는 프로그램 입니다. 우리가 흔히 말하는 Linux OS는 이러한 Linux Kernel과 GNU 프로그램을 중심으로 구성되어 있습니다. 그래서 GNU/Linux라고 부르기도 합니다.[/footnote]입니다. Linus Tovalds는 자신이 사용할 Unix Kernel이 필요해서 Linux Kernel을 만들었지요.  Kernel의 발전 역시 각자 사용자들이 자기가 필요한 부분을 짜서 보태고 부족한 면은 필요한 사람이 다시 수정하는 식으로 진행됩니다. 이래저래 따져보면 독점 소프트웨어에서 찌들린 사용자들을 악의 구렁텅이에서 구출하기 위한 기사단 같은 이미지는 허구로만 보입니다.


Textcube도 다르지 않습니다. Textcube에서 Cube가 다방면을 의미하듯이 Textcube를 만들어 가는 사람들은 각자 다른 모습으로 Textcube를 바라봅니다. 그리고 각자가 생각하는 방향으로 Textcube를 이끌어가고 있습니다. 스킨/플러그인을 설명을 보면 다들 그렇게 시작하자나요. "필요한데 없어서 만들었습니다.~" TNF 의 리더인 inureyes님은 원래 기록을 탐닉하는 분입니다. 그의 블로그에 가보면 98년에 쓰인 글도 있고, 2000년의 기록들도 많이 있습니다. 그런데 그 시기에는 Textcube/태터툴즈가 존재하던 시기는 아니죠. 다른 여러가지 툴들로 남겨졌던 기록들을 지금의 Textcube에 모아둔 것입니다. 변환툴(가끔은 삽질이라고 불리는 Human-migrator를 이용해서;;;;)을 이용해서 넘기고 이어서 하나로 모은 거죠. 보통 한 1~2년 유지하다가 리뉴얼하고 대충 버렸던 제 기록들을 생각해보면 7년간의 데이터를 하나에 모은 것이 참 대단하게 느껴집니다. 머 어쨌든 그러한 특성들을 알고나면 오픈하우스나 태터캠프나 아니면 블로그를 통해서 이야기하는 inureyes님의 Textcube에 대한 이야기들을 이해하기가 조금 더 쉬워집니다. 누군가 Textcube를 이야기 한다면 그가 무엇을 좋아하는지 지켜보세요. :)


머 사실 세상엔 남을 위해서 프로그램을 만드는 사람도 있습니다. 정말 이기적인 마음은 전혀 없이 이타적인 마음으로만 프로그래밍을 하죠. 그래서 자기는 절대 안쓰더라구요. 또 다른 이타적인 경우도 봤는데 그들이 말하길 "고객은 가족, 주주는 남". 머 어쩌겠습니까. Textcube 끝까지~ 매우 이기심으로 가득찬 프로그램이 되기를 조용히 소망해 봅니다


p.s.


주말엔 태터캠프가 대전에서 열립니다. 더 다양한 모습의 태터툴즈와 Textcube를 만날수 있으면 좋겠습니다.
필자
author image
gofeel입니다.
Needlworks에서는 사람들과 만나며 많은 이야기를 듣고 이걸 Creator에게 일거리로 만들어 넘기는 Balancer 역할을 하고 있습니다. 못 넘기면 결자해지도 합니다.
재미난 사람들과의 재미있는 수다는 언제나 환영입니다. 부담없이 접근해 주세요. :)
http://bringbring.com

2007/05/16 11:52 2007/05/16 11:52

TNF / 역할 변화 / 역할 갈등

머리아픈 이야기 2007/05/16 04:26 by inureyes

 사람이 살아가다 보면 역할(role)이 변하는 경우가 꽤 생깁니다. 거의 무조건적으로 생기는 경우들이 있는데, 민증이 나와서 의무들이 생기게 된다거나 아이를 가져서 부모님이 된다거나 하는 경우등이 그렇습니다. 살다보면 생기는 역할 변화입니다. 동시에 자신이 선택해서 역할이 변하는 경우들도 여럿 있습니다. 어떤 일을 하느냐, 어떤 학교를 가느냐와 같은 자신의 선택(과 노력)으로 인하여 역할이 변하는 경우들도 있습니다.

 굉장히 여러 이야기를 할 수 있는 부분이지만 Needlworks/TNF로 좁혀서 이야기를 해 보겠습니다.  원래 TNF에서의 제 역할은 '생각하기' 와 '예측하기', '코드 작성' 이었습니다. 그 중 가장 마지막 쪽이 비중이 컸습니다. TNF에서 저는 주로 코딩을 했습니다. 이게 좀 웃긴게, 컴퓨터공학과를 복수전공 하기는 했지만 원래 코더도 아니고, php의 경우엔 손을 댄 적도 없었었습니다. 태터툴즈때문에 조금 관심을 가졌다가 1.0의 첫 플러그인을 만들면서 건드리기 시작한 것이 본격적으로 php를 스크립트가 아니라 언어라고 생각하고 손을 댄 시점이 아닌가 싶네요. (덕분에 php를 c 프로젝트처럼 코딩하는 습관이 여전히 남아 있습니다)

작년에는 TNF와 관련된 거의 모든 시간을 태터툴즈 코드 만들기에 쏟았습니다. 태터툴즈 1.1 development alpha version부터 1.1 정식이 나오는 시점까지, 솔직히 말씀드리면 그 복잡한 덩어리가 일단 돌아가도록 만드는 것이 지상 과제였지요. 그러다 코드에만 모든 신경을 쓸 수 없는 시점이 되었습니다. 혼자 짜는 코드가 아니고, 혼자 이룰 수 있는 목표가 아닌 이상 TNF라는 조직의 '조화'와 '방향'에 신경을 써야 하는 시점이 오게 되었었습니다.

 작년 말부터 TNF의 진화를 위해 needlworks를 준비하면서 여러 가지를 결정하고 예측해야 할 일들이 많아졌습니다. 웹 -그리고 블로고스피어라고들 칭하는 무형식의 어떤 계- 에 대해서 굉장한 환멸을 느끼던 시기라 생각하는 시간은 길어지고 코드에 신경쓰는 시간은 줄어들었지요. '무엇을 할 수 있는가' 와 '무엇을 해야 하는가' 라는 질문은 비슷해 보이지만 태평양만큼의 빈 공간이 그 사이에 존재합니다.

 지금 needlworks에서의 제 공식적인 역할은 창조자creater가 아니라 리더이면서 균형자balancer입니다. 이름은 멋진데, 결국 코드 작성보다 페이퍼웍이 많아진다는 이야기입니다. 그럼에도 불구하고 텍스트큐브 개발 사이트 (http://dev.textcube.org) 의 타임라인은 여전히 제가 정체성 사이에서 방황하고 있음을 보여줍니다.

  균형자가 '해야 하는 일' 이라면 창조자는 '재미있는 일' 입니다. 그 사이의 밸런스를 어떻게 맞추어 가는가, 둘 사이의 역할 갈등을 어떻게 줄여 나가는가가 지금 마주한 큰 문제중 하나입니다. 동시에 대학원생이고 연구자로서의 역할과 needlworks의 일원으로서의 역할 사이에서도 가끔 갈등이 일어납니다. (둘 다 끝없이 시간을 요구한다는 공통점이 있습니다) 그 사이의 갈등을 줄이는 것도 굉장히 큰 일입니다.

 needlworks에서의 역할인 balancer가 다른 의미로 다가옵니다. 자신에게 주어진 역할들을 얼마나 잘 균형 맞추어 나가는가가 제게 주어진 올해의 가장 큰 숙제가 아닌가 합니다. -그리고 아마, 모두에게 가장 큰 숙제이겠죠. :)

필자
author image
inureyes 입니다. 하고 싶은 일과 해야 할 일의 균형 맞추기를 하며 즐겁게 살고 있습니다. N/W에서는 구성을, TC에서는 교리 전파? 및 사회자?를 맡고 있습니다. 오전과 오후에는 물리학을, 저녁 시간에는 코딩을 하며 삽니다.
http://forest.nubimaru.com

2007/05/16 04:26 2007/05/16 04:26

사랑이 뭐에요?

따뜻한 이야기 2007/05/15 01:21 by LonnieNa

사용자 삽입 이미지
엄마 사랑이 뭐에요?

자꾸 생각나는게 사랑인가요.
곁에 있고 싶은게 사랑인가요.
만났다 헤워지면 가슴이 허전한게 사랑인가요.

아니면 이게 사랑일까하고
생각하는게 사랑인가요












사랑은 말이지..
정말이지 알 수가 없거든..



보고싶어서, 가슴아파서~ 안간힘을 써봐도..
보고파서 애타고, 알 수 없어서 애타고,
그리워서 애타고..
그런거야..
필자
author image
LonnieNa 입니다. Needlworks에서 Painter에 있습니다.
http://blog.2pink.net
Painter로,
여러분과 나의 세상을 바라보는 시선을 달리합니다.

2007/05/15 01:21 2007/05/15 01:21

텍스트큐브와 개발자들

즐거운 이야기 2007/05/15 00:56 by hojin.choi

제가 생각하는 개발자로서 블로깅 툴은 표현의 재미를 사람들에게 가져다 주는 것입니다. 다른 의미도 있겠지만, 재미를 뺀다면 그 다음은 아무 것도 남지 않습니다. 이런 재미 중에 공동체의 적절한 반응을 먹고 사는 것도 있습니다.

최근 개발자들에게 소스 수준으로 다가가기 위해(?) 최적화하여 릴리즈하는 방식을 뺐습니다.생각난 김에 개발자들에게 구미가 당길만한 것들을 나름대로 정리해보면,

  1. 많은 사람들이 쓰는 php를 기반으로 계속 진행합니다.
  2. Subversion으로 trunk, branch, sandbox 등으로 적절히 분리하여 시기 적절하게 운영합니다.
  3. 개발 코드는 항상 티켓과 연관되어 커밋됩니다.
  4. 다국어를 지원하기 위해 po 파일 포맷으로 하부를 바꾸고 있습니다.
  5. 초기 미숙하나마 디렉토리를 MVC 구조로 나누어 만들었습니다. (그러나 개념 공유가 안 된 이후 작업들로 인해 희미해진 경향이...)
  6. 적절히 분리된 플러그인 개념을 통한 코드를 가볍고 확장성있게 하였습니다.
  7. 또한 적절한 스킨 구조로 인해 많은 외관을 얻을 수 있었습니다.
개발자, 여러분! 우리 코드에는 재미있는 요소들이 많이 있습니다. 코드를 분석해주시고, 패치를 보내주시고, 못생긴 코드를 지적해 주십시오.

하나의 아이디어를 간단히 구현해 보고, 많은 사람들이 쓸 수 있도록 정리해서 아~무 보상을 바라지 않고 코드를 공개하는 것은 실로 재미를 기반으로 하지 않으면 어려운 일입니다. 노력하는 자 위에 즐기는자가 있다고 했던가요? 텍스트큐브가 더 많은 사람들에게 재미를 주는 장난감(?)이 되게하기 위해 노력하겠습니다.
필자
author image
텍스트큐브 외부에서 글을 써서 올릴 수 있는 BlogAPI,
텍스트큐브에 OpenID로 로그인이 가능하게 해주는 OpenID 플러그인과,
번역자들이 쉽게 번역할 수 있도록하는 다국어 지원 구조를 담당합니다.
회사에서는 오픈아이디 서비스(idtail.com)를 개발하고 있으며,
그 외의 관심사는 PHP 프레임웍인 CakePHP, 테스트주도 개발,
자동 빌드 시스템, 형상관리 소프트웨어 및 실무적용,
안티스팸, 리눅스 커널, 암호화 라이브러리 등에 있습니다.
<a href="http://coolengineer.com/">블로그</a>

2007/05/15 00:56 2007/05/15 00:56

인공 지능과 압축 기술

머리아픈 이야기 2007/05/10 03:08 by lifthrasiir

비단 저한테만 해당하는 얘기는 아닌데, 저는 어떤 일을 할 때 그 일과 전혀 상관 없는 딴 짓을 많이 하곤 합니다. 인터넷을 모를 적에는 책을 보거나 졸았고, 인터넷을 알게 된 이후로는 인터넷에 여기 저기 널려 있는 다양한 정보를 보고 다니곤 했습니다. 어떻게 보면 비생산적인 일일 수도 있겠지만, 종종 이런 과정에서 새로운 것들이 튀어 나온다는 걸 생각하면 나쁘지만은 않은 것 같습니다. 이번 머리 아픈 이야기도 이런 딴 짓을 하다가 — 정확하게 말하자면 시험 기간에 놀다가 — 찾아 낸 것입니다.


인공 지능(AI)과 압축 기술은 언뜻 보기에는 별 연관이 없어 보이는 분야처럼 보입니다. 둘다 전산학의 한 분야이긴 한데, 인공 지능이라고 하는 건 인간을 비롯한 동물들과 유사한 지능을 갖고 있는 체계를 만들어서 써 먹자는 것이고, 압축 기술은 어떤 정보를 분석해서 더 작게 만들어 공간도 절약하고 시간도 절약하는 것이지요.

인공 지능 하면 바로 떠올릴 수 있는 것이 공상 과학 소설에 나오는 생각하는 컴퓨터 같은 것들입니다. 어쩌면 이런 체계가 인공 지능 연구의 최종 목표일 수도 있지만 아직은 좀 요원한 일이지요. 게다가 기계가 '생각한다'는 걸 어떻게 정의해야 할 지도 문제가 됩니다. 단순히 모든 가능성을 미리 계산해서 그대로 수행하는 프로그램이 있다면 이 프로그램은 '생각'을 하는 것일까요? (작은 게임[footnote]예를 들어서 Tic-tac-toe 같은 경우 가능한 게임의 수가 100만개를 채 넘지 못 한답니다. 이 게임을 항상 이기거나 적어도 비길 수 있는 인공 지능은 이미 1950년대에 등장했습니다.[/footnote]이라면 이미 지금도 가능합니다.) 혹자는 사실 '생각'이라는 것이 그런 인지 과정과 계산 과정 등을 모두 포함하는 개념이라고 주장합니다. 다소 머리 아픈 얘기니까 여기서는 인간 같은 존재와 비슷하게 반응하고 결과를 낼 수 있으면 지능이라고 치고 넘어 가기로 합니다.

압축 기술은 인공 지능보다는 명확하게 정의할 수 있고, 실제로 우리가 매일 만나는 zip 같은 압축 파일이 압축 기술의 산물입니다. 압축 기술의 큰 특징은 어떤 정보를 압축할 것인가에 따라 접근 방법이 달라진다는 점인데, 예를 들어서 두 사람이 대화한 소리를 저장한다면 배경의 잡음보다 목소리 부분을 더 살려서 압축해야 할 것이고, 반대로 콘서트에서 녹음한 음악을 저장한다면 음악에서 사용된 악기들의 소리를 살려서 압축하는 게 좋겠지요. 어느 쪽이든 압축할 정보의 구조를 파악하고 분석하는 과정이 필요한 건 마찬가지입니다.

그래서 인공 지능과 압축 기술이 무슨 관계가 있느냐? 다음으로 요약할 수 있습니다.

어떤 정보를 압축하는 과정은 어떤 정보의 구조를 파악하고 분석하는 과정이며, 이건 궁극적으로 인공 지능이 해야 할 일이다.
예를 하나 들어 봅시다. 8888888888888888888888888888888888888888라는 정보를 압축하려면 어떻게 해야 할까요? 인간은 이 내용을 보고 바로 숫자 8이 40번 반복된 거라는 걸 알아 챕니다. 기계한테도 이건 어렵지 않은 일입니다. 8이라는 숫자가 반복된다는 걸 일단 찾아 내면 몇 번 반복되었는지 세는 건 쉬운 일일테니까요.

하지만 1415926535897932384626433832795028841971라는 숫자는 어떻게 압축해야 할까요? 눈썰미가 좋은 사람은 이 숫자를 구글-_- 같은 데서 쳐 보고 원주율의 처음 40자리라는 걸 알 수 있을 것입니다. 기계가 이런 일을 따라하게 만드려면 꽤 문제가 커지는데,
  • 도대체 그 눈썰미라는 걸 어떻게 흉내내야 할까?
  • 설령 구글에 뭘 쳐 봐야 할 지 알더라도, 검색 결과를 보고 이게 의미하는 바를 어떻게 알 수 있을까?
  • 구글에 쳐 봐서 아무 것도 안 나온다고 해서 이게 의미가 없는 내용일까?
라는 여러 문제들이 생깁니다. 물론 대부분의 압축 프로그램들이 그렇듯이 "나 압축 못 하겠어요"라고 배 째고 대강 내뱉어도 되겠지만, 궁극적으로는 인공 지능의 영역으로 넘어 가 버리는 문제라는 걸 이해할 수 있겠습니다.

오늘 소개할 Hutter Prize를 만든 마르쿠스 후터(Marcus Hutter)는 이런 식으로 인공 지능과 압축 기술이 서로 궁극적으로 연관되어 있으며, 심지어 압축 기술의 형식을 빌어서 인공 지능을 기술할 수 있음을 수학적으로 증명한 전산학자입니다. 이 콘테스트에서는 주어진 텍스트를 만들어 내는 최대한 작은 프로그램[footnote]압축된 파일과 그 파일을 풀어 내는 프로그램으로 구성된 것도 가능합니다.[/footnote]을 만드는 사람에게 현상금을 지급하는데, 압축 기술을 좀 더 인공 지능의 영역으로 끌어 오려는 목표가 있다고 하겠습니다.

구체적으로, 이 콘테스트에서 압축하려는 정보는 영문 위키백과에서 가져 온 100MB의 텍스트(및 다양한 마크업들)입니다. 왜 영문 위키백과냐? 하면 이 내용들은 인간의 지식을 대표할 수 있는 충분한 정보이며, 따라서 이 정보를 효과적으로 압축하려면 인간의 지식과 언어를 충분히 '이해'하여 처리할 수 있는, 따라서 인공 지능의 영역에 포함되는 기술이 필요하기 때문입니다. 이 파일에는 25%의 마크업들이 포함되지만 이 마크업들 또한 인간의 지식을 나타내는 데 필요한 도구들이며, 다른 종류의 텍스트들도 이와 유사한 내용들을 담고 있기 때문에 실질적으로는 큰 문제가 되지 않는다고 합니다.

이 콘테스트는 작년 3월에 시작해서, 2007년 5월 현재 한 사람이 현상금의 일부분[footnote]현상금은 5만 유로라고 쓰여 있긴 하지만 실제로는 이전 프로그램과 새 프로그램의 크기 비율로 현상금이 정해지기 때문에 이보다 많거나 적은 현상금이 지급될 수도 있습니다.[/footnote]을 받아 간 상태입니다. 이 프로그램은 Context mixing이라고 하는 압축 기법을 사용하는데, 이 기법은 현재 풀린 내용을 가지고 다음 글자가 어떤 글자가 될 지 적절한 모델로 예측하여 압축을 수행합니다. 다음 글자를 잘 예측할 수록 압축률이 높아질테니, 이 모델을 어떻게 하면 잘 만드느냐가 중요한 문제가 되겠지요.


전혀 관계가 없을 거라 생각할 수 있는 압축 기술이 결국 인공 지능으로 귀결된다는 걸 보면 전산학에는, 좀 더 넓게 보자면 수학과 과학에는 일종의 보편성(universality)이 있는 것처럼 보입니다. 과학자들이 (얼핏 보기엔 현실과 관계 없어 보이는) 우주-_-나 양자역학-_-이나 정수론-_-이나 집합론-_-이나 뭐 그런 걸 연구하는 것도 그런 보편성에 이끌리고, 그런 보편성을 찾으려는 것 때문일 지도 모르겠습니다. 게다가 그런 것들이 보너스로 현실에도 적용되는 걸 보면 이 분야는 충분히 연구할 가치가 있다는 생각이 드네요.

(덤: 다른 사람 다 쓰고 마지막 차례에 쓰는 글인데 뭐 이런 긴 글을... -_-;)
필자
author image
먹고 자고 놀고 하면서 종종 코딩도 하는 이상한 사람.
http://tokigun.net/

2007/05/10 03:08 2007/05/10 03:08