KAIST 합격

September 18, 2009

KAIST

새로운 시작~ =)


[Pages`09] “The required index.xml file is missing” 에러 메시지가 뜨면서 특정 문서를 못 읽는 오류

August 20, 2009

pages error

가끔 Pages`09 에서 특정 문서를 열 때, “The required index.xml is missing”이라는 오류가 뜨면서 실패하는 경우가 있다. 이 문제가 왜 발생하는지는 모르겠지만, 아래와 같은 방법으로 해결할 수 있다.

step 1. 문서 파일의 확장자를 “.pages”에서 “.zip”으로 바꾼다. (예를 들어 “a.pages” -> “a.pages.zip”)

step 2. 이름이 바뀐 문서 파일을 연다. (“커맨드 키”와 “아래 화살표”를 누르면 된다.)

step 3. 일반적으로 압축 유틸리티가 압축을 해제하는데, 그러면 “a.pages”라는 새로운 파일이 생성된다.

step 4. 이제 새로 생긴 “a.pages”는 Pages`09가 읽을 수 있다. 이전의 “a.pages.zip”은 삭제하면 된다.


[Pages`09] cannot read a document with an message “The required index.xml file is missing”

August 20, 2009

pages error

Sometimes, Pages`09 fails to open a particular document with an error message “The required index.xml is missing”.
I don’t know why it happened, but I found an resolution for this error.

step 1. change the extension of document from “.pages” to “.zip” (ex: “a.pages” -> “a.pages.zip”)

step 2. try to open the renamed document (just press “Command key” + “down arrow”)

step 3. Then, normally, the “Archive Utility.app” unzips it and a new document whose name is “a.pages” is created.

step 4. Now, Pages`09 can read “a.pages”. You can remove the old file “a.pages.zip”.


사파리에서 “새 창 열기”를 “새 탭 열기”로 전환

August 1, 2009

(여길 참고했음)

맥에서 사파리로 웹 서핑할 때 새 창이 열리는 것보다 새 탭으로 열리는 걸 선호한다면, 다음과 같이 세팅하면 된다.

1. 사파리가 종료된 상태에서
2. 터미널에 “defaults write com.apple.Safari TargetedClicksCreateTabs -bool true”를 입력한다.
3. 이제 사파리를 실행해보면, 새 창으로 열리던게 새 탭으로 열리게 된다.


웹 브라우저 벤치마크

July 5, 2009

요즘 웹 브라우저의 속도 경쟁이 매우 치열하다. 최근에 IE 8, Safari 4, Firefox 3.5 가 연달아 발표되었고 Opera 10 도 곧 출시될 예정이다. 위키의 “Web Browser Comparion”에 보면, 정말 다양한 브라우저 존재하고 지원하는 기능들이 매우 다름을 알 수 있다. 그리고 최근에는 자신의 환경에서 브라우저의 성능 비교를 해줄 수 있는 “Peacekeeper”라는 서비스가 등장했다. (왜 이름이 “피스키퍼”인지는 모르겠다.. -_-;;) 비록 “Peacekeeper”가 윈도우 환경을 기본으로 제작되었다는 점, 하드웨어 정보 분석과 플래시 같은 외부 플러그인 성능을 테스트 못한다는 단점이 있긴 하지만, 맥이나 리눅스 환경에서 테스트하는데 큰 무리는 없어보인다. 필자의 아이맥에는 Safari, Firefox, Opera 가 설치되어있는데, “Peacekeeper”의 결과는 놀라웠다.

web browser benchmark - mac

“Peacekeeper”의 결과는 Safari 4 의 압도적인 승리를 보여주고 있다. 근데 이해가 되지 않는 부분은 Firefox 3.5, Opera 9.64 도 상당히 좋은 퍼포먼스의 브라우저라 알고 있었는데, 이런 격차가 생긴다는게 의구심이 든다. OS가 맥이라서 Safari 가 젤 최적화된 것인가? 예전에 비슷한 예로 윈도우에선 아무리 Win API로 최적화를 해서 윈도우 탐색기를 따라 만들어도 윈도우에 기본으로 포함된 윈도우 탐색기의 성능을 따라갈 수 없었다는 사실로부터 “MS가 숨겨둔 Win API가 있다”라는 루머가 있었던 것처럼 말이다.
하여튼, 평상시에도 Safari 가 느낌상 좀 더 빠르다고 생각이 들곤 했는데, 이렇게 수치로 나타나니 확실히 맥에선 Safari 를 쓰는게 좋을 것 같다. 그런데, 혹시나 싶어 윈도우로 부팅해서 Safari, Firefox, Opera 뿐만 아니라 IE, Chrome 까지 테스트 해보니 더 놀라운 결과가 나왔다.

web browser benchmark - window

윈도우에서도 Safari 의 압승. 그리고 IE 는 정말 처참한 결과가 나왔다. 결론은 Safari 가 짱.. -_-b 현재 필자 컴퓨터에는 리눅스가 깔려있지 않아서 리눅스에서 테스트 해보지 않았지만, 리눅스 버전의 Safari, Chrome, IE 가 없는 걸로 보아 딱히 리눅스 환경에서 테스트를 해보지 않아도 될 것 같다.


“논리적 사고” 강의 메모

June 28, 2009


(이미지 출처: yes24.com)

아주대 2009년 1학기 송하석 교수님의 “논리적 사고” 강의를 수강하고 몇 가지 기록을 해둔다.
자세한 내용은 교수님의 강의를 참고하거나 저서 “리더를 위한 논리훈련” (ISBN: 89-925-7960-5)을 참고하길 바란다.

말의 네 가지 종류

논증 : 주장(논지)과 근거(논거)로 이뤄진 말
기술: 사실 그대로 서술한 말
억지: 주장만 있고 근거가 없는 말
인과적 설명: 이미 발생한 사실과 원인으로 이뤄진 말

불가능성에는 세 가지 종류가 있다.

물리적 불가능성 : “8000도의 마그마에서 헤엄을 치는 박태환 선수”
수사적 불가능성 : “2010년 남아공 월드컵 대표선수로 발탁된 김연아 선수”
논리적 불가능성 : “내각의 합이 360도인 삼각형”

논증의 반례의 한계란?

논리적 불가능성을 제외한 나머지는 모두 반례로 들 수 있다.
논리적 불가능성은 절대적 신 조차도 해결할 수 없는 문제. (“신은 자신이 들 수 없는 바위를 만들 수 있는가?”)

연역논증과 귀납논증의 차이

연연논증은 전제의 참이 결론의 참을 필연적으로 지지하지만, 귀납논증은 전제의 참이 결론의 참을 개연적으로 지지하는 논증
(우리나라 중고등학교 때 국어시간에 알려주는 “연역논증은 일반적인 사실로부터 구체적인 사실을 끌어내고, 귀납논증은 구체적인 사실에서 일반적인 사실을 끌어낸다”라는 정의는 부정확하다.)

연역논증의 타당성, 건전성

타당성: 전제가 참이라는 가정아래 결론이 반드시 참이되는 연역논증
건전성: 전제가 모두 참이 되는 연역논증
(연역논증은 타당성을 증명한 후에 건전성을 증명함. 즉, “건전한 연역논증”이라는건 타당성을 필수적으로 포함함)

논증 오류 종류

1. 형식적 오류
전건 부정의 오류 (p -> q 그러므로 ~p -> ~q)
후건 긍정의 오류 (p -> q 그러므로 q -> p)
선언지 긍정의 오류
가짜 딜레마

2. 비형식적 오류

2.1. 언어적 오류
애매어의 오류
애매문의 오류
강조의 오류
동일성 추론의 오류
은밀한 재정의의 오류
정의에 의한 존재 실체화의 오류
사용과 언급을 혼동하는 오류
합성의 오류
분할의 오류

2.2. 심리적 오류
동정에 호소
힘에 호소
부적절한 권위에 호소
대중에 호소
사람에게 향하는 논증의 오류

2.3. 귀납논증의 오류
역우연의 오류 (성급한 일반화의 오류)
사실 외면의 오류
도박사의 오류
잘못된 유추의 오류

2.4. 인과추리의 오류
거짓 원인의 오류
본말전도의 오류
공통원인 무시의 오류
발생적 오류

2.5. 부정합성의 오류
우연의 오류
의도 확대의 오류
복합질문의 오류
무지에 호소하는 오류
흑백사고의 오류
선결문제 요구의 오류(순환 논증의 오류)
가정망각의 오류
논점일탈의 오류
자가당착의 오류

오류를 이용한 사례

“미국 민주당 전당대회에서 존슨과 케네디의 설전
존슨: 미국 대통령이 되려면 적어도 흰 머리털이 있어야지.
케네디: 대통령이 되려면 머리털보다도 그 밑에 있는 것이 더 중요하다.”
-> 여기서 케네디는 애매어의 오류를 이용했다. 오류를 범하는 것과 이용하는 것은 엄연히 다른 이야기다.

후기

개인적으로 이 강의를 매우 재미있게 들었는데, 같은 학기 때 수강했던 “인공지능”과 유사한 부분이 많았기 때문이다. 사람의 논리와 컴퓨터의 논리라는게 다를 것 같으면서 공통분모를 가진다는 점이 흥미로운 부분이다. 차이점이라면, 컴퓨터는 전제의 참이 결론의 참을 필연적으로 지지하는 연역논증에 있어서 사람을 압도하지만, 전제로부터 개연적으로 참이 되는 결론을 이끌어내야하는 귀납논증은 역시 사람이 더 우세하다고나 할까. JESS 같은 Rule-based 프로그래밍을 해보면 연역논증에 대한 컴퓨터의 압도적인 능력을 직접 체험해볼 수 있다.


“젊은 구글러 김태원”의 초청 강연회

May 7, 2009

어제 (5월 6일) 아주대학교 구글러 김태원의 초청 강연회에 참석했다. 개인적으로 구글에 대한 호불호보다 김태원이라는 사람 자체가 궁금했고, 2년 전에 그가 쓴 책을 읽었을때, 한번 만나보고 싶었다.

강연회 자체는 2시간 30분 정도 (QnA시간 포함)해서 오후 7시부터 9시 30분까지 꽤 긴 편이었다. 그 긴시간에도 미쳐 준비한 프리젠테이션 자료를 모두 보여주지는 못했다. 상당히 많은 자료를 준비했는데, 너무 과하지 않았나 싶기도 하다.

김태원에 대한 나의 느낌은 책을 사기 전과 사서 읽은 후와 그리고 이번 강연회를 듣고 난 후 세 번 바뀌었다. 책을 사기 전에는 호기심과 약간의 반감 (본인이 말하는 “엄친아”에 대한 느낌 같은?), 그리고 책을 사서 읽은 후에는 상대적 박탈감과 압박감, 좀 더 강해진 반감이 들었다.

솔직히 그가 부러웠던 것이고, 연배도 얼마 차이 나지 않는 사람이라서 그의 성공(이라하기엔 섵부른 걸까?)에 순수하게 동경, 호감을 갖기 힘들었다. 알랭드 보통이 책, “불안”에서 말했듯이 자신과 별로 차이가 없어 보였던 사람이 성공하게 되면, 매우 껄끄러운 감정을 느끼는 그런 것이었다. 다시 말해, 한국 속담에 “사촌이 땅을 사면 배가 아프다”와도 같은 느낌이었을 것이다.

그런데 2년이 지난 이번 강연회에서 그에 대한 생각이 또 바뀌었다. 본인 스스로 “엄친아”로 질타를 많이 받아서인지, 자신이 “엄친아”가 아니라 그동안 얼마나 노력해왔는지를 말했다. 그의 책을 다시 보아도 그는 꽤 많은 실패와 성공을 반복했고, 그건 일반인들과 다를바 없다. 남들과 다른 점은, 다들 많이 가는 길(안정)을 택하는 대신 자신은 다른 길을 택해서 노력한 그 결과가 좋았던 것이다. 그리고 그 바탕은 움직이는 “열정”이었고, 자신은 그 열정을 전파하고 싶어서 책을 썼단다.

강연회 덕분에 그가 매우 솔직한 사람이라고 느꼈고 (물론 책에서도 솔직했지만, 책이란건 포장이 가능한 것이니까 완전히 신뢰할 수 없다.) 그 덕분에 자기는 솔직히 이야기 했는데, 그것이 자기 자랑으로 들려서, 안티가 생긴 것 같다.

강연회 중간에 그가 문희준을 예로 들었던거라든지, 모 대학교에서 “저는 대학교 때, 외국 여행을 제 돈 안들이고 여섯번 다녀왔어요.”라는 말에 청중들에게서 바로 “x새끼”라는 욕설이 나왔던 이야기를 하는 걸 봐서 꽤 마음 고생이 심했을 거라고 생각든다.

우리 나라가 겸손을 미덕으로 여겨서 그런 걸까. 단지 자기가 어떻게 해서 좋은 결과를 얻었다고 PR한걸 “자기 자랑”으로 껄끄럽게 받아들이는 것도 좀 아니다 싶다.

그 밖에도 굉장히 많은 걸 느꼈지만, 지금은 아껴두고 싶다. 그리고 끝나고 나서 책에 싸인을 받을까 싶었지만, 그것 역시 다음 기회로 미루었다. 좀 더 움직이는 열정을 가진 사람이 되어서 그의 싸인을 받고 싶기 때문이다. 여러모로 자극도 되고 많은 생각이 들게 한 강연회라 생각된다.


svn update 시에 패스워드 인증 문제

May 7, 2009

갑자기 “svn update”를 할 때, 패스워드를 물어보기 시작하더니, 패스워드 영구 저장(permanently)를 해도 매번 패스워드를 물어보는 문제가 생겼다. 처음엔 레오파드 Keychain 문제인가 싶었으나, 결국 문제는 “~/.subversion/auth”의 권한 문제였다. 권한이 내 계정으로 되어있어야 하는데, “root”로 되어있던 것이다.

“~/.subversion”과 Keychain에 저장된 패스워드와 로컬 사본의 “.svn” 폴더를 모두 지운 후에 다시 checkout 했더니 이젠 패스워드를 물어보지 않게 됐다.

문제점은 굉장히 단순했는데, 덕분에 시간이 꽤 많이 뺐겼다.. -_-;;


The svn client cannot use cached password.

May 7, 2009

Today, when I try to command “svn update”, the svn client asks me a password. The problem, even I select the save password permanently, it asks again! again!! again!!! whenever I command “svn update”. In additional, more strange thing is that other command such as “svn info” works well.

Because my OS is leopard, firstly I think this is a Keychain’s problem. But, I just find the reason. It is a permission problem of “~/.subversion/auth” which should be my account but when I check it, it is “root” not me.

So, after I remove “~/.subversion”, saved password at Keychain and every “.svn” folders at my local working directories, I checkout projects from svn server with saving the password permanently. And then I try to command “svn update”, it works correctly!!

The reason is very simple, but it takes my huge time. Shi.. Shirt.. =(


파일 서버 검색 엔진 chiwawa 소개 동영상

May 7, 2009

2008년도에 SWSSM (수원 삼성 소프트웨어 멤버십)에서 CHIWAWA (치와와)라는 프로젝트를 진행했었다.

당시 2월부터 6월까지 약 5개월 동안 진행되었던 CHIWAWA 는 서버의 특정 경로 내의 파일들의 파일명을 기준으로
파일이 검색 가능한 검색 엔진이었다.
사실, 검색엔진이라고 하기엔 너무 간단하지만, 나름대로 가장 최근에 검색된 검색어의 결과를 캐싱한다든지,
가장 높은 빈도의 질의된 검색어와 연관된 검색어들의 결과를 캐싱한다는 나름의 최적화 기법이 있었다.
(이건 운영체제의 메모리 페이징 관리 기법과 유사하다.)

근 1년동안 방치해둔 프로젝트고 버그도 상당히 많다.
시작은 거창했으나 끝이 흐지부지했다고나 할까.
팀원은 1기와 2기로 나뉘어서 총 5명이 참여했는데, 프로젝트 완료 후에 뿔뿔히 흩어졌지만,
팀리더로서 상당히 애착이 가는 프로젝트라서 앞으로 조금씩 손봐야겠다.

기술적인 내용으론 서버는 Java, MySQL, PHP를 사용했고, 클라이언트는 AJAX, SilverLight를 썼다.
당연히 서버, 클라이언트 간의 데이터는 XML을 사용했다.

구글 코드에 등록된 프로젝트로 http://code.google.com/p/chiwawa/ 에서 모든 내용을 확인할 수 있다.

 

데모 영상

 

프리젠테이션 영상

위의 두 영상은 작년에 시드니에 있을 때, SWSSM 신입 회원들에게 홍보 목적상 작성되었다.