파이썬 2.5 미리 보기: 8편 절대/상대 경로 임포트

이전 연재 보기

파이썬 2.5 미리보기 이제 마지막회입니다. 파이썬 2.4에서 import 뒤에 괄호치기 같은 문법이 약간 들어왔는데, 2.5에서는 PEP-328 상대경로 import가 들어왔습니다.

파이썬의 패키지 구조는 다단계 구조입니다. 그래서, 패키지를 구성할 때 한참 밑에 들어가 있는 모듈이 상위 단계에 있는 모듈을 들여오기 위해서는 항상 전체 경로를 다 써야 했습니다. 예를 들어서, 다음과 같이 패키지 구조가 구성되어있다고 할 때,

defer 모듈에서 proactor 모듈을 임포트 하려면 이런 방법이 있습니다.

그리고, defer 에서 base를 들여오는 방법도 2가지 방법이 있습니다.

[1]과 [2], [3]과 [4]는 각각 대충 보시다시피 각각 절대경로와 상대경로의 차이입니다. 그동안 권고사항으로 패키지 안에서는 꼭 절대경로로 임포트해 주세용~ 이라고 항상 말을 해 오긴 했지만, 대부분의 파이썬 사용자들이 직접 파이썬 매뉴얼을 읽고 공부하는 것이 아니기 때문에, 필드에서는 상대경로가 더 많이 통용되고 있었습니다. 그런데, 여기서 심각한 문제가 발생하는데, 상대경로 임포트가 시점에 따라서 중복으로 임포트 되어서 오작동을 하거나, 엉뚱한 것이 임포트되기도 하고, base같은 흔한 모듈은 더욱 더 큰 문제가 되곤 했습니다.

그래서, 파이썬 2.6부터는 절대경로 임포트를 강제화해서, 위의 예에서 [2]와 [4]같은 것은 이제 더이상 허용되지 않습니다. 대신, 이제 상대경로라는 것을 명시적으로 지정하는 문법이 새로 들어왔습니다.

음… 저는 그냥 앞으로도 계속 절대경로로 쓰고 싶어지네요 –;;;;;;

《번역은 반역인가》 – 박상익

안정효씨의 다른 책을 찾으러 도서관에 갔다가, 확 눈에 띄는 빨간 색의 표지 때문에
이 책을 발견했습니다. 서양사 관련 도서를 많이 번역하신 어느 교수님이 쓰셨는데,
표지에서부터 “대학원생들에게 번역 하청을 맡긴 교수가 떳떳이 활동하는 사회..”
라고 짧은 글로 한국 번역문화의 문제점을 확실히 드러내고 있습니다.

이 책은 처음에 번역이 역사적으로 문명의 발전에 기여해온 배경, 한국 번역서의
역사적 흐름을 분석하는 것으로 시작하고 있습니다. 유럽 사회가 본격적으로 발전하기
시작한 것이 이슬람과 그리스 책들을 번역한 서적들이 누적되면서라는 점이
설득력있게 전개되어 있습니다. 유럽 사회는 왠지 아주 태고적부터 발전되었지
않았을까 누구나 생각을 해 왔겠지만, 이슬람에 한참 뒤쳐진 거의 야만인 시절의
시기에 선구적인 번역가 집단들의 노력으로, 옛날에 축적된 지식들이 자국어 문화로
편입되면서 발전의 토대를 쌓을 수 있었다고 합니다.

저도 지금까지는 번역을 그냥 시간을 절약시켜 주는 정도로 별것 아니게 생각을
하고 있었습니다. 그런데, 오랫동안 양쪽언어를 모두 했던 유명한 문학가들도
모국어책에서 훨씬 느낌이 정확하게 와 닿고 정보의 양이 차이가 확실하다는
점에서 확실히 번역서가 있고 없고는 해당 국가의 문화에 들어갔는가 아닌가의
차이가 되어 버린다는 생각에 자연스럽게 끄덕이게 됩니다.

우리는 거인의 어깨 위에 올라탄 난쟁이와 같아서, 그 어깨로부터 거인들보다
더 멀리 많은 사물을 볼 수 있으니, 이는 우리의 시력이 예민하거나
우리의 재능이 출중해서가 아니라 우리가 그들의 거인다운 위대함에 의해
지탱되고 고양되기 때문이다. — 52페이지 (사르트르의 베르베르의 말을 재인용)

그런 면에서, 번역서의 품질은 결국 그 문화의 깊이와 넓이를 결정하는 중요한
영향을 미치게 되고, 지금같이 오히려 원문보다도 읽기 힘든 번역서가 판치는
상황은 분명히 문제가 심각합니다.

그러나, 번역을 해 보신 분들은 모두 알 수 있듯이, 한국 출판계의 상황은
별로 좋은 품질로 번역서가 나올 만한 상황이 아닙니다. 열심히 노력해서
번역해 봐야 시급으로 따지면 편의점 알바보다도 못한 보수가 나오는 상황에서
여간 재력이 있지 않고서는 번역을 제대로 하고 싶어도 할 수가 없습니다.
그래서, 그 유명한 (삭제) 책이 나오는
것이 어찌보면 사회적으로 당연한 결과가 아닐까 싶습니다.

번역을 이처럼 하찮게 여기는 것은 우리의 학풍이 이 땅에 발을 딛고 있지 않음을 보여주는 피할 수 없는 증거로 여겨진다. 이 땅에서 살면서 마치 자신이 미국 시민인 것처럼 행동하고, 한국 대학에서 월급을 받으면서도 마치 미국 대학의 교수인 것처럼 행동하는 그들의 모습에서 안타깝게도 ‘주체’에 대한 진지한 고민을 찾아보기 힘들다.
— 207페이지

원서로 안 읽는 후배녀석들을 구박할 때, 그게 당연하다고 생각하는 것보다는
기초학문 정도는 모국어로도 충분히 배울 수 있어서, 본인이 관심만 있다면
12살짜리 커미터, 13살짜리 SCI 논문 발표자가 될 수도 있는 환경이
되었으면 합니다. 그러기 위해서, 정부의 장기적인 지원, 학계의 번역에 대한
인식 재고, 도서관 문화의 개선 등 여러가지 해결책이 이 책에 제시되어 있습니다.
지금이라도 번역에 대한 생각을 제대로 정리할 수 있게 되어서 무척 다행입니다. ^^

저도 이제 파이썬 마을에서 답글 달 때, 영어로 된 매뉴얼에 링크 덜렁 달고
끝내지 않도록 노력하겠습니다;; (반성~)

4천5백만 국민들을 위한 지적 인프라를 구축하는데 투입되는
정부 1년 예산이 서울 강남의 아파트 1채 값이다.
— 224페이지

PuTTY 사용법이 나온 책~

KLDP의 GunSmoke님께서 쓰신 책에 친절하게 한글PuTTY를 소개해 주셨습니다. 책 제목은
《Fedora 리눅스 네트워크 & 웹 서버 무작정 따라하기》
이네요~

책 내용은 제가 페도라를 써 본적이 없어서 잘 읽어보지는 않았지만, 다음에 페도라 쓸 일이 생기면 한번;; -O-; 표지가 무척 깔끔하고 제책이 튼튼하게 잘 되어 있으니 리눅스 시스템 관리자로 입문하시는 분들은 옆에 두고 보기 괜찮을 것 같네요. ^^;;

파이썬 2.5 미리 보기: 7편 표준 라이브러리

이전 연재 보기

파이썬 2.5b2가 며칠 전에 발표되었고, 이제 2.5 최종 릴리스가 바싹 다가오고 있습니다. 오랜만에 파이썬 2.5 미리보기를 이어서 ^^;
오늘은 라이브러리 변화를 간단하게 요점정리해 드리겠습니다~

functools 모듈

이번 파이썬 2.5에서 처음 들어오는 모듈로 PEP-309 Partial 을 포함한 functools 모듈이 있습니다. 아주 옛날에 오픈룩에서 소개해드린 적이 있는 놈입니다. (거의 알박기 식으로 구현을 해 놓은 느낌이;;) 로그를 남기거나, 함수에 들어갈 인자를 여기저기서 조금씩 주거나 할 때, 등등 아주 유용하게 쓸 수 있겠죠~ 특히 함수형 언어 하시던 분들은 반가우실 것 같습니다. ^^;

잘 생긴 AMK의 Functional How-To에서 좀 더 깊은 함수형 프로그래밍의 활용을 다루고 있으니, 읽어보세요 +_+

ctypes

ctypes가 들어왔습니다. 자세한 것은 미리보기 4편에서 소개해 드렸습니다.

ElementTree

가장 파이썬답게 XML을 파싱할 수 있는 라이브러리인 effbot의 ElementTree도 표준 라이브러리로 들어왔습니다. 자세한 내용은 전에 블로그에서 소개해 드린 적이 있습니다. 요새 드는 생각이, BeautifulSoup도 표준 라이브러리로 들어오면 좋지 않을까 하는.. 으흐흐.. 온통 BeautifulSoup.py를 포함해서 배포하는 프로그램들이 여기저기 널려있어서;;

hashlib

전에 한번 오픈룩에서 언급한 적이 있는데, 기존의 md5, sha 모듈 등을 모두 합쳐서 통합된 API로 쓸 수 있게 hashlib이 들어왔습니다. 이제 sha-512까지도 지원하기 때문에, 아직까지는 콜리젼이 발견되지 않은 높은 수준의 해시도 선택적으로 쓸 수 있게 되었습니다.

sqlite3

요즘 전성기를 누리고 있는 파일기반 내장용 SQL 데이터베이스인 SQLiteDB-API 2.0 어댑터 라이브러리가 들어왔습니다. 아마 대부분의 오픈소스 배포판에서는 라이브러리 의존성 때문에 별도의 패키지로 떨어져서 돌아다니겠지만, MS윈도우에서는 파이썬 인스톨러로 깔면 sqlite3 모듈을 바로 쓸 수 있게 되었습니다. (FreeBSD에서는 databases/py-sqlite3 모듈로 따로 분리하였습니다.)

wsgiref

PEP-333 Python Web Server Gateway Interface에서 정해진 스펙을 구현한 참조구현 라이브러리입니다. WSGI는 그동안 CGI,
Twisted,
Zope,
CherryPy,
mod_python 등이 모두 따로따로 서로 다른 API를 쓰고 있으면서도 비슷한 기능을 지원하고 있었기 때문에, 쓸데없이 포팅이 귀찮았던 문제를 해결하기 위해 정의된 놈입니다. 그래서, WSGI 규약만 제대로 지키면, 모듈 하나만 제대로 구현해서, Twisted에서 돌아가던 것을 mod_python에서도 돌릴 수 있고, Zope에서도 돌릴 수도 있고 여러모로 활용이 편하게 되었습니다. wsgiref는 독립서버로 작동하는 참조구현 모듈입니다. 테스트에도 간단하게 쓸 수 있겠죠~

그 외에는~

앞의 큼직큼직한 변화 외에도, 자잘한 라이브러리 버그 수정과 성능 향상, 기능 추가가 많이 있었습니다. 그 중에 뚜렷한 변화 몇 가지만 추려 보자면,

  • mailbox 모듈이 메일 내용을 수정하고, 삭제할 수 있게 되었습니다.
  • codecs.lookup()에서 이제 터플을 돌려주지 않고, stat_result 같은 흉내내는 놈을 돌려줍니다.
  • 쓰레드 lock을 지원하는 데코레이터들이 들어있는 contextlib 모듈이 들어왔습니다.
  • utf-8-sig 코덱이 추가되었습니다. 윈도우 사용자 중에서 메모장으로 코딩하시는 분들도 이제 utf-8로 저장해서 파이썬으로 실행할 수 있습니다. –;
  • webbrowser 모듈이 최신 브라우저들에 대한 지원을 대폭 강화하였습니다.
  • locale 모듈에서 LANG이 LC_CTYPE보다 우선시돼서 생겼던 버그가 수정되었습니다.
  • 그동안 이름없이 seek을 해야 했던 슬픔이 해결되었습니다. os 모듈에 SEEK_SET, SEEK_CUR, SEEK_END 상수가 들어왔습니다.

libgcrypt SEED 패치

지난 번에 OpenSSL SEED 패치를 했었는데,
아직 개발자들의 관심을 끌지 못해서 들어가지 못했습니다.
그래서 우선 다른 암호 라이브러리들에도 집어 넣어려고
OpenSSL, nss에 이은 오픈소스 암호 라이브러리 인기순위 3위쯤 되는 녀석인 libgcrypt
패치를 만들어서 제출했습니다.

libgcrypt는 아무래도 나중에 나온 것이다보니, 처음부터 디자인을
상당히 현대적인 모양으로 구성을 해서 OpenSSL에 비해서는 거의
작업할 곳이 5분의 1정도로 적었습니다. 한가지 작업을 할 때 고쳐야
하는 곳이 얼마나 흩어져 있느냐가 역시 중요한 소프트웨어 디자인
수준의 척도인 것 같군요. libgcrypt는 LGPL이기 때문에 완전히
자유롭게 쓸 수는 없지만, 그래도 gnupg에서도 쓰고
생각보다 GNU 계열의 프로그램들에서 많이 쓰고 있는 듯 합니다.
이 패치를 넣으면 gnupg에서 SEED로 싸인하는 것도 어쩌면 될지도 모르겠습니다. (? 안 해봐서 장담은.. ^^;;)

단지 하나 걱정되는 것은 libgcrypt도 별로 요새 개발이 활발한 편이 아니라.. 대충 예상하기에 들어가자면 6개월 이상은 걸릴 것 같네요 –;;

IETF RFC 4200~4550 흥미로운 것들~

한동안 새로 올라오는 RFC 목록을 안 보고 있다가, 오랜만에 한번 쑥~ 훑어 봤습니다. 아무래도 인터넷의 트렌드를 알려면 RFC 목록을 보는 것이 많은 도움이 되는군요. ^.^

작년엔 주로 SIP 같은 세션 프로토콜들과 그와 관련된 스트리밍 프로토콜들이 주종을 이루었는데, 올해에는 이제 그를 뒷받침해 줄 인프라망에 대한 것들이 많이 올라오는 분위기입니다.
BGP
같은 라우팅 프로토콜류에 관한 것들이 특히 많고,

Mobile IP
의 라우팅 최적화, 3GPP와의 연결 가이드라인 같은 것들이 등장하고 있습니다.
그리고, DNAv4 같이
사용자망에서의 새로운 활용가능성을 더 높이기 위한
기존 프로토콜의 보완작업도 일어나고 있습니다.
이에 따라, 점점 동적인 네트워크가 강화되고, 모바일 네트워크를
제대로 지원해주기 위한 기반 작업들이 굉장히 빠르게
다가오고 있다는 느낌을 받을 수 있습니다.

SSH가 RFC로 등록된 것이 유닉스 개발자들에게는 가장 관심이 있을 만한 것일 듯 합니다.
RFC4150
시작으로 구조, 인증, 키교환, 통신계층, DNS 등 거의 20~30개 정도 되는 RFC들이 우루루 들어왔습니다.
저자로는 SSH를 최초로 고안한 SSH Communications가 당연히 제1저자로 등록이 되어있고, 제2저자는 Cisco 직원이군요. RFC가 이제 IETF Proposed Standard로 등록이 되었으니, ssh 구현 간의 비호환성이 앞으로 많이 줄어들겠지만, 사실상 지금까지 크게 불편했던 점이 없었기 때문에 눈으로 볼 수 있는 변화는 별로 없을 것 같긴 합니다;;; 어쨌거나 표준화가 착실하게 되어서 등록된 점에서는 매우 환영할 일입니다.

그리고, 요새 네임스페이스와 관련한 것도 일상에 영향을 많이 주니 흥미롭습니다. ^^ RFC 4343으로 DNS 대소문자 구분에 대한 것이 등록되었습니다. 지금까지 표준안에서 DNS에서 대소문자 구분에 대한 규칙이 전혀 없었고, 심지어 아스키문자가 아닌 것도 프로토콜에 얼마든지 허용이 되었습니다. (\x00 마저!) 이런 것들에 대해서 존 파일에 쓰는 방법을 표준화 하고, 대소문자 구분을 안 한다는 사실을 처음으로 명문화 하였다고 합니다. –;

뉴질랜드 정부에서 URN 네임스페이스를 등록한 RFC 4350 도 재미있습니다. 개요에서 밝힌 목적은, 뉴질랜드 정부 기관과 기업, 개인들에게 개인 식별자를 제공하기 위한 것이라고 하는데, 예시를 보면 도메인 시스템과 비슷하게 계층구조로 정부에서 관리할 계획인 것 같습니다. 그래서 회사 이름과 지리정보, 국가에서 관리하는 여러 식별번호를 모두 URN으로 통합할 수 있게 되어, 고유식별번호를 교환할 때 매우 편리하게 되었습니다. 무슨 뜻인지 알 수가 없는 UUID만 떨렁 써놓고 표준이라고 주장하는 것을 이제 뉴질랜드에서는 보기 힘들겠군요. 🙂

그리고, 재작년부터 선풍적인 인기를 끌고 있는
SPF가 드디어 RFC로 등록되었군요. 비록 EXPERIMENTAL 트랙으로 들어가기는 했지만, 그래도 공감을 이끌어낸 뒤 표준화되어 결국 RFC 등록이 되었다는 점에서, “SPF는 단순한 꼼수가 아니냐!”고 무시해버리기는 힘들게 되었습니다. SPF 만세 -O-;

보안과 관련한 것들은 꾸준히 증가하고 있는데, 이번에는 TLS가 RFC 4346에서 1.1로 업데이트됐습니다. (RFC 4346의 제2저자의 소속이 재미있습니다. -O-;;;) TLS 1.0과의 차이점은 그동안 꾸준히 제기되어 왔던 CBC 패턴 분석 공격에 대응하기 위해서 IV (Initialization Vector)를 명시적으로 지정하게 되었고, 간단한 에러 처리 규칙이 몇 가지 바뀌었습니다. TLS 1.0의 내부 버전이 SSL 3.1이라는 사실을 기억하면, TLS 1.1의 버전이 뭐가 될 것인가도 상당히 궁금해 지는데요, RFC 내용을 보면 SSL 3.2로 한다고 합니다. (프로토콜 내부의 핸드셰이킹을 위한 버전 번호)

그리고 IPSec도 RFC 4301에서 업데이트 되었습니다. 성능 향상과 구현의 단순화를 위해 처리 모델을 바꾸고, SPD (Security Policy Database)의 유연성을 확보한 것이 주요한 변경사항인 듯 합니다. 그리고, 일본의 블럭 싸이퍼인 CamelliaRFC 4312에서 Standards Track으로 승격되면서 IPSec에서 사용가능하게 되었습니다. (SEED는 RFC 4169에서 Proposed Standard)

그 외에 재미있는 것:

  • RFC 4217: FTP를 TLS위에서 쓰도록 확장
  • RFC 4226: HOTP(HMAC-Based One-Time Password) – HMAC을 이용한 일회용 암호 알고리즘
  • RFC 4227: BEEP 블럭에서의 SOAP 활용
  • RFC 4215: 3GPP에서의 IPv6 전환에 대한 분석
  • RFC 4510: 오랜만의 LDAP 프로토콜 업데이트. LDAPv3

오픈맨3

머지 않은 미래, 인류의 새로운 진화 단계로 호모 사피엔스 오픈소스라는 돌연변이가 나타 났다. O-인자라는 유전자를 갖고 태어난 아이들은 사춘기가 지나면서 그들의 의식을 깨닫고 본능적으로 남들이 하지 말라는 것을 답답해 하기 시작한다. 다른 사람들은 때론 강력한 이들의 정보 능력으로 인해 무서워하며 피하기도 한다.

이 무렵 세상은 “그물 간 항해자(이하 항해자)”라는 답답한 도구의 자본적인 독점에 의해 일반인들 모두가 중독되어 있었다. 그러나, 돌연변이들은 항해자 뒤에 숨어있는 폐쇄성에 참을 수가 없어서, 항해자가 나오기 이전 시대의 여러 도구들을 모으기도 하고, 새로운 도구들을 만들기도 하지만 기존에 중독된 사람들과의 의사소통에는 어려움이 있었다.

세계에서 가장 관심력이 강해서, 척 보면 버그가 어디 있는지 잡아내는 찰스 디버거 교수는 어린 돌연변이를 가르치고 자신의 힘을 기르기 위한 소스대장간이라는 학교를 만들어서 아이들을 모아 가르치고 있다. 반면, 디버거 교수의 절친한 친구인 에릭(마그네트)은 나치가 자기 블로그에 트랙백 스팸을 날린 것에 대한 분노를 갖고 있어서 자신과 의사소통이 되지 않는 서버들은 IDC에 쫓아가서 자석을 넣어버리고 올 정도로 과격한 행동을 하였다.

디버거 교수의 학교에는 “오픈맨”이라는 집단이 있었는데, 마그네트 같은 과격한 돌연변이들과 일반인의 충돌이 있을 때 그 사이를 중재하여, 돌연변이들도 사회의 일원이 될 수 있도록 하는 역할을 하였다. 오픈맨은 꼬리 9개로 정보가 스스로 모이도록 하는 강력한 힘을 가진 “불여우”(진, 아명은 불새였다), 그리고 천둥과 번개를 마음대로 조절하면서 서버에 접근할 수 있는 “천둥새”(오로로), 남들이 서버에 접속하는 것을 모두 순식간에 기록할 수 있는 “로그”(메리), 차갑고 시원한 음악을 다른 사람들에게 전달할 수 있는 “얼음방송”(바비) 등이 있었다.

마그네트의 과격한 행동에도 동조하는 이들이 있었는데, 이들은 자신들을 형님들이라고 불렀다. 형님들에는 뭐니뭐니해도 인증서를 자기 마음대로 조작해서 다른 사람인 척 접속할 수 있는 “미스티크”가 마그네트가 자석을 휘두르고 다니는 행동을 거리낌 없이 하는 데 많은 도움을 주었다.

그러던 와중, 일반인들은 자신들과 다른 돌연변이들이 자신들이 안 쓰는 이상한 까만색 프로그램들을 깔아서 쓰는 것을 보고 두려움을 느끼기 시작하였다. 결국, 이들을 자본의 흐름에 편입시켜서 일반인으로 만들고자, 항해자를 말만 잘 들으면 몰래 받아서 쓸 수 있는 “큐어” 와레즈 서버를 제공한다고 선언하였다.

돌연변이들은 자신들이 살아 있는 동안 영원히 마음껏 쓸 수 있는 것을 원했고, 자신들의 힘을 포기하지 않겠다는 세력이 많았지만, 그래도 “로그”같이 평소에 주변 사람들이 “넌 로그를 너무 많이 남겨. 너 때매 디스크도 맨날 풀나잖아!”라고 해서 재능에 대한 자괴감을 갖고 있던 돌연변이들 일부는 “큐어” 와레즈에서 불법 소프트웨어를 받고 은행도 갈 수 있게 되었다.

그러나, 여전히 다른 돌연변이들은 억지로 항해자를 쓰는 것에 대한 거부감을 가지고, “형님들”은 본격적으로 자신들이 직접 접속할 수 없는 은행들에 자석을 던지기도 하고, 불을 뿜기도 해서 자신들의 권리를 주장한다.
그러나, 오픈맨들은 이런 그들의 행동이 오히려 일반인들의 반감을 일으켜서
조화를 이루기 힘들다고 생각하여 “형님들”의 행동을 제지하여
서버를 방어하도록 도와 준다.

그후 그들은 어떻게 되었을까! (뒷 이야기 공모 중 -ㅇ-)

FreeBSD 개발자 Ruslan을 도와주세요

FreeBSD 사용자 중에 경제적인 여유가 되시는 분들은 Ruslan을 도와주세요 페이지를 한 번 봐 주세요~

Ruslan Ermilov(ru@)는 우크라이나에 사는 FreeBSD 소스/포트 커미터입니다. 주로 베이스 툴과 라이브러리, 네트워크 관련 부분에서 FreeBSD에서 빼놓을 수 없는 중요한 개발자로 오랫동안 활동해 왔습니다. 그런데, Ruslan의 배우자가 오랫동안 암 투병 생활을 하다가, 결국 모스크바에 가서 수술을 받기로 했지만, 비용이 많이 들어서 심각한 걱정이 많다고 합니다.

FreeBSD 개발자들은 대부분 현업 개발자나 엔지니어들이다 보니, 현실 세계에서 어려운 사람도 드물지 않게 있습니다. 그동안 문제를 주변의 도움으로 극복한 사람도 있었고, 결국은 탈출하지 못하고 안 좋은 결과가 있었던 사람도 있었지만, 여러 헌신적인 노력을 보여주었던 그들의 노력에 힘을 주는 의미에서 경제적인 여유가 있으신 FreeBSD 사용자 분들은 약간의 도움을 부탁드립니다~

좋은 결과 있기를~ ^^

시간표 짜는 프로그램 업데이트~

지난 학기에 만든 시간표 프로그램을 좀 더 업그레이드 했습니다. 흐흐 이번에는 편집 기능을 약간 강화하고;; 플러그인 구조로 다른 학교 지원을 쉽게 넣을 수 있게 했습니다. +_+

HaveAGoodTime 실행화면

원래는, 5~6개 정도 학교 플러그인을 넣어서 올리려고 했는데, 아무리 찾아봐도 2학기 시간표를 로그인 안 하고 검색할 수 있는 학교가 더 없어서 일단은 경상대, 고대 안암/서창, 연대 신촌학부, 대학원(신촌/원주) 지원을 넣었습니다. plugins/ 디렉터리에 플러그인을 넣으면 쉽게 다른 학교 지원도 할 수 있게 했으니, 혹시 필요하신 학교의 2학기 시간표가 공개되면 한 번 해 보세요~ ^.^;
찾다보니까, 어떤 학교는 엑셀 파일로 올리는 곳도 있고, HWP로 올리는 곳도 있던데, 그런 곳은 엑셀파서나 HWP 파서를 플러그인에서 쓰도록 하면 되겠네용;;;;
혹시 플러그인 만드시면 저에게 소스를 보내주시면 감사~ 으흣~

다운로드

겨울에 태어나면 진짜로 뭔가 있을까?

얼마 전에 월드컵 대표선수 중에 대체로 겨울 출생자가 많다는 것을 라디오에서 들었습니다. 그런데, 옛날에도 그런 말을 몇 번 들은 적이 있어서, 정말로 기존에 알려져 있던 “겨울에 태어난 아기가 천재성과 예술성이 높다.”라는 말이 사실인지 궁금해졌습니다.

자 그래서, 바야흐로 시험철.. 이런 것이 궁금해 보면 직접 계산을 해보는 것! -.-
옛날에 FreeBSD 커미터 생일 통계가 몇 번 나온 적이 있었습니다. 그 때도 1,2,3월생이 유독 많았던 기억이 있어서, 우선 비교적 포매팅이 잘 되어 있는 FreeBSD 커미터 생일로 해 봤습니다. 뭐 물론 FreeBSD 커미터라고 다 똑똑하다는 것은 아니지만, 그래도 일정 노력이 있어야 하는 것이니까 한 번;;;

자.. 결과는 생각보다 별로 유의미한 결과는 아닌 것으로 보입니다. 10~12월이 적은 것이 뚜렷하긴 하지만, 원래 10~12월은 날짜가 다른 달보다 이틀 적으니까(?) ;; 음.. 아직 확률 통계론을 안 배워서 이게 가설을 지지하는 범위 안에 들어가는지는 잘 모르겠네요.. –; (역시 사람이란 배워야..;)

표에는 안 드러났지만, 하나 독특했던 것은, 5월이 굉장히 수가 많았고, 4, 6, 10, 11, 12월이 아주 적었는데, 제일 수가 많은 5월은 28명인데 비해, 11월은 11명 밖에 안 됩니다.

FreeBSD 커미터보다는 좀 더 신뢰도가 있는 것으로 알려져 있는 노벨상 수상자를 대상으로도 한번 통계를 내 봤습니다. 자료는 위키백과 영어판의 노벨상 수상자 목록 페이지에 링크된 수상자 중 기관이 아닌 개인을 대상으로 했습니다. 그렇지만, 2005년 노벨 물리학상 수상자인 John L. Hall은 아무리 둘러봐도 생년월일을 알 수가 없어서 못 넣었습니다. (그 외의 수백명은 열심히 파싱해서 다 넣었지요. ^.^)


Phys: 물리학, Chem: 화학, PhMed: 생리/의학, Lit: 문학, Econo: 경제학

음.. 노벨상 수상자를 대상으로 한 통계에서는 오히려 1/2/3월 태생이 수가 다른 계절들에 비해서 적었습니다. 특히나 경제학상은 12.28% 밖에 안 되긴 하는데, 경제학상은 수상자가 별로 많지 않기 때문에 대상이 작아서 상대적으로 정규화가 덜 된 것으로 해석할 수도 있습니다.

음.. 뭔가 유의미한 결과가 나왔으면 좋았을텐데.. 적어도 과학이나 오픈소스에서는 탄생월이 큰 관련은 없다는 것 같습니다. 으흐흐. 다음에 역대 올림픽 메달리스트를 대상으로도 한번 통계를 내 봐야겠네요;;; (다음 시험이 언제더라 =3)