Daybreakin Things

Posted
Filed under 컴퓨터

요즘 들어 Needlworks 관련 홈페이지 제작을 하고 있는데, 모두 Python 기반의 웹 프레임워크인 Django를 기반으로 만들고 있다. Python은 작년 정도부터 틈틈이 간단한 스크립트를 만들면서 써먹고 있었는데 점점 더 깊이 알게 되는 중이다. (Django trac에 아예 패치를 제출하기도 했다)

마침, 동아리 후배 녀석이 06, 07학번 애들 데리도 Python 스터디를 진행하고 있어서 나도 가끔씩 참관(?)한다. 하루만에 기초 문법을 모두 끝내고 오늘은 Python Challenege를 했다. 문제를 풀어서 그걸로 다음 스테이지의 html 문서 주소를 알아내는 방식으로 진행되는 류의 퀴즈가 인터넷에 많이 유행했었는데 이것도 비슷하다. 다만 Python을 이용하면 보다 쉽게 풀 수 있는 것이다.

나도 한번 해봤는데, 코딩 자체는 어렵지 않았지만 이상하게 왜 그런 퀴즈의 의도를 잘 파악하지 못하겠는지... 그런 쪽으로는 머리가 잘 안 돌아간다;

어쨌건, 동아리 애들이 이걸 통해서 Python의 기초 문법 바탕 위에 re, urllib, string, pickle, zipfile 등 다양한 library 사용법을 익히고 있는 것을 보니 확실히 Python이 쉽긴 쉬운 언어인 듯하다. 그나저나 난감한 건 이렇게 쉽게 Python으로 짜다가 C 언어로 웹서버를 만드는 SP Seminar 프로젝트를 하면 얼마나 귀찮아하게 될지...-_-;;

요즘 들어 Python의 매력에 점점 푸욱 빠지고 있다. :$

Posted
Filed under 컴퓨터

오늘은 서울시청 앞 프라자호텔 4층 오키드룸에서 TNC/TNF의 프로젝트 태터툴즈와 텍스트큐브 기자간담회가 있었다. 아침 일찍 기숙사를 나서 KTX를 타고 Needlworks 멤버가 모이기로 했던 10시에 정확히 도착했다. (사실 11시 좀 넘어서 기자간담회 시작할 때까지 잡담만 했다. -.-)

주요 내용들은 보도자료와 기자 취재들에 의해 많이 발표가 되었는데(네이버나 다음 등 포털의 뉴스 섹션에서 '텍스트큐브'로 검색해보기 바란다.), 나는 실제로 언론 기자들을 보는 것이 거의 처음이었기 때문에 기자들이 발표를 듣고 질의응답하는 것과 나중에 기사가 나온 것을 보고 비교해보는 등 흥미롭게 지켜볼 수 있었다.

나중에 안 사실이지만, 대부분의 기사는 보도자료를 조금씩만 수정해서 주요 내용을 정리했고, 몇몇 관심있게 질의응답을 했던 기자들의 기사가 좀더 내용이 차 있었다. 아쉬웠던 점은 전부 IT 전문 기자는 아니었다는 점과 그래서인지 제대로 이해하지 못하고 넘어간 부분이 좀 많아보였다는 것. 열심히 누누이-_- 설명했던 내용도, 막상 나중에 식사하면서 따로 물어보기도 하고, 기자에 대해 가지고 있던 이미지(?)가 많이 깨지기도 했다.;;

명함을 통째로 들고 갈 걸 그랬나 하는 생각도 들었는데(특히 inureyes님이 명함을 두고 오시는 바람에 좀 난감했었다), 며칠 전에 두둑히 넣어둔 덕분에 대충 같은 테이블에 앉았거나 이야기를 했던 기자들하고는 명함 교환을 할 수 있었다.

점심을 먹고 나서는 디지털데일리의 심재석 기자님의 오픈소스 커뮤니티에 관한 심층 인터뷰(?)가 있었다. 한국에서 우리와 같은 오픈소스 커뮤니티가 있는지, 이러한 커뮤니티를 유지하면서 어려운 점, 어떻게 해서 참여하게 되었고 왜 참여하고 있는가 등에 대한 질문들이 있었다. 우리는 평소에 느껴왔던 대로 편하게 답변했는데, 좀 횡설수설 답해서 기사로는 어떻게 정리되어 나올 지 모르겠다. (하지만 가장 인상 깊었던 것은 인터뷰 자체보다 호텔 1층 커피샵의 살인적인 커피값.. 한 잔에 9천5백원이라니...-_- 물론 내 돈으로 먹진 않았지만 말이다.)

*

인터뷰까지 모두 마친 후에는 coolengineer님이 일하시는, 여의도에 있는 안철수 연구소 사내 벤처 Task Force Team(?) 사무실을 방문했다. 미투에서 뵈었던 firbirdz님도 직접 만났다. 그 사무실에서는 idtail.com 및 pumfit이라는 서비스를 개발하고 있었다. (안철수 연구소라는 이름과 달리 보안이나 바이러스에 관한 것이 아니라 인터넷 서비스 쪽 분야다.) idtail.com은 myid.net과 함께 많이 알려진 국내의 유명한 OpenID provider 서비스로, coolengineer님이 텍스트큐브에 대한 OpenID 지원을 본격적으로 개발하시게 된 것도 idtail의 활성화 등의 이유가 있기 때문인 것 같다. (현재 내가 Django로 개발 중인 textcube.org 또한 OpenID를 전격 도입할 예정이다.)

그쪽 사무실 분들과 함께 이른 저녁을 배부르게 먹고, 그 유명한(?) 여의도순복음교회를 가로질러 버스-지하철-KTX-택시로 학교에 돌아왔다. (내가 경기도 쪽을 관장하는 eB카드사의 교통카드를 쓰고 있는데, 7월 1일부터 경기도-서울간 환승 할인이 된다더니 서울을 관장하는 한국스마트카드측과의 협약이 맺어져 시내에서도 환승할인이 되었다. ㅠㅠ) 참고로 그 사무실이 있던 오피스텔 빌딩에 들어갈 때와 나올 때 모두 우연히(?) 이해찬 총리와 마주쳤다; TV에서 보던 그 강렬한 인상(?)이 그대로였다.;

*

간만의 서울 나들이와 함께, 실제로 기자간담회라는 것이 어떤 식으로 이루어지는지, 또 보도자료가 어떻게 만들어지는지, 기자들이 기사를 어떻게 써내는지 그 일부를 엿볼 수 있었다. 동시에 내 존재(?)를 세상에 알린 계기도 되었다. (기사들 중에 'KAIST에 재학 중인 학생'이라고 언급되는 부분이 있는데 그게 나다-_-) 아마 디지털데일리의 심재석 기자님과 했던 인터뷰 내용이 좀더 정리되어 기사화되면 자세히 나오지 않을까 싶다; 아무튼 힘들었지만 관련 일정이 무사히 끝나서 기쁘다.

Posted
Filed under 컴퓨터
  • 서로 다른 vhost에서 운영되는 서로 다른 사이트의 회원 정보를 하나로 묶고 SSO를 구현하려면?
  • 로그인할 때 SSL을 이용하도록 하려면? (https로 넘겨주고 거기서 로그인 처리한 후 다시 http로 넘어올 때)
  • Django로 제작하는 사이트에서 중간에 다른 웹프로그램(php로 짠 것 등)을 embed하고 싶다면?

(앞으로 추가 예정)

Posted
Filed under 컴퓨터

드디어 어제 부로 이번 학기 최대의 다크호스였던 소프트웨어공학개론 프로젝트가 끝났다. 제일 널럴한 과목으로 생각하고 수강변경기간에 덜컥 신청하고, 친구 한 놈과 동아리 후배 녀석 한 명까지 꼬셔서 같이 들었다가 이거 완전 대어를 낚은 셈이 되어버렸다. (조모임을 한 번 하면 12시간씩 하는 등 체감 로드로 보건대 이건 6학점을 줘도 모자랄 것이다.)

어제는 그간의 프로젝트 진행과정과 구현물에 대한 데모가 있었다. 우리팀은 KAuction(KAIST-Auction) 기획을 결국 C#으로 끝까지 구현했고, 이미지 삽입 기능을 제외한 대부분의 기능이 큰 버그 없이 돌아갔다. 영화 예매 시스템, KAIST 사람들끼리 약속을 잡아주고 인맥 관리를 도와주는 KAIST MATE, 학습 효과를 높이기 위해 각종 시험 성적을 통계적으로 관리하고 조교들은 숙제를 내줄 수 있는 시스템 등 다양한 아이디어가 나왔다.

그 중에 마지막으로 발표한 팀이 JSP를 이용해 웹으로 구현했는데, 역시 그걸 내가 그냥 지나칠 리 없다. -_-

초반에 조교들과의 논쟁을 거치면서 웹 기반으로 프로젝트를 하는 걸 포기했는데, 그 당시에는 아직 직접적인 설계 경험이 없었기 때문에 결국 적절한 문서화에 실패할 가능성을 떠안을 수 없었기에 그랬었다. (무엇보다도 팀원들의 학점이 걸려 있었으므로.) 그러나, 240장짜리 최종 Design 문서[footnote]사실 이렇게 길게 된 건, Statemachine Diagram들이 여백이 많았다는 것과, 코드 구현 후 문서 작업을 할 땐 doxygen으로 자동 생성하면서 표로 정리하는 형태를 버렸기 때문이다. 하지만 그것을 감안하더라도, 아무리 줄이고 줄인다고 해도 140장은 될 것이다.[/footnote]를 작성하고 나니, 웹으로 할껄하는 생각이 강하게 들었다.[footnote]사실 나는 태터툴즈/텍스트큐브의 개발에 참여하고 있었고, 웹 관련 프로젝트를 몇 번 해보면서 이것을 어떻게 하면 좀더 "잘" 할 수 있을까 하는 관점에서 웹 기반 프로젝트를 꼭 SE로 해보고 싶었던 것이기도 하다. (교수님은 'fancy한 프로그램'을 만드는 것보다는 문서와 코드의 연결을 해보는 것이 수업 목표라고 하시면서 웹을 제한한 거라고 하시는데, 사실 나는 fancy한 다양한 웹기술의 활용보다는 웹에 SE를 적용한다는 점에서 해보고 싶었던 것이다)[/footnote]

HTTP의 request-response 모델이나 Ajax 기술, 또 로그인을 유지하기 위한 session, Django와 같은 웹프레임웍에서 제공하는 object들, presentation layer와 logic layer의 분리와 함께 발생하는 template 및 javascript들을 처음엔 어떻게 모델링해야 할지 난감한 면이 있어서 조교의 말에 넘어가버렸지만, 지금 와서 생각해보면 머릿속으로 다 줄줄이 그려진다. 물론 그간의 삽질이 있었기 때문에 그런 것도 있긴 하지만.

중간에 이 엄청난 문서 작업에 대해 막 화풀이(?)도 하고 그랬는데, 교수님도 인정하셨듯 한 번의 release를 향해 달려가는 waterfall 모델이기에 어쩔 수 없는 부분이기도 했다. 수업 후반부에서 process model들을 다루면서 다양한 개발 방식에 대한 이야기들이 나왔는데, 그 중에서 XP(eXterem Programming)는 light-weight process로 분류가 되고, waterfall 등의 heavy-weight와 달리 관리자 중심이 아닌 개발자 중심의 관점에서 만들어진 것이라는 얘기가 있었다.

유지보수를 생각하면 분명히 상세한 문서화가 중요하지만, 실제 개발 과정에서는 UML 중에서도 class diagram, sequence diagram, 그리고 자체적으로 attribute/method들과 각종 개념·의도들을 정리한 위키 페이지 외에는 거의 볼 일이 없었다. 다른 사람에게 KAuction의 구조와 코드를 완전히 이해할 수 있도록 하기 위해 (줄여서) 140장 가량의 문서가 필요한 것일까? 문서화의 필요성 자체에는 공감하지만 더 효율적이고 명확한 문서화를 할 수 있는 방법을 강구해봐야 한다고 생각한다.

내 생각에는 문서의 비중을 줄이고, prototyping을 한 후 기능과 세부 구현을 add-on시켜나가는 방식으로 하는 것이 오히려 더 현실감 있고 좋았을 것 같다. 문서화의 진정한 의미는 유지보수에서 나오는 것이기 때문에, 한 학기에 유지보수를 다 다룰 수 없는 상황에서 그쪽보다는 좀더 개발 프로세스 자체를 실험해보는 데 의의를 두는 것이 맞는 것 같다.

한편, SE랩의 어느 분이 논문을 쓰기 위해 effort 측정을 하는 프로그램인 PEM이라는 것을 사용하도록 했었는데, 결국 마지막에 가서는 대부분 쓰지 않은 것 같다. 일종의 키로거 비슷한 것으로, 작업하는 동안 켜두면 분당 keystroke 수, 마우스 움직임, 사용하고 있는 프로그램 등을 모니터링하는 것인데, 한 컴퓨터에서 여러 명이 원격 접속해서 쓰는 경우(Windows Server 2003을 쓰는 경우)에 문제가 발생하기도 하고, 저사양 컴퓨터에서는 성능 저하 문제도 있었다. 이런저런 이유로 인해 사람들이 잘 쓰지 않았고, 결국 그 논문을 제대로 마무리하기는 힘들어보인다.

Effort 측정을 과연 keystroke 등으로 객관적으로 뽑아낼 수 있는 것일까? 어떤 사람은 매우 천천히 한자한자 코드를 치는 사람이 있는가 하면, 머릿속으로 한참 생각하다가 바바바박 하고 코드를 쳐내는 사람도 있다. 그러한 다양성이 얼마나 잘 반영될 것인지 의문스럽다. 어쩌면 bluehope 형의 글처럼 subversion이나 trac 등을 잘 이용할 때 그런 툴들이 제공하는 log가 더 의미가 있는 것은 아닐까 하는 생각도 해본다.

어쨌든 SE 프로젝트는 끝났다. 아쉬운 점도 많았고, 또 배운 점도 많았다. 같이 프로젝트를 했던 사람들과 친해지게 된 것도 소득이라면 소득이랄 수 있겠다. 마지막으로 한 마디.

제발 이 과목 어디가서 3학점짜리라고 하지 말아주세요. OTL

Posted
Filed under 살아가기, 생각하기

처음 시작은 유크 누나의 블로그. 시험기간에 제대로 말렸다. 나중엔 이오공감에도 올라갔다.;;

마치 P와 NP의 중간적이 맛이 많이 나고요. 표현을 하자면 굉장히 처음 보았지만 조금만 생각하면 polynomial time에 satisfiability problem으로 transform할 수 있는, 그것은 마치 P=NP라는 환상적인 대덕 스피드스타즈의 레이서, 8051 칩만으로 듀얼코어를 이기는 알고리즘. 하지만 증명할 수 없어서 다시는 볼 수 없을 것만 같은 그런 느낌을 받았습니다.

참고 자료 : http://genesis.isloco.com/139

댓글로 달았던 것에서 여인을 알고리즘으로 바꿨다. 시초가 된 원문은 다음과 같다. (TV프로그램 '스펀지'에서 어느 소믈리에가 했다는 표현)

음... 마치 이맛은 신세계와 구세계의 중간적인 맛이 느껴지구요. 음... 표현을 하자면, 굉장히 처음 보았지만 처음 본 것 같지 않은 풍경, 마치 이베리아 반도의 탱고의 여인, 탱고를 추는여인. 하지만, 그여인이 친숙하게 느껴지는 그런 느낌을 받았습니다.

유크 누나 블로그에 가면 그 누나의 동아리 게시판에 올라온 미적분학 버전, 건설및환경공학과 버전, 산디과 버전, 세포생물학 버전 등을 볼 수 있고, 수많은 사람들이 댓글과 트랙백한 것을 볼 수 있다. (심리학과 버전, MBTI 버전, 국문과 버전, SW 개발자 버전, ....)

Posted
Filed under 살아가기, 생각하기

드디어 지난 금요일에 기말고사가 끝났습니다. 시험기간 동안 Supreme Commander에 말리기도 하고, 소믈리에 놀이에 말리기도 하고... 우여곡절 끝에 어쨌든 끝났군요.

일단 이번 포스팅에서는 과목별 총평을 해보겠습니다.

고전역학I

물리과 과목을 들어보고 싶어서 들어본 과목. 교수님이 상당히 쉽게 가르치시는 편이었고, 시험이 교과서 예제 및 숙제 암기 형태라 좀 맘에 들진 않았지만, 뉴턴역학이 전부가 아니라는 것을 알게 되었다. 고등학교 때 뉴턴역학으로 풀려면 굉장히 복잡한 계산을 해야 했던 문제들이 라그라지안으로 쉽게 해석될 수 있다는 것이 매력이었다.
다만 교수님이 정리를 잘 해주시는 건 좋은데 너무 반복적으로 설명(전 시간에 한 내용을 또 설명하고 그러는데 그게 가끔은 그 수업 시간 다 가도록 그러는 경우가 왕왕 있다)해서 물리과 전공하는 친구들은 상당히 지루해했다. (나는 복습을 할 필요가 없어서 좋던데..-_-)

전산기조직

그다지 관심이 있는 분야는 아니지만 전공필수이기에 들은 과목. 그러나 이 과목을 담당하시는 교수님이 학술정보처 처장이라 그런지 술을 굉장히 많이 드셔서 술기운에 수업을 하시는 경우가 많았다;; 수업을 시작하면 조금 재밌는 얘기를 하시는 듯하다가 결국 다들 자게 만드시는 위력의 소유자. 게다가 시험은 족보와 판박이라서 족보를 본 자(혹은 재수강하는 자)와 그렇지 않은 사람들의 차이가 너무나도 크다.
수업 때 출석도 안 부르고 시험도 족보에서 그대로 나오니 공부를 할 필요를 느끼지 못하는 과목이다. 그나마 중간고사는 숙제에서 많이 나와서 할 만 했는데, 중간고사 이후 숙제가 하나도 없어서-_- 내가 혼자 골라서 풀어본 연습문제를 다 비껴갔다. OTL;;; 시험을 보면 시험지를 걷어버리기 때문에 족보를 구하기도 힘든 편. 그래서 이번에 수강한 사람들과 시험 끝나고 문제를 복기해서 동아리 족보를 만들었다. -_-;;
사실 내용 자체는 잘 이해하면 low-level까지 컴퓨터의 작동을 이해하는데 큰 도움이 되지만, low-level이나 embedded에 관심이 없다면 별로 재미도 없는 내용이고(개인적으로는 재밌었지만), 재수강비 15만원 주고 수업 안 듣고 성적 받을 수 있는 과목이라 들을 가치가 없다. (근데 왜 전공필수냐고! ㅠㅠ)

알고리즘

전산과의 가장 중요한 전공필수 과목 중 하나라고 할 수 있겠다. 데이터구조나 이산구조에서도 기본적인 개념과 몇 가지 알고리즘들은 배우지만 여기서는 더 넓은 영역을 다룬다. 문제는, 이 과목을 현재 번갈아 강의하시는 두 분의 교수님 수업이 둘다 매우 들을 만 하지 못하다는 것. 이 문제는 작년 가을부터인가 완전 영어강의로 바뀌어서 더욱 심해졌다.
나이가 좀 있으신 신교수님의 수업은 교수님의 목소리 톤이 매우 일정하고 졸리기 때문에 안 그래도 듣기 힘든데, 영어로 하는데다 굉장히 많은 내용을 꾸역꾸역 머리에 집어넣어주시는 스타일이라 따라가기가 힘들다. (잘만 따라가면 배우는 건 많다.) 이 강의의 문제는, 뭔가 필기를 해야겠다고 펜을 드는 순간 그 다음 수업 내용을 놓쳐버린다는 것. 한글 강의의 경우 웬만하면 머리에 buffering이 되는데, 이 강의는 가르치는 게 많아서 그런지 설명을 한 번씩만 하고 죽 지나가버리는데다 영어라서 한두 단어를 놓치면 전체 맥락이 끊겨버린다. (게다가 수업자료 슬라이드가 매우 보기 힘들게 구성되어 있다. 정의하지 않은 문자가 막 튀어나오는가 하면 내용을 정리한 게 아니고 Why? How?라는 질문만 잔뜩.... 사실 스스로 생각해보라는 점에서는 좋지만 수업을 듣기가 힘들어서 슬라이드에 의존하게 되기 때문에 쥐쥐다.) 다만, 교수님 자체는 열정이 있으셔서 수업 외 시간에 따로 찾아가면 질문도 잘 받아주시고 보강도 꼼꼼히(...) 하셔서 좋았다.
다른 한 분은 비교적 젊으신 최교수님인데, 사실 작년 가을에 들으려다가 첫 시간 듣고 바로 드랍했다. 이거야 원, 외국에서 공부하고 오셨다는데 영어강의를 이렇게 못하시면.... (내용만 안다면) 내가 대신 강의하고 싶을 정도다. -_-;;;; 대신 난이도나 로드는 신교수님 수업에 비해 낮다고 한다.
어쨌든 알고리즘은 수업 내용보다는 주로 교과서 및 Introduction to Algorithms를 보면서 주변 사람들과 정보를 공유해가며 공부를 할 수밖에 없었다. (나중에 안 사실인데 초반에 나온 몇몇 숙제는 Intro. to Algorithms 책 본문의 식 유도과정을 문제로 내기도 했던...-_-)

응용미분방정식

그야말로 어려운 이론도 없고 노가다만 하면 되는 과목이지만, 어떻게 된 게 수업은 이번 학기 수강과목 중 가장 들을 만했다. 응수과나 다른 과 교수님들이 수업을 하시는 경우가 많은데, 수학과 교수님이라서 그런지 설명도 체계적이었고 항상 수업 시작후 10분 정도 전시간 내용을 정리해주셔서 수업을 따라가기가 아주 편했다. (거의 안 졸고 필기도 거의 안 빠지고 다 했다)
다만 시험이... 시험이...............OTL OTL ;;;; 나름 필기도 열심히 하고 SE 프로젝트 때문에 퀴즈 몇 번 망한 거 빼면 퀴즈도 열심히 보고(매 챕터 내용정리도 하고..) 했던 과목인데 시험에서 완전... 족보를 보니까 매우 쉽길래 계산 실수가 곧 학점이겠구나 했는데, 문제 난이도가 갑자기 급상승했다. 미적분과 응미 전 범위의 모든 내용을 속속들이 꿰차지 않으면 풀 수 없도록 해놓았던 것이다. (겉보기엔 문제가 간단해보여도 실제로 계산해보면 3~4가지의 계산 방법 중 일반적으로 쓰는 것으로는 풀리지 않고 꼭 가장 외우기 싫은(?) 방법을 써야만 풀리게끔 해놨다.. -_-) 백지가 속출했다는 소문도 있지만 실제 성적 분포가 어떨지 예측을 할 수 없다.

소프트웨어공학 개론

일단 한숨부터. 하아;
이번 학기 가장 널럴한 과목이라고 생각하고 수강변경기간에 추가 신청한 과목인데, 결과적으로 다른 모든 과목을 말아먹는 과목이 되고 말았다. -_- 수업 자체는 그냥 교양 분위기였는데, 5명이서 하는 팀프로젝트가, 직접 제안한 프로젝트(주로 서비스 형태)를 가지고 Waterfall process model을 따라가다보니 문서 양이 기하급수적으로 증가해서 결국 최종 설계 문서는 A4 160장을 돌파했다. -_-; SW 개발이라는 것 자체가 워낙 추상적인 거라서 사람마다 생각하는 방식이 다 다르기 때문에 이를 sync시키기 위해서 시간이 많이 걸렸고, 로그인과 같은 매우 사소한 부분도 설계 문서 작성과 토론에 엄청난 시간이 걸렸기 때문에 로드가 10학점에 달했다. (조모임 한 번 하면 12시간씩 하고 그러니 다른 과목을 공부할래야 할 수가 없었고, 이 때문에 결석한다거나 퀴즈를 쥐쥐치는 일도 있었다.) 아직도 프로젝트가 안 끝나서, 다음 주 화요일에 최종 데모 발표까지 해야 한다. -_-;

URP : 수중로봇 개발

이것도 참... -_-; 주제 자체는 상당히 흥미로운 것인데, 교수님과 랩 조교님들 모두 로봇 제작을 처음 해보시는 거라서 삽질을 너무 많이 했다. 특히 어떤 부품들을 사용할 것인지 결정된 것이 4월쯤이었으니, 1월 초부터 시작한 걸 생각하면 너무 오래 걸린 셈이다. 게다가 부품들을 주문해서 인도받기까지 1개월이 넘게 소요되어 결과적으로 제대로 부품들을 건드리고 삽질을 시작한 것은 5월 중순부터였다. 축제에 기말고사 지나고 나니 다음 주 금요일이 최종보고서 제출 마감일.;;; 다행히, 이 연구를 우리가 한 번 하고 끝나는 게 아니고, 그 랩에서 몇 년 동안 계속 이어서 하면서 URP로 계속 개설하고 있기 때문에 연구 자체가 망했다...라고 말할 수는 없지만 많이 아쉬운 부분이다. 그런 점에서, 혹시 이 글을 보는 사람 중에 URP를 하고자 하는 사람이 있다면, 반드시 그 랩 구성원들이 어느 정도 경험이 있는 분야의 주제를 택하라고 얘기해주고 싶다. ㅠ_ㅠ

Posted
Filed under 만들어내기

간만에 그린 그림. 그린 지는 좀 된 것인데 마침 생각나서 올려본다.

Artwork1

주제 1

Artwork2

주제 2

Artwork3

주제 3

Posted
Filed under 살아가기, 생각하기

동아리 후배인 성진이의 소개로 CT 대학원에서 지난 축제부터 개최하기 시작한 완전연소 레이브파티(보도 자료)에 가봤다. 클럽이라는 게 대체 어떻게 놀아야 하는 것인지 몰라서 쭈뼛쭈뼛해서 지금껏 가본 적이 없었는데, 그냥 가서 흔들면(?!) 되었다.

처음엔 같이 입장한 동아리 사람들끼리만 놀았으나, 나중에는 모르는 사람들과 추기도 하고 재미있었다. 무엇보다 흥미로웠던 것은 아는 사람들끼리 모여 있다가도 모르는 사람들끼리 갑자기 막 섞이는 순간이 있다는 것이다. 갑자기 어깨를 붙잡고 기차놀이-_-를 한다든가, 사람들이 원형의 빈 공간을 만들더니 갑자기 아무나 끌어내서 붙여놓고 같이 춤을 추게 한다든가 하는 현상들이 나타났다.

이러한 대중들의 행동 양식은 얼마 전 CC Salon에서 봤던 미디어아트 작가들에게 영감이 원천이 되는 바로 그것일 게다. 친화력과 배타적 성질을 파라메터로 두고 입자가 매우 많아졌을 때 흥미로운 양태를 보이는 것이다. 좀더 거창하게 덧붙이자면 일종의 소셜 네트워크를 실시간으로 놀면서 경험할 수 있는 곳이 바로 클럽 파티라고 할 수 있겠다.

다만 아직 경험이 없어서인지, 사람들이 각자 자기가 하던 동작에 싫증을 느껴서 동작을 바꾸거나 다른 파트너를 찾으려고 하는 순간을 잘 캐치해서 파트너를 바꿔가면서 노는 것이 질리지 않게 놀 수 있는 방법인데 그러한 타이밍을 잡기가 어렵거나 용기(?)가 없어서 그냥 있었던 경우가 많았다. (그래도 나름 외국인하고도 추고-_- 중간에 지인의 지인으로 끼어든 모르는 사람과 파트너를 해보기도 하고.. 일부를 제외하고는 아직 우리학교 사람들이 이런 분위기에 익숙하지 않은 듯싶다.)

한 시간 정도 정신없이 뛰고 움직였더니 다리가 아파서 잠시 밖에서 쉬었다가 다시 한 40분 정도 들어가서 있었다. 시간이 늦은 탓에 입장객 전원에게 주는 무료 cocktail은 못 먹었다.;; 대신 서 총장님의 정책으로 더욱 많아진 우리학교의 외국인들은 거의 다 모였는지 매우 많은 외국인들을 볼 수 있었다. 스튜어트-_-일반물리를 같이 들었던 인도 사람(국적이 뭔지는 정확히 모르나 그렇다고 추측됨)에게 말을 걸어보기도 했다.

사실 고전역학 숙제 듀가 당겨진 것을 모르고 있다가(왜 하필 축제 기간에...orz) 어제서야 공지사항을 보고 오늘 부랴부랴 하느라, 또 어제는 비스타 깐다고 삽질하다 잠들어서 축제를 제대로 못 즐긴 것 같아 아쉬웠는데, 오늘 하루 달린 것으로 미련없이 마무리할 수 있었다.

덧. CC Salon에서 한국판 CCMixtor 프로젝트를 하시는 CT대학원의 이종은 님도 만났다. Staff photographer를 하고 계시길래 사진도 한 장 찍었다;;

덧2. 레이브파티는 DJ가 즉흥적으로 연주하는 테크노 음악에 맞추어 참여자들이 함께 밤새워 춤을 추는 파티를 가리킨다. (KAIST 신문의 설명) 실제로 이번 파티도 폐막 시간이 "해 뜰 때"였다.;

Posted
Filed under 컴퓨터

지금은 Total Annihilation과 Supreme Commander 시리즈를 Starcraft보다 높게 평가하고 있지만, 초기 Starcraft 출시 당시에는 나도 굉장한 매니아였기 때문에 Starcraft II 또한 상당히 기대가 된다. 특히나 한국 게이머들의 성향을 잘 반영할 것이라 예상되기에 성공할 수 있을 것 같다.

Starcraft2 Screenshot

프로토스에 추가된 새로운 유닛이 테란을 공격하는 모습 (출처: SC2 홈페이지)

그러나 Supreme Commander에서 보여주는 대규모 전투를 손쉽게 관리할 수 있는 인터페이스나 그와 유사한 형태는 도입되지 않을 것으로 보인다. 대신 방송을 고려하겠다고 한 것으로 봐서 어쩌면 적절한 시점 변화 같은 것을 가능하게 할 것 같다. (특히 게임 UI를 없애거나 선택한 유닛의 기본 정보만 보이게 하고, 시점을 옆으로 눕혀서 전투를 더 박진감 넘치게 보여준다거나 하는 등..) 다만 아무리 스타라고 할지라도 TA 시리즈에서 보여준 무한 예약 명령을 지원해주면 좋겠다는 개인적인 소망이 있다. (기존 스타에서는 Probe의 건물 짓기에 한해 지원되기는 했지만..)

Supreme Commander Screenshot

수프림 커맨더의 화면. 줌아웃을 한 상태에서 아이콘으로 모든 유닛을 식별할 수 있고 컨트롤도 가능하다.

Supreme Commander Screenshot

물론 수프림 커맨더도 이렇게 디테일한 화면도 감상할 수 있다. 더 많은 스크린샷은 60frame 참조.

물론 고유의 밸런스와 유닛 체계는 독보적이지만, 개인적으로 Starcraft II의 그래픽과 조작감은 C&C3와 비슷한 느낌이다. 나는 다른 것보다도 캠페인 에디터가 기대된다. Starcraft와 Warcraft를 거치면서 보여준 캠페인 에디터를 통해 보여준 바가 있기에 특히 기대하고 있는 부분이다. (Supreme Commander의 경우 그 어떤 게임보다도 높은 자유도의 customizing 및 modding이 가능하지만, 좀 전문적인 지식과 프로그래밍 기술을 요구하고 있다는 단점이 있다. 맵에디터는 아직 공식 발표되지 않기도 했고.)

아무튼 상당히 기대되는 게임임에는 틀림없다. 덕분에 PC 업그레이드 수요가 좀 일어날 것 같다.

Posted
Filed under 컴퓨터
User inserted image

현재 상황

.....SE 하기 싫다... :P

추가 : 옆에서 조원들이 보고 하는 말 "말림도 추가해라" -_-

Posted
Filed under 컴퓨터

오늘 오후 4시부터 7시까지 구글 한국 R&D 센터장이신 조원규님과 Jonathan Kennell, 마운틴뷰에서 근무하고 있고 한국 R&D 센터로 오려고 하는 S/W 엔지니어인 Peter, 한국 R&D 센터에 근무 중인 이충식씨 등이 와서 구글 홍보 겸 간단한 세미나를 했다. 강연 내용은 Kennell이 근무시간에 하는 일로, Machine Translation에 관해 현재 구글에서 취하는 접근 방법을 개괄적으로 설명해주었다. 발표 마지막 부분에는 recruiting에 관한 얘기도 했다.

강연이 끝나고 Machine Translation 및 구글의 근무 환경, 구글 전반에서 쓰이는 기술에 관한 질문들이 이어졌고, Kennell과 조원규씨가 친절히 대답해주었다. 내년부터 스위스 취리히에서 구글 S/W 엔지니어로 일하시게 된 미래 누나도 몇 가지 질문을 하셨는데, 회사 분위기 등에 관심이 많은 것 같았다. (또 한국 사무소에서 일할 수 있는지 여부도 궁금하셨던 듯.)

질의응답 시간 후에 Reception 시간이 있었는데, 워낙 사람이 많이 왔던지라(전산동 제1공동강의실이 가득 찬 걸 보는 건 처음이었다. 늦게 온 사람들은 뒤에서 서서 봤을 정도.) 구글측에서 준비한 과일, 과자, 김밥 등의 음식들은 순식간에 동나버렸다.;; 이번에 드디어 명함을 쓸 기회가 있었는데, 바로 Opinity에 계시던 조원규씨와 Jonathan Kennell과 명함 교환을 할 수 있었다. (영문 이름을 빼먹은 바람에 Kennell에게 줄 때는 볼펜으로 적어서 주었다 -_-)

lifthrasiir(토끼군)와 함께 Kennell과 몇 가지 질답을 나눴는데, 그 중 Software Engineering을 구글에서는 어떤 식으로 하고 있냐고 물어봤다. 그러면서 "완벽하게 설계를 다 해놓고 그에 따라 구현하는 현재 수업의 CADIT 방식은 실제 적용에 문제가 많은 것 같다"란 얘기를 했더니 그 큰 눈으로 활짝 웃으면서-_- "그렇다"고 한다. ;;;

구글에서는 어떤 프로젝트에 대한 Concept을 먼저 메일 등으로 공유, 피드백을 받은 후 wiki page 등의 informal한 방법을 이용하기도 하고 자체적으로 정리하는 양식(이 부분을 정확히 못 들었음) 같은 것으로 간단하게 design한다고 한다. 프로그램의 세부적인 부분까지 모두 적지 않으며, 해당 프로젝트의 'most interesting part'에 대해서만 'clearly' 적는다고 한다. UML은 사용하지 않으며, 새로운 변경 요구 사항이 발생하면 그때그때 design 문서를 수정해서 쓴다고 한다.;

어쨌든 결론은 우리의 SE는 삽질이라는 거. 물론 이러한 방법을 이용해야 하는 분야도 있을 수 있겠으나, 실제로는 그다지 사용되지 않는 것 같다. (사용되지 않는 이유가 단지 사람들이 몰라서, 귀찮아서라기보다는 지속적인 변화 요구를 수용하는 데 적합하지 않기 때문이라고도 하는데 아직은 내가 판단하기에는 이른 것 같다.)

명함 배포 작전도 성공하고(-_-v), 구글의 회사 환경이나 분위기 등을 엿볼 수 있어서 좋았다. 언젠가 나도 구글에서 일할 날이 오게 될까? 아직은 모르겠다.

Posted
Filed under 살아가기, 생각하기

우리학교 다니는 사람이라면 누구나 알 만한 사람들이 있다. 서측식당은 좀 덜한 편이지만, 동측식당은 가끔씩 아예 팔까지 붙잡고 안 놓아주기도 하는 그분들. -_-; 바로 동문 LG카드를 홍보하기 위해 나온 아줌마들이다.;

어제였나 그제였나, 친구랑 밥먹고 나오는 길에 갑자기 붙잡더니 혜택이 많다는둥 어쩌구 하면서 다짜고짜 카드를 만들라는 것이다. 문제는, 그 카드는 석사생 이상만 만들 수 있는 것인데도 자기 딴에는 석사인줄 알았다는 식으로 말한다. 좀더 전에는 동측식당 매점에 뭐 좀 사러갔다가 10여분이나 억지로 대화를 나누고 명함까지 받아야 했던 적도 있었다.

우리학교 사람들이라면 충분히 LG 동문카드가 존재함을 알고 있고, 또 필요한 사람들은 알아서 만들게 되어 있다. 하지만 대개의 경우 자기가 원하는 서비스에 특화된 신용카드를 가지고 싶어할 것이다. 또한 소득이 없다고 분류되는 학부생들의 경우는 당연히 만들 수 없는 카드다.

이런 이유로, 나는 LG카드에서 KAIST 동문 카드의 홍보 전략을 대폭 수정했으면 한다. 막무가내로 달려드는 아줌마들과 마주칠 때마다, 그나마 만들까 하던 사람들도 지레 도망갈 것 같은 지금의 홍보 방법은 오히려 역효과만 날 뿐이다.

사실, 나는 수익의 일부가 KAIST 발전기금으로 적립된다(?)는 것 외에는 도대체 동문카드가 뭐가 좋은지 잘 모르겠다. 달려드는 아줌마들을 피해 달아나다보니 귀찮게만 느껴질 뿐. 뭔가 이목을 끌만한 서비스 혜택을 제시하든지, 인터넷 등을 이용해서 프로모션을 한다든지 등등 다른 방법들이 많이 있을 텐데도 왜 굳이 지금과 같은 홍보 방법을 유지하고 있는지 모르겠다.

....빨래 다 되길 기다리면서 한 푸념 끝. -_-

Posted
Filed under 만들어내기

앞서 모종의 테스트 목적 및 개인 사용 목적으로 명함을 하나 만든다고 했었다. 지난 주 목요일에 주문, 드디어 도착했다. 드디어 공개한다.

User inserted image

명함 작업본

User inserted image

실제 인쇄 결과물

확실히 그라데이션 처리한 부분이 인쇄는 의도대로 잘 되었음에도 눈으로 보기에는 모니터보다 훨씬 연하다. (자세히 들여다보면 잉크 망점이 찍혀는 있으나 너무 작아서..-_-) 색깔은 RGB 빛으로 색을 내는 모니터에 비해 조금 덜 화사하게 나왔지만 어느 정도 예상했던 바였고, 룸메 말로는 오히려 인쇄한 게 낫다고(...) 하니 이 정도면 만족.

다만 살짝 아쉬운 것은 진한 검정 배경에 컬러 글자를 찍으면서 검정과 다른 색상들의 위치가 정확하게 맞지 않아 0.1mm 이하 정도로 어긋나는 바람에 자세히 보면 글자 획의 오른쪽 방향으로 흰줄들이 아주 가늘게 보인다는 것. 그래도 이 정도면 만족할 만한 품질이다.

뒷면의 비트맵 이미지는 아마 이 블로그를 계속 봐온 사람이라면 알 것이다. 새로 이사 간 집의 부엌에 달기 위해 그린 그림인데, 단면으로 만들자니 심심하고, 양면으로 만들자니 딱히 뒷면에 넣을 만한 것(개인 명함이다보니 회사 약도나 로고를 넣는다거나 할 것도 없고 하니까)이 없어서, 내 개성을 살리자는 뜻에서 내가 직접 그린 작품을 넣은 것이다.

비트맵의 해상도는 권장 300dpi보다 낮은 240dpi 정도인데, 잉크 망점들로 인쇄가 되어 있어서 계단 현상은 전혀 보이지 않는다. 어떻게 나올까 가장 걱정했던 부분인데 깔끔하게 잘 나왔다. 재단선 처리도 작업할 때 생각하고 했던 것하고 거의 똑같다.

자, 그럼 이제 다음 번 블로거 모임 등에 나갈 때부터 이 명함을 쓰면 되겠지. 우선 동아리 사람들한테 좀 돌려야겠다. :D

덧. 살짝 이름의 위치를 조금 더 왼쪽으로 했으면 좋았을 걸 하는 생각이 든다.;

참고: 디카로 찍은 사진을 다시 모니터로 보니 실제 종이를 눈으로 보는 것과는 또 다르다. 그래도 이 정도면 대충 차이를 알 수 있을 듯?;;

Posted
Filed under 살아가기, 생각하기

...무려 열흘이 넘도록 블로그에 글을 하나도 안 썼다. 이게 다 미투 때문이다(?). -_-;

1. 명함 만들기

몇 가지 실험(?)을 위한 모종의 테스트 목적을 포함, 개인 명함을 하나 제작했다. 직접 디자인해서 인쇄만 맡겼는데, CMYK 색상이 실제로 어떻게 나올지 몰라서 색상이 어떨지 조금 걱정되기는 한다. 오늘(4월 30일) 배송 예정이며 도착하면 사진 찍어서 블로그에 올릴 생각.

2. Tatter Network Foundation & Needlworks

지난 1년여 동안 활동해온 Tatter & Friends가 이제 슬슬 변화를 꾀하고 있다. 단순히 포럼을 통한 공개 커뮤니티로서의 TnF가 아닌, 보다 큰 스케일의 프로젝트를 강력하게 추진할 수 있도록 하기 위한 TNF 재단의 구체화, 그리고 그 핵심 task force라고 할 수 있는 Needlworks 팀의 탄생이다.

자체 메일링 리스트를 통해 한 쓰레드에 수십~백개에 이르는 메일 토론이 하루 건너 매일 이루어질 정도로 활발한 내부 커뮤니케이션과 함께, 태터툴즈와 관련하여 몇 가지 큰 사건(?)을 터뜨릴 준비를 하고 있다.

3. 중간고사

사실 블로그에 글이 뜸해진 가장 큰 원인은 이것. 아직 시험결과가 나온 과목이 응용미분방정식밖에 없어서 결과에 대해서는 뭐라고 말을 못 하겠고, 다만 느낌상 고전역학과 전산기조직은 그럭저럭 잘 본 것 같다. (알고리즘은 최악의 경우 반타작, 가장 좋은 경우도 80% 정도일 듯하고, SE는 시험이 별로 중요한 과목이 아닌데다 시험 자체도 정답이 딱 존재하는 류가 아니라서 그다지 할 얘기가 없다.)

응용미분방정식의 경우는 생각보다 계산 노가다에 대한 감점이 적어서 전반적인 학생들의 점수는 꽤 높게 나온 편인데, Cauchy-Euler 방법으로 풀어야 하는 2번 문제를 전혀 엉뚱한 방법으로 풀려고 시도하다가 gg치는 삽질을 한 게 화근이었다. (오히려 다른 사람이 어렵다고 하는 문제는 그럭저럭 방법을 잘 선택해서 푼 편이다) 물론 방법은 다 맞게 풀었으면서도 계산 실수로 인해 만점 받은 문제는 별로 없었고, 적분 상수 처리를 빼먹는다든가 계수를 살짝 틀리게 썼다든가 해서 대체로 1~2점 정도씩 감점. (근데 이게 모이니까 꽤 크다;;;) 문제는 평균이 생각보다 높다는 거. 그래도 기말 한큐라고 하니 기말을 노려볼 수밖에 없다. 선대개처럼 재수강할 일은 만들지 말아야지. orz

4. Supreme Commander

학기 중에 거의 하지 못했던 수프림 커맨더의 각 종족별 미션을 모두 클리어했다. 그러나 핵미사일이 떨어지는 몇몇 지점을 방어해야 하는 방어 미션에서 하드로는 타이밍을 맞추지 못해 중간 난이도로 하고 넘어가서 살짝 아쉽다. (사실 시간이 충분히 많다면 삽질해서 해결해보겠지만...-_-) 미션을 다 깼으니 멀티를 해볼까- 했더니 갑자기 GPGNet이 접속이 안 되는 불상사가 벌어졌다. ㅠ_ㅠ (재설치하고 패치 다시 해보고 방화벽 꺼보고 별짓 다 해봤는데 쥐쥐..)

한편, 프로그래머의 관점에서 Total Annihilation 때와 마찬가지로 매우 뛰어난 확장성을 보여주고 있는 게임 엔진은 감탄을 금치 못하게 만든다. 공식 개발 도구가 빨리 공개되었으면 좋겠다.

5. Command & Conquer 3

내가 처음 접한 컴퓨터 게임이 커맨드앤컨커 시리즈였고, 레드얼럿까지는 모든 미션을 클리어했을 정도니 상당히 정이 많은 게임이다. 타이베리안 선은 정품 구매를 했으나 당시 내 사양이 딸리는 바람에 제대로 못 즐기고 처박아두기도 했다. 어쨌든, Supreme Commander 다음으로 기대했던 전략시뮬레이션 게임이고, 또 한때 골수 팬이었던 만큼 꼭 해보고 싶은 게임 중 하나다. 그러나 학교 내에서는 IRC 포트가 막혀있는 관계로 멀티플레이가 안 된다는 캐안습한 사실. OTL

6. Springnote 위키 개설

OpenAPI 지원과 한국 사용자 입맛에 맞춘 편집 인터페이스로 사랑을 받고 있는 스프링노트. 기존에 설치해서 쓰던 moniwiki가 있긴 했으나, 활용도가 떨어져서 그만두게 되었다. 그러나 스프링노트의 경우 기본 인터페이스가 편집용이라서, 단지 글 보기만을 하는 경우는 산만한 감이 있다. API를 이용해 글을 긁어와서 최대한 심플한 인터페이스로 보여주고 댓글/트랙백을 달 수 있는 형태의 매시업을 만들어볼까 생각 중이다.