Daybreakin Things
주변 사람들은 내가 게임을 거의 하지 않는다고 알고 있지만, 실은 수 년째 이런 대작을 기다리는 중이다. 바로 Supreme Commander(이하 "SC")다. Total Annihilation(이하 "TA")의 후속작으로, 제작사인 Cavedog이 망한 이후 메인 개발자였던 Chris Taylor가 Gas-powered Games라는 회사를 따로 만들어 새로이 개발에 착수하였고, 2007년 그 모습을 드러낼 예정이다.
작년에도 preview 성격의 스크린샷들이 올라왔었는데, 이젠 실제로 "playable"한 상태인 것 같다. 동영상으로 데모만 되는 건가 했더니, 그게 실제 게임 화면이었고, 특히 Chris Taylor가 실제로 시연하는 영상을 보니 거의 눈물이 다 나올 지경이다.
화질은 다소 떨어지지만 게임의 특징은 모두 볼 수 있을 것이다. Big Bertha와 같은 성격의 초장거리포도 보이고, Krogoth와 거의 동급으로 보이는 거미 형태의 수퍼유닛도 등장한다. 전작의 단점이었던 1개의 유닛만 수송 가능했던 수송선도 여러 유닛들을 실을 수 있게 바뀌었고, shield라는 개념이 추가되었다. 이미 전작 TA에서도 nuke rain이라 불리는 전술이 있었지만 SC의 핵미사일은 실제 스케일의 핵미사일과 같은 수준이다. 화질이 좋지 않아서 잘 안 보이지만, 그래픽도 정말 뛰어나다. 바다를 확대하면 물이 찰랑거리는 것이 보일 정도고, 유닛들의 디테일도 TA하고는 비교조차 되지 않을 만큼 상세하다.
겉으로만 보이는 걸 제쳐놓고도, 정말 유닛 컨트롤에 전념할 수 있는 시원한 인터페이스(물론 데모용이라서 일부러 감추었을 수도 있다)와 무려 듀얼 모니터까지 지원하고, 미니맵이 필요 없을 정도의 빠른 zoom-in, zoom-out은 경탄을 자아내게 한다. (내 생각엔 미니맵 대신 듀얼모니터를 쓰라는 것일지도..?)
TA Korea Fansite에서 봤던 글처럼, 기존의 전략시뮬레이션이 자원과 물량 싸움, 그리고 상당히 정형화된 전술 패턴으로 이루어졌다면, SC는 전장 자체를 엄청나게 확장해버림으로써 패턴화가 어렵게 되었다. 초반 압박 같은 것이 사실상 불가능해졌고, 다양한 유닛들을 활용하여 어떤 경로로 보내고 배치하는가가 더욱 중요해지는 것이다. 자원은 얼핏 보기에 metal과 energy라는 형태가 유지될 것 같아 보인다. Chris Taylor 본인조차 정신적 계승을 받은 기존 TA와는 확실한 차별화를 선언했던 만큼 실제 전략적 요소가 얼마나 강조될 지 기대된다. (동영상에서 해전 부분을 설명하는 말을 들어보면, 경로를 지정할 때 무조건 유닛 속도에 따라 도착하는 게 아니라 다른 그룹과 동시에 도착하도록 한다든가 하는 세세한 설정도 가능한 것 같다)
어째 사양의 압박이 좀 있어보이긴 하지만, 내가 유일하게 좋아하는 게임이라 할 수 있는 TA의 후속작이니만큼 그렇게 투자할 만한 가치가 있으리라 본다.
지난 주말에 있었던 Codefest이지만, 그동안 바이오정보전자개론 시험과 System Programming 프로젝트 제출과 각종 숙제 등으로 인해 정신없이 지내느라 후기를 이제서야 쓰게 되었다.
이번 코페에서는 무엇보다 Tatter&Company의 노정석 사장님과 Tatter&Friends의 대표격이신 inureyes님이 직접 참가하셨다는 것이 눈에 띄었다. 나는 MetaBBS 프로젝트로 참가하였지만, 밤샘할 때 TatterTools Documentatino 프로젝트에 끼어서(-_-) 같이 cmap(마인드맵의 일종)을 그려가면서 태터툴즈의 미래에 대해 아이디어를 모아보기도 했다. 확실히 새로운 수익 모델과 다른 포털들과의 연계 등 비즈니스적인 측면까지 시야를 넓히는 데 도움이 되었고, 아이디어를 구성하는 방법에 대해 배울 수 있었다. (사실 경영자의 입장에서 본다면 웹표준이니 뭐니 하는 논의들만이 전부가 아니라는 것을 보게 된다. 앞으로 몇 달 내로 TNC를 주축으로 정말 많은 변화가 벌어질 것임을 알 수 있었다. 이번에 태터툴즈 블로그 호스팅 서비스도 오픈한다.)
한편 MetaBBS는 CN님, lacovnk님, 그리고 전설(..)의 서상현 선배가 참여하여 전체 revision 330 정도 중에서 100 정도를 하룻밤 사이에 이뤄내는 놀라운 집중도를 보여주었다. (물론 삽질해서 한줄 commit한 것들도 좀 있지만 말이다) dev.metabbs.org의 Timeline을 보면 밤을 새면서 몇 분 간격으로 계속해서 코드 업데이트가 이루어졌다는 것을 볼 수 있다. (버그들도 많이 고치고, 새로운 기능들도 추가되고, 또 그로 인한 새로운 버그들이 생겨나기도 했다)
확실히, 온라인에서 IRC 등으로만 대화하던 사람들과 직접 만나서 같이 코딩하는 것이, 비록 1박2일이라는 짧은 시간이긴 하지만, 엄청난 집중도을 이끌어낼 수 있는 것 같다. 덕분에 상당히 geek스런 분위기를 연출하긴 하지만, 그러면서 보다 돈독한 인간 관계도 형성할 수 있다. 다음 번 8회 Codefest는 8월에 3박4일 정도의 일정으로 제대로 된 숙식까지 제공되며 진행된다고 하니 이참에 동아리 사람들 끌고 가서 OCO 플젝이나 해볼까 하는 생각도 든다.;
ps. 그나저나 매번 코페에서 BMS 플레이를 통해 사람들의 이목을 집중시키던 토끼군(....)은 태터툴즈 팀의 참가로 인해 만방에 알려지게 되었으니, 이걸 축하해야 말아야 할까. -_-
ps2. 아까 저녁 시간에 Daum에 근무하시는 한 선배가 밥을 사주신다고 해서 동아리 사람들과 함께 저녁을 먹었는데, 그때 tattertools의 블로그 호스팅 서비스 이야기를 했었다. 알고보니 오늘 그 내용이 발표되었고, Daum이 후원자였다. -_-;;
드디어 제로보드 5 개발 안내 글이 떴다.
현재 90% 정도 개발이 완료된 상태로, Smarty 템플릿 엔진을 이용해 레이아웃을 구성하게끔 되어 있다고 한다. 기존의 게시판+회원관리 수준이 아니라 하나의 CMS 툴로 재탄생하는 것이다. Smarty가 처음엔 낯설게 느껴지겠지만 실제로 써보면 매우 직관적이다. (재작년에 추진하다가 중단됐던 경기과학고 홈페이지 프로젝트도 smarty 기반이었다) 태터툴즈 등에서 볼 수 있는 스킨 치환자를 매우 일반화시켜놓은 것이며, 간단한 프로그래밍(if 문을 이용한 분기나 for 문, 값을 원하는 대로 formatting하기 등)이 가능하며, 스킨 template 파일들이 php 코드로 변환되어 캐싱되기 때문에 실행 속도도 빠르다. (그 변환하는 소스를 봤는데 엄청나게 길었던 기억이 난다)
또하나 눈여겨 볼 점은 GPL 라이센스를 따를 예정이라는 점이다. 마음에 드는 대로 고쳐서 원저작자를 표기하고 소스 코드를 공개하는 조건 하에 재배포하는 것이 가능하다는 것이다. 따라서 기존 제로보드를 쓰면서 각종 패치를 만들고 이를 개별적으로 적용해야 하는 불편이 사라지게 되었다. 제로보드 자체의 개발도 zero님이나 그 주변 분들뿐만 아니라 보다 많은 사람들이 참여할 수 있을 것으로 기대된다.
문제는, 거의 새로 만든 프로그램이나 다름 없기 때문에, 기존 사용자층을 어떻게 흡수할 것인가 하는 점이다. 지금까지 쌓인 방대한 양의 스킨과 각종 팁 자료를 전혀 쓸 수 없을 것이기 때문이다. (아마 유명한 스킨 제작자들은 smarty를 배워서 변환해 제공할지도 모르겠다) 그런만큼, 특히 Documentation이 잘 되어 있어야 한다는 생각이 든다. 사용자들이 웹표준을 처음부터 잘 지키기 어렵다는 점도 초기 진입 장벽이 될 것이다.
하지만 일단 일련의 변화를 겪고 안정화되면 우리나라 사용자들의 취향에 잘 맞으면서 최신 웹 경향을 잘 따르는 멋진 툴이 탄생할 것이라고 생각한다.
귀찮으신 분들은 이전 주소 그대로 쓰셔도 큰 문제는 없지만, 앞으로 주소가 변할 가능성을 염두에 두고 Feedburner RSS로 변경해 주시면 고맙겠습니다. (실은 토끼군이 하는 거 보고 따라하기...지만 구독자 수 통계도 궁금하고 해서..-_-;;)
아무튼 많이 애용(?)해주세요~
드디어 Tatter&Friends가 결성되고 나서 최초의 버전이 릴리즈되었다. 내가 중간고사 등 시간이 없었던 관계로 많은 기여를 하지는 못했지만 Ajax javascript의 사소한 오류나 paging 링크에서 현재 선택된 페이지의 링크 색상을 스킨에서 변경할 수 있도록 class 속성 추가 등 자잘한 몇 가지 문제점들을 고칠 수 있었다.
아마 다음 번 1.0.6 버전에서는 위지윅 에디터의 기본 글꼴 및 스타일을 스킨과 동기화시키는 부분에 대한 작업에 들어가게 될 것이다. 현재 1.x 버전에서는 키워드 페이지 편집 기능이 존재하지 않는데, 글별로 다중 키워드 공개가 가능하도록 만드는 작업도 해야 된다.
System Programming 세 번째 프로젝트와 바이오정보전자개론 에세이 및 책읽기 숙제 Due, 바정전개론의 정재승 교수님 수업 범위 시험(....)을 앞두고 주말 내내 KLDP CodeFest에 가는 것이 다소 부담스럽기는 하나(-_-), MetaBBS와 TatterTools Documentation 프로젝트에 참여하면서 학과 공부와는 다른 소기의 경험과 성과를 얻을 수 있으리라 생각한다.
*
요즘 다시 피아노에 빠지기 시작했다. 원인은 슈베르트 즉흥곡과 모차르트 소나타. 생각보다 어렵지 않으면서도 내가 좋아하는 스타일의 곡들이 많다. (모차르트 소나타는 대충 치려면 대충 칠 수 있는데 소리를 예쁘게 내는 것이 쉽지 않다) 물론 깔끔하게 치려면 연습은 꽤 해야겠지만, 딱 적당한 난이도여서 flow 상태에 빠질 수 있을 것 같다.
한편 갑자기 빡쎄진 바이오정보전자개론은 정재승 교수님의 악명 높은(?) 책읽기+에세이 과제 때문에 애들이 다들 진절머리를 치고 있다. 일주일 하나씩 책 읽고 원고지 20장 분량의 에세이를 써가야 하며, 책 읽은 내용을 바탕으로 간단한 퀴즈까지 친다. 다음 주 월요일을 마지막으로 정재승 교수님의 수업이 끝나긴 하지만 코페 다음날 치는 시험이란... OTL (대략 30장은 될 듯한 영어로 강의 자료를 "숙독"하라고 하셨으니.. 어쩌면 코페 가서 시험공부해야 될지도 모르겠다 -_-)
하여튼 요즘 바쁘게 지내고 있다. 저번 주에는 숙제 듀가 3일 연속으로 걸려 있었던 데다 MetaBBS 개발 센터 사이트 세팅 등으로 새벽 4시에 자는 날이 반복되었었고, 이번 주는 다행히 그 정도는 아니지만 또 나름대로 빡쎈 일정이 되고 있다. 아무튼 바쁜 만큼 또 재미있고 보람있는 것이니 이번 학기 남은 기간도 계속 열심히 살아야겠다.;
간만에 좋은 레퍼런스 글을 읽었다. javascript로 접근성을 지키는 코딩을 하는 방법에 관한 것인데 너무나 공감가는 부분이 많다.
우선 <a href="/path/linkfile" onclick="window.open(this.href, '', '...'); return false;" >link</a>와 같은 코딩 방식은 정말 추천할 만한 것이다. 얼마 전에 MR 홈페이지의 익명게시판을 만들면서 글 삭제 버튼을 구현할 때, 이런 방법을 써서 javascript가 되면 확인/취소 대화상자를 띄우고(onclick 핸들러에서 return false를 하면 해당 링크가 실행되지 않기 때문에 가능하다), javascript가 비활성화되어 있을 경우는 그 url이 바로 실행되어 삭제가 된다. 즉 기능 이용에는 아무런 문제가 없게 하고 있는 것이다. 이것은 Firefox/IE 등 여러 브라우저에서 다 통하는 것 같다.
그 다음으로 엄청나게 공감한 건, 각종 form 정보를 javascript를 이용해서 여러 페이지에 걸쳐 자동으로 넘기게끔 되어 있는 것들이었는데, 예로 든 qubi.com(철도·교통 포탈로 철도 예약 가능)을 내가 자주 이용하기 때문이다.
정확한 원인은 모르겠지만 Microsoft Script Debugger를 설치했다가 지운 뒤로 IE에서 qubi.com에 들어갔을 때 열차 조회 시 "권한이 없습니다"라는 메시지가 뜨며 오류가 나기 시작했다. (iframe으로 조회창을 만들어놨던데 그 주소의 host과 iframe을 감싼 document 주소의 host가 달라서 그런 것인지.. 디버깅 해봐도 원인을 모르겠다)
아무튼, 그래서 나는 열차 예약은 Firefox로 하고 결제는 IE로 하고 있다. 그런데 Firefox로 로그인하려고 하면 문제의 javascript를 이용한 redirection 때문에 주소창에 매번 url을 직접 다시 쳐줘야 하는 불편을 겪고 있다. (그나마 열차 조회와 예약이 작동하는 게 다행이라고 해야 되는 건지..orz)
Javascript도 잘 생각을 하고 쓰면 정말 유용한 도구이지만, 그걸 잘못 이해하고 쓰면 가장 최악의 접근성을 낳기도 한다. 철도청이 철도공사로 바뀌어 국가 행정 기관이라고 볼 수는 없게 되었지만, 분명히 국민을 위한 공익성을 띠고 있으므로 아래에서 말한 행정 소송의 범위에 포함될 수 있을 것이다. 제발 저런 javascript를 이용한 redirection 폼, javascript로만 submit 가능한 폼을 만들지 않았으면 좋겠다. (이것 때문에 회원가입과 로그인이 안 되는 사이트만 해도 엄청나게 많을 것이다)
한국 모질라 포럼에 올라온 글이다. 고려대 법대 교수로 재직하고 계시는 분인데, 현재 우리나라의 Microsoft 종속적인 웹페이지들—그 중에서도 특히 관공서와 전자 정부—을 법률 차원에서 비판하고 시정을 촉구하는 민원 제기를 계획하고 있다. 내용을 읽어보면 조목조목 잘 따져놓았고, 약간씩 미흡한 부분들에 대해서는 사람들이 계속 이야기를 하여 고쳐나가고 있다.
그동안 몇몇 블로거, 웹개발자 등 기술적 지식이 있는 사람들 사이에서만 웹표준화 주장을 해왔는데, 이렇게 직접적인 표면적 움직임이 드러나기는 처음이다. 특히나 실제 법률 지식이 있는 법대 교수가 자발적으로 주도하고 있다는 건 큰 의미를 가진다. 아무래도 행정가들한테 보다 강력한 언변을 구사할 수 있을 것이기 때문이다.
웹표준의 문제는 단지 기술적인 면만 있는 것이 아니다. 많은 글에서 말해왔듯, 웹페이지를 만들고자 하는 기획자·주문자부터 인식이 바뀌어야 하기 때문이다. 개발의 편리함, 화려함과 멋진 디자인을 추구하는 것은 좋으나, 그것 때문에 보다 취향에 맞는 웹브라우저를 사용할 권리, 웹사이트 컨텐츠에 대해 접근성을 가질 권리가 박탈되어서는 안 되는 것이다. (사실 개발의 편리함은 일단 웹표준을 받아들이고 나면 역전될 것이다)
마이크로소프트가 IE에 대한 정책을 변경할 때마다 정통부 관계자들이 직접 찾아가서 하소연해야 하는 이런 처지를 하루 빨리 벗어날 수 있기를 바란다. 이 프로젝트가 꼭 성공하였으면 좋겠다.
태터툴즈에서 trac을 사용하는 걸 보고 편리하다는 생각이 들었던 데다, 마침 토끼군이 내 서버에서 trac을 깔아서 theseit 프로젝트에 활용하고 있었기 때문에 나도 MetaBBS를 위한 trac 세팅을 해보았다. 그 결과물은 여기.
특히 이번에는 내 서버를 이용하는 사람들이 직접 참여할 수 있도록 user group 등을 모두 정리하였고, 전용 계정을 만들어서 중앙 집중적 관리를 할 수 있도록 하였다. 아무나 쓸 수는 없고 태터툴즈와 비슷하게 developer 권한을 가진 사람만이 ticket 발행이 가능하게끔 되어 있다. (Reporter와 같은 레벨을 하나 더 둘 지는 좀더 생각해봐야겠다)
그리고, MetaBBS 프로젝트로 CN 님과 함께 제7회 KLDP CodeFest 행사에 참여하게 되었다. 내가 바빠서 워낙 오랫동안 코드에 손을 대지 못하고 있었는데 이번 기회에 좀 제대로 기여를 해봐야겠다.
요즘 들어서 점점 더 많이 느끼고 있는 것이지만, 사람들 사이의 다툼이라는 것이 실은 언어가 가진 불완전성과, 논리적 이해와 설득을 가려버리는 감정에서 기인한다는 것이다. 사실 의도는 그게 아니었으나 순간 잘못 사용된 단어 하나 때문에 싸움이 벌어지기도 하고, 감정이 이성을 덮어버리기 시작하면 아무리 옳은 논리의 말로 설명을 해도 먹히지 않게 된다. (심지어 듣는 사람이 그것이 옳다는 걸 알고 있어도 말이다)
어느 가정에서나 있는 일이겠지만, 우리 부모님도 가끔 사소한 것으로 크게 싸우시는 경우가 있다. 예전엔 막 끼어들어서 말려보기도 했었다. 그런데 형과 내가 대학생, 곧 어느 정도 성인이라고 인정 받을 만한 나이가 되면서 새로운 유형의 갈등이 생겨났다. 실은 부모님을 위해서 하는 소리이나, 그러한 의도를 언어로 표현하는 과정에 있어 감정을 쉽게 건드리게 되는 것이다. 예전에는 아예 그러한 종류의 말을 할 생각을 못했지만, 나름대로 컸다고 그런 소리를 하게 되는데, 이것이 듣는 입장에서는 상당히 거북하게, 건방지게 들릴 수 있다는 것이 문제다. 논리적인 설명을 하면서 감정을 건드리지 않도록 예절을 지키는 것의 균형을 찾기란 쉽지 않다.
물론 어느 한 쪽이 더 잘나고 논리적이라고 해도, 사람의 언어로 의사소통을 하는 이상, 텔레파시를 쓸 수 있다면 모를까, 상대방이 어떤 상황에 대해 알고 있는 것을 온전히 똑같이 받아들인 상태로 말하는 건 거의 불가능하다. 서로 옳은 이야기를 하고 있으나, 감정의 불화가 싹트는 지점이 바로 여기서부터인 것이다. 가끔 말다툼 중에 그 시작의 본질로 돌아가는 경우가 있지만 이미 엎질러진 감정을 그것으로 끝내지 않는다. 이때 나타나는 반응들은 남자냐 여자냐에 따라서도 다르고 개개인의 차이도 크게 작용하는 것 같다. 결국 시간이 지나길 기다리는 수밖에 없다.
사람은 살면서 끊임없이 변화한다. 하지만 가족처럼 가까운 사람일수록 그 변화를 받아들이기 힘들다. 그래서 부모님에게 자꾸 잔소리 아닌 잔소리를 하게 되는 것 같다. 내가 어렸을 때 생각했던 모습은 이게 아니었는데, 그분들도 사람이고 불완전하기에 항상 이치에 합당한 행동만을 보이는 것이 아니라는 것을 이제서야 천천히 깨닫는 중이다. 한편으로는 가정을 통해서 인간 관계를 단련하고 사회성을 키워나간다는 것이 바로 이런 것이구나 하는 생각도 든다.
가족들이 다 열혈 기질이 있어서 한 번 싸우면 크게 싸우긴 하지만, 그래도 내 개인적으로 우리집은 정말로 행복한 집이라고 생각한다. 취미 생활을 공유할 수 있고, 고차원적인 이야기를 서로 통할 수 있다는 것, 그리고 각자가 행복한 가정이라고 생각하고 있기 때문이다. (의외로, 주변 사람들의 얘기를 들어보거나 잘 살펴보면 이런 집이 별로 없는 것 같다.)
분명히, 크고 작은 다툼은 나를 비롯한 가족 구성원 모두의 삶이 끝날 때까지 가정에서든 다른 사람들과의 관계 속에서든 계속 반복될 것이다. 내가 이담에 결혼 생활을 할 때 아내나 자식과 똑같이 싸우지 말란 법이 어딨는가 말이다. 하지만 가정의 틀 안에서 (비교적 안전하게) 미리 경험을 할 수 있다는 것은 분명히 사회 생활을 하는 데 있어 도움이 될 것이다. 오래 전부터 대표적인 사회 문제로 지적되어 온 가정 붕괴가 이런 점에서 사회에 끼치는 손해는 막심할 것이다.
어쨌든 완전한 인간 관계라는 것에 다가설 수 있도록 끊임없이 기쁨과 슬픔과 아픔을 겪어야 할 것이다.
중간고사를 끝내고 몇몇 레포트들을 남겨둔 채 잠시 휴지기를 가지고 있다. 그 사이에도 태터&프렌즈 포럼은 아주 활기차게 움직이고 있다. 이젠 사람들이 쏟아내는 각종 버그 보고와 php 코드 조각들을 다 쫓아가기 힘들 정도가 되었다. 노정석 님께서도 포럼 한 달 운영 후에 말씀하셨듯 이렇게 역동적으로 돌아가는 포럼은 처음 보는 것 같다. 단순히 글이 많이 올라와서 그런 게 아니라, 사람들의 자발적인 참여와 열정으로 이루어지고 있기 때문이리라.
포럼에서 한 글을 보았다. 웹표준을 더 엄격하게 지켜주었으면 좋겠다는 한 유저의 글을 보고 노정석 님이 포럼 의견을 묻고자 올린 글이었다. 거기에 많은 답글들이 달려있었는데, 웹표준에 대한 다양한 시각들을 엿볼 수 있었다.
그 중에 가장 와닿았던 건 "이상이 구현되어 현실을 발전시키지만 현실은 그 자체로 생명이 있습니다"라는 inureyes 님의 말이었다. 작년에 회사 병특 다녀오신 한 선배랑 웹표준에 대해 논쟁해보기도 했었고, 나도 처음에는 철저한 이상주의자였다. html에 대해서 거의 아무것도 모르다가 토끼군을 통해 갑자기 접하게 되면서 확 빠져들었던 탓도 있을 것이다.
하지만 점점 겪어보고 나니 이제는 그렇지 않다. 실제 웹페이지 제작도 여러 번 해보고, 다양한 사람들의 의견을 접하고, 또 나름대로 논리적으로 생각을 해보고 나니, 현실은 현실대로 인정할 수 있어야 한다는 결론을 얻었다. 물론 가능한 선에서 이상도 추구할 수 있어야 현실을 보다 나은 방향으로 발전시킬 수 있을 것이다. 하지만 이것이 현실을 부정할 만큼 지나쳐서는 안 된다. 그동안 막연하게 가지고 있었던 생각들이 저 말 한 마디로 싹 정리되는 기분이다. (그 정도의 말이 나오려면 역시 상당한 내공이 있어야..; -.-)
지지부진한 W3C의 CSS3 표준 제정 작업과는 달리 현실은 너무나 빠르고 역동적으로 돌아가고 있다. 잠시 머리를 식히고 그 역동성을 바라보는 것 자체로도 즐거운 일이다. 제각기 옳은 근거를 가지고 나타나는 수많은 사람들의 수많은 생각들과 그것을 정리해주고 체계화시키는 사람들, 그 위에 서서 통찰력을 가지고 바라보는 사람들, 이도 저도 아무것도 모르고 앞만 보고 달려나가는 사람들... 꼭 '웹'에서만이 아니라, 이 세상 돌아가는 것도 가끔은 그 변화무쌍함 속에서 벗어나 그 자체를 즐겨보는 것도 괜찮지 않을까.
요즘 들어 블로그를 방치하는 일이 잦아지고 있다. 워낙 바쁘기 때문이다. (학교가 2학년 학생들을 마구마구 굴리고 있다고나 할까. 물론 학년이 올라갈수록 더 어려운 과목들이 계속 등장하지만 말이다)
오늘(시간 상으론 어제) 본 시험은 이산구조였다. 거의 모든 문제가 숙제에서 나왔기 때문에 크게 어렵지는 않았다. (그래도 숙제를 다 외운 것도 아니고, 숙제라고 문제가 쉬운 건 아님) 다만 매우 당연해보이면서도 실제 수학적으로 쓰려면 난감한 증명 문제가 하나 나와서, 말로 열심히 풀어서 써놨는데 얼마나 점수를 받을지 모르겠다. (숙제 문제에 있었던 것이기 때문에 구글링해서 solution을 찾아봤는데 '주어진 조건을 만족하는 모든 가능한 경우를 더하는 것'을 수식으로 표현하기가 애매한 것 같았다. 뭐 대충 조건만 붙어서 쓰긴 했으나 뭔가 엄밀해 보이지를 않는다.)
어쨌든 첫 시험인 이산구조가 비교적 기분좋게 출발해서 좋다. 월요일에 보는 Programming Language 과목은 책 열심히 읽고 개념 정리를 잘 하면 될 것 같다. 홈페이지에 올라온 족보를 봐도 그렇고 선배들 말을 들어봐도 그렇고 개념 설명 문제만 10개 이상은 나오는 것 같다. 그거 보고 나면 서양문화사 시험이 있는데, 수업 시간에 열심히 필기해둔 것과 syllabus에 있던 참고도서(교보문고에 주문해서 오늘 도착)를 쓱 보면 될 듯하다.
*
얼마 전부터 태터&프렌즈(TNF) 활동을 본격적으로 시작했다. 토끼군한테 들어서 대충 알고는 있었지만, trac이라는 시스템을 써보니 상당히 마음에 들었다. 마침 SPARCS에서도 동아리 서버 관리 등을 위해서 wheel 그룹에서 사용할 isuue-tracking tool을 찾고 있던 터라 더욱 관심을 가지고 써보고 있다. (trac의 wiki 문법 기능은 마음에 들지만, 하나의 프로그램만을 위한 툴이기 때문에 프로그래밍이 아닌 일반적인 서버 관리를 위해서는 어떻게 써야 할지가 조금 애매하다.)
동아리 프로젝트를 하면서 여러 사람이 같이 subversion을 이용해 개발해보았지만, 이렇게 큰 규모로 ticket-tracking까지 해보기는 처음이다. 태터툴즈 개발 활동이 앞으로 오픈소스 프로젝트들에 참여하거나 직접 시작하는 데 많은 밑거름이 될 수 있을 것이다. (태터툴즈 자체가 GPL로 공개됨으로써 생기는 사회적 이익도 있겠지만 궁극적으로는 오픈소스 개발 방법론을 사람들이 직간접적으로 익히게 된다는 것 또한 중요하다) 나는 시험 끝나면 XHTML 표준 준수 개선, 키워드 기능 및 글별 공개 여부 설정, 위지윅 에디터의 텍스트 모드 개선, 스킨 치환자 및 본문 치환자의 parsing 구조 개선 등을 진행할 예정이다. 물론 혼자 다 하는 건 아니고 여러 사람들이 같이 참여할 것이다.
*
요즘 날씨는 정말 이상하다. 예전에는 이맘때쯤이면 살짝 건조함이 유지되면서 따스한 느낌의 날씨가 유지되었는데, 비바람이 치고 기온도 뚝 떨어지기도 하고.. 이번 봄 날씨는 특히나 굉장히 변덕스럽다. 점점 지구의 기후가 이상해지는 걸까? 영화 '투모로우'에 나왔던 것 같은 일이 점차적으로 벌어지는 게 아닐까 하는 생각도 든다.
해마다 '예전에는 이렇지 않았는데' 하는 날씨가 늘어만 가는 것 같다.
열심히 shell도 짜고, 태터툴즈 개발자 사이트에서 놀기도 하면서 평온한 오후를 보내고 있었는데, 갑자기 내 서버의 shell 접속, svn 접속, 웹서버, irc 프록시 등이 한꺼번에 연결이 다 끊어졌다. 그래서 일단 동아리 방에 전화해서 선배한테 서버를 재부팅해달라고 부탁했고, 재부팅이 되자 잠시 동안은 정상인 듯했다. 그러나 잠시 후 다시 먹통.
결국 안되겠다 싶어서 동방에 갔는데, 재부팅 시켜놓고 잠시 있으면 다시 먹통이 되는 것이다. 해킹이 아닐까 해서 온갖 삽질들(아파치 로그 살펴보기, 정보통신팀에 전화해서 blocking 확인하기 등부터 시작해서 netstat, who, ps, top 등등)을 해봤는데 별다른 이상 징후가 없었다. (며칠 전에 내 서버에 있던 한 친구 계정의 soojung 블로그로 스팸이 무지막지하게 날아들면서 서버가 과부하가 걸렸던 적이 있는지라 특히 해킹 등이 의심될 수밖에 없었다)
Python으로 script를 짜서 터미널에 계속 문자를 출력하게 해도 리부팅 후 2분 정도가 지나면 그대로 먹통이 되는 것이었다. 그래서 결국 회사일로 바쁘실 용수 형에게 물어봤더니 nmap으로 포트 스캔 해보라고 하셨다. 결과는... 엥? 웬 윈도우용 머신에서 돌아가는 포트들만 잔뜩 열려 있는 것이다. (netbios, upnp 등등) ssh, http와 같이 리눅스 서버에서 열려있을 만한 포트는 하나도 없었다.
가만히 생각해보니 윈도우용 머신이랑 ip 충돌이 난 것 같았다. (이때가 삽질 3시간 째. orz) 그래서 포탈과 아라BBS 등에 글을 올리고 기다리니 오후 8시가 좀 넘어서야 겨우 복구되었다.
내 서버에서는 현재 3명이 System Programming 프로젝트를 하고 있는 데다, 오픈소스 프로젝트 5개의 SVN저장소를 제공하고 있다. 그리고 특히 중요한 건 토끼군과 내가 내 서버를 통해 IRC Proxy를 통한 접속을 한다는 것이다. 따라서 이 서버가 멈추는 건 상당히 위험한 일이 될수밖에 없다.
어쨌든 이제서야 삽질이 끝났다. 왜 꼭 평온한 하루를 보내려고 하면 일이 하나씩 터지는지 모르겠다. -_-
드디어 태터툴즈의 GPL 소스 코드가 공개되었습니다. http://dev.tattertools.com에 가보시면 유명한 오픈소스 프로젝트 관리툴인 trac을 이용해 위키와 프로젝트 관리 시스템이 구축되어 있고, SVN 저장소 사용법이 나와 있습니다.
이제 저는 노정석님께서 직접 부탁해주신 '포스트 별 키워드 공개 여부 기능'과 HTML 직접 편집할 때 나타나는 에디터의 버그 등을 수정해야 되겠군요. 문제는 당장 오늘 12시까지 due인 디자인문화와기술 발표 숙제와, 내일 12시까지 due인 이산구조 숙제가...orz 이 기쁜 순간(?)을 앞에 두고 숙제를 하고 있어야 한다니 아쉽습니다. -_-;
어쨌든 앞으로 태터툴즈의 무궁한 발전을 바라며, 많은 사람들이 이 프로젝트에 기여할 수 있기를 바랍니다.
요즘 올블로그를 이용하면서 느끼는 불만(?) 사항. 하늘이 님, 제가 읽은 글 목록과 댓글 남긴 글 목록 확인은 언제쯤 되는 거에요? ㅠㅠ (이 글을 보시길 바라며..-_-)
올블로그v2가 오픈되었을 때 가장 반갑게 생각했던 기능이 그 두 가지였는데, 정작 그 기능들은 아직 구현되지 않은 듯합니다. (내부적으로 서버에 저장하는 것 같기는 한데 my올블로그 같은 곳에서 볼 수가 없는 것이죠.) 하여간 그쪽도 빨리 오픈되었으면 좋겠습니다.
Macs do windows, too.
우리는 그동안 애플이 "인텔맥에 윈도우를 까는 걸 말리지는 않겠으나 설치를 지원하지는 않을 것"이라고 말해온 것에 완전히 낚였다. 올블로그에서 본 글로 알게 되었는데, MaxOSX 10.4.6 최신 업데이트에서 공개된 Apple BootCamp는 공식적으로 듀얼 부팅을 지원하는 프로그램이다. Windows XP SP2 CD만 있으면 iSight 및 백라이트 키보드를 제외한 모든 하드웨어의 드라이버가 완벽하게 제공되는 상태로 윈도우즈를 깔 수 있으며, 나중에는 MaxOSX 내에서 윈도우즈를 반투명하게 띄울 수 있게 하는 것도 구상 중이라고 한다.
이렇게 되면 Mac의 어플리케이션들을 써보고 싶었던 나로서도 다음에 구입할 데스크톱을 살 때 인텔맥으로 고르는 걸 망설일 필요가 전혀 없게 되는 것이다. 농담이 아니라 정말로, 다음에 쓰게 될 데스크톱 구입 시에는 인텔맥을 사는 걸 심각하게 고려해봐야겠다.