FreeBSD 4.10 코드 프리즈 시작

4-STABLE 브랜치의 마지막 릴리즈가 될 지도 모르는 4.10 릴리즈를 위한 코드 프리즈가 오늘(MDT기준 정오, 한국시간 목요일 오전 4시) 시작됩니다. 그리고 포트 프리즈는 4월 20일 (UTC기준 자정, 한국시간 4월 20일 오전 9시)에 1주일 정도 한다고 합니다.

4.10 릴리즈는 메인터넌스 릴리즈로 기능상으로는 큰 변화가 없습니다. USB랑 일부 드라이버들이 업데이트 되었고, [FreeBSDMan]libmap.conf 정도 바뀐 것 밖에 없지 않을까 싶군요. 으흐흐.

아직 구체적인 릴리즈 엔지니어링 일정은 잡히지 않았고, 아마도 5월초에 발표될 수 있지 않을까 싶습니다. 이번 릴리즈의 가장 bikeshed-prone 한 사항이었던 __FreeBSD_version은 아마도 그냥 49A… 정도로 되지 않을까 생각되지만.. 으음.. 결판이 나 봐야.. =3 =33

Microsoft의 첫 오픈소스 프로젝트!

그동안 haskell 분야 같은 약간은 구석진 부분에서 나름대로 숨어서 오픈소스에 참여하고 있던 Microsoft가 드디어 공식적인 첫 오픈소스 프로젝트를 발표했군요! 딱 날자가 4월 5일인 걸로 봐서는 왠지 4월 1일 근처에 발표하면 거짓말이라고 그럴까봐 좀 늦춘게 아닐까 하는 생각이 드는군요 흐흐;

그 프로젝트의 주인공은 바로 [WWW]WiX 입니다. [WWW]WiX는 XML을 기반으로해서 MSI SDK기반 인스톨러를 자동으로 만들어 주는 것 같은데, [WWW]NSISInnoSetup같은 기존 오픈소스 윈도우기반 인스톨러 프로젝트들이 엄청 위협을 받겠네용~ 라이센스는 GPL과는 호환되지 않지만 OSI 인증 라이센스인 CPL을 사용하는데, CPL은 거의 MPL과 비슷해서 크게 쓰는데 문제는 없는 수준입니다. 처음 시작하자 마자 바로 CVS에 소스도 다 넣어놓고 완전한 소스포지 스타일을 소화하고 있는 걸 봐서는 그동안 얼마나 하고 싶었는지가 짐작이 가는군요~~

그나저나, 아무래도 이것은 MS 경영진들의 허락을 충분히 받았을 터인데, 작년부터 Mono팀과 MS .NET/Indigo팀이 상당히 친한 것을 과시한데다 OSCON까지 참여할 정도이니 MS가 설마 SCO 자금대면서 앞으로는 GPL죽이기를 시도하면서 뒷구멍으로는 오픈소스에 슬금슬금 다가오는 것인지.. 으음 의중을 잘 모르겠군요~ 흐흐. 하여간 오픈소스들에 MS가 본격적으로 참여하기 시작했다는 점에서는 아주 반갑습니다. :)

(링크 제공 fender님)

파이썬 만우절 장난들

이번 IETF 만우절 RFC가 전지적 프로토콜 요구사항이라는 좀 재미없는 게 나왔는데, 파이썬쪽에서는 재미있는 게 몇개 나왔군요. :)

특히 goto는 뭔가 새로운 지평을 연 획기적인 April Fool같네요. 내년은 구현 없는 April Fool은 무효!

맘마미아!

오랜만에 엄마가 서울에 오셔서, 마침 엄마가 아주 좋아하는 ABBA 노래가 잔뜩 나오는 뮤지컬인 [WWW]맘마미아를 보러 갔습니다. :)

0404-mammamia.jpg

오랜만에 간 예술의전당은 역시 뭔가 굉장히 못올 데 온것 같은 고급스러운 분위기가 있었는데, 사람이 무지 많은게 벌써 몇달째 공연인데 이정도 사람이 오는 걸 보니 참 대단하는 생각이 드네요. 역시 뭔가 보면 남는 건 프로그램 북 밖엔~; 흐흐 거액 8000원을 주고 (예전에 《명성황후》는 2000원이었던 것 같은데 ㅠ.ㅠ) 사 드렸는데 아주 뭔가 보람이 뿌듯~. 앞으로 돈 많이 벌어서 다음엔 VIP석으로 표를 사야겠다는 마음도.. 흐흐..

기대를 잔뜩하고 들어간 공연장은 자리가 S석인 2층 맨 앞이었는데 썩 나쁘진 않았습니다. 역시 멀어서 얼굴은 안 보이지만, 흐흐.. 전곡을 번안해서 불렀다길래, 원곡의 분위기를 전혀 못 살릴까 굉장히 두려움에 떨면서 보기 시작했는데, 뮤지컬 분위기에 맞춰서인지 오히려 번안한 게 훨씬 가사가 더 잘 어울리는 것 같기도 하고.. 연주도 아주 멋있네용~ 주인공 격인 도나역의 박해미씨의 노래도 역시 최고~ :)

전체적으로 곡 가사에 너무 스토리를 끼워맞춘 표시가 아주 많이 나기는 하지만, 풍성하고 잘 소화된 아바 노래로 가득찼다는 것과, 소복소복 재미있다는 점에서 맛있는 뮤지컬이었습니다.

혹시 ABBA 좋아하시는 부모님 있으시면 강추입니다. :) (실제로 관객중의 반 이상이 40대 이상 부부더군요.. -ㅇ-)

브랜치 확률로 최적화하기

얼마전에 파이썬을 이리저리 컴파일하고 놀다가, 얻은 팁을 하나 씁니다. :)

일반적으로 뻔히 나오는 NULL 포인터 체크나, 범위 검사 같은 조건절 같은 경우에 한쪽으로 가는 확률은 극도로 적습니다. 따라서, 이런 경우에는 분기가 많이 되는 쪽이 더 빨리 실행되도록 최적화를 하는 편이 좋은데, C 언어에서 뭔가 이런 걸 정해주는 문법적인 도구가 없기때매 컴파일러가 제 멋대로 판단을 하죠. 그런데, 언제 생겼는지 (아마 꽤 됐겠지만;;) gcc에도 브랜치 통계를 기반으로 한 최적화가 있더군요. 아주 간단합니다. -fprofile-arcs를 주고 컴파일을 한번 해서 실행하고, 그 옵션을 빼고 -fbranch-probabilities 를 주고 다시 컴파일하면 됩니다. 먼저 한번 실행하는 건 통계 자료를 모으기 위한건데 .da 확장자를 가진 파일들이 우두두둑 생성됩니다.

파이썬을 컴파일할 때에는 OPT=”-fprofile-arcs -O3″ ./configure 해서 한번 컴파일하고 pystone을 한번 실행한 다음에, OPT=”-fbranch-probabilities -O3″ ./configure 해서 또 컴파일하면 대충 모듈 빼고는 그냥 다 됩니다. 므흐흐 그래서, 이렇게 컴파일한 결과! pystone이 17210에서 21057로 올라갔습니다. 공짜로 22% 향상! 꺄아. 히히

아무래도 OpenSSL이나 아파치 같은 것들도 브랜치 확률 정보를 줘서 컴파일을 하면 좀 더 빨라질 것 같은 예감이 듭니다.. 근데 이건 아무래도 컴파일도 두번 해야 하고, .da 다루기가 까다로워서 바이너리 패키지 같은 데 쓰기는 좀 어렵지 않을까 하는 생각이 드는군요. ^_^

UTF-8 로캘 베이스로!

NetBSD에는 진작에 오래 전에 들어간 [FreshPorts]misc/utf8locale 가 드디어 베이스에 들어갔습니다. 캭캭. 그동안 포트에서 2년간 설움의 세월을 보냈던 보람이.. ㅠ.ㅠ -CURRENT에 들어갔기 때문에 5.3부터 적용이 될 예정입니다. 원래는 6에 적용될 예정이었는데 그래도 다행이네요~ 이제 포트를 설치하지 않아도 UTF-8 로캘을 쓸 수 있습니다. :) utf8locale포트를 위해서 버전도 범프돼서 [WWW]502110을 받았습니다. :)

Prothon

작년 Miguel의 MS메일링에서의 Jim Hugunin의 메일 인용 공개를 시작으로 PyCon까지 엄청난 파장을 일으키고 있는 IronPython, 올해 OSCON에서 100달러 내기를 겨루게 되는 Parrot Pie-Thon, 혼자 만들었다고는 믿기지가 않는 8bit CPU를 위한 pymite 등등 정말 재미있는 파이썬 구현들이 많아지고 있습니다. +_+

그러는 와중 이제는, esoteric 계열 언어까지 하나 등장했습니다. 사실 완전히 escoteric 계열은 아니고 그쪽에서 놀던 사람들이 -.-;; 이름은 Prothon, Prototype Python을 줄여쓴 것이라는군요. 특징은 그동안 파이썬을 조금만 쓴 사람이면 다 불평하는, 완전한 쓰레드 지원 (fine-grained locking, object locking)이 들어갔고, lua 5에서도 도입하고 요즘 한창 인기인 스택리스 시스템으로 구현되었으며, 가비지 콜렉션이 CPython처럼 부가적인 마크-앤-스윕 이 아니라 바닥부터 마크-앤-스윕 으로 쓰레드마다 돌아갈 수 있도록 되어있다고 합니다. 사실 pymite에서도 그랬고, 파이썬을 새로 만들겠다 하는 사람들이 다 쓰는 특성이 아닐까 합니다. 크흐;

또한, Prototype Python 이름에서 풍기듯, Prototype-based Language를 표방하고 있다는 점에서 클래스 기반인 Python과는 좀 다르다고 하기는 하는데, prototype-based랑 class-based의 차이가 뭔지 아직 잘 모르겠습니다. -ㅇ-; (전에 들었는데 까먹었다 ㅠ.ㅠ) 그리고, 인덴트 제한이라던지, int형이 이터러블하고, /* */ 주석이 추가되고 등등 엄청나게 많은 문법 수정이 가해졌는데, 이건 참신한 시도이긴 하군요. ;) 실험적인 독자 문법이 시장에 나와서 실제 사용자들의 반응을 볼 수 있는 좋은 기회인 듯 합니다.

그리고 독특한 특징 하나는 포터빌러티 레이어를 위해서 아파치의 APR을 썼다는 것입니다. 기존에 공개된 오픈소스 포터빌러티 레이어라면 glib이나 모질라의 nspr같은 것도 있긴 하겠는데 아무래도 라이선스 문제상 apr이 좋긴 하겠지요.. 그런데 apr은 영 거시기 한 것이 약간 거부감이 들기는 합니다. ;;

아직 프리알파 상태라서 지원 모듈이 극소수만 있다고 하는군요. 있다가 퇴근하고 해봐야겠습니다. :)

파이썬, 이슈에서 벗어나 대세로

전의 블로그에서 언급한 기사가 OSS에 등록이 됐습니다. 흐흐 출판된지 1달도 안 됐는데, 막 올려도 되나 모르겠네요. 뭐 원고료도 없는 것이니 딱히 저작권 주장은 안 하겠지만서도 –;

http://developer.oss.or.kr/developissue/view.html?num=18&page=1

요즘 뜨는 언어들은 언급을 안 하고, 옛날 언어들만 언급함으로써 독자의 시야를 약간 가려서 설득시키려고 시도했습니다. (…)

아 근데 뭐 생각해보면 사실 파이썬이 젤 좋지 않아요? =3 =33 (ㅠ.ㅠ)

영어로 된 책을 읽을 때의 애로사항

그동안 영어 책이라고는 컴퓨터 관련된 책만 읽다보니 한국어 책에서도 늘 보던 그 단어들이 주루룩 있어서 어려운 줄을 모르고 살아왔으나.. 한 해에 영어로된 책을 포함하여 80권을 읽으신다는 [WWW]Jania님의 말씀을 듣고 아 나도 이제 열심히 공부해야겠구나 하는 충격을 받아서 으흐흐.. 얼마 전에 이것저것 충동구매를 했었더랬습니다.

처음 읽기를 시도한 것은 Richard Dawkins의 The Blind Watchmaker [ISBN-0393315703] 이었습니다. 헉 그런데 이 책은 페이퍼백에 글자가 빼곡한데다 문장이 걸핏하면 5~6줄씩 넘어가고 아 역시 한국어로 읽어도 어렵더니 장난이 아니구나 하는 것을 느끼고 4일동안 30페이지 읽고서는 나중으로~ ;;

그 다음 시도는 퍼키가 열렬한 팬인 Matt Ridley의 Nature via Nurture [ISBN-0060006781]! 역시 글자도 크고 표지도 예쁘고 하길래;; 이야 역시 좀 더 대중적인 책 답게, 문장도 대체로 짧고 줄간격도 넓고 읽기도 쉬웠습니다. 문장 자체는 거의 컴퓨터 책 못지 않게 쉬워서 그냥 쓱쓱 읽을 수가 있었는데.. 흐흑 결정적인… “모르는 단어가 너무 많다!” tenticle, polygamy, paucity, copula 등등.. 역시 고등학교 때 공부를 열심히 안 한 것이 들통나는 것인가!;;

그래서.. “하하하 그래그래 그런 뜻이겠지.. ^^;;”하고 넘어가는 단어가 1페이지에 10개 정도 -O-; 이래서야;;

그래서 생각해 본 해결책은

  • 그냥 몰라도 계속 읽는다. 나중에 사전 찾아본다.

  • 전자사전을 사서 들고 다니며 읽는다.

  • 단어공부를 더 하고 다시 읽는다.

일단은.. 전자사전 찾으면 뭔가 공부를 하는 느낌이 들어서 지루해질 것 같아서 제외.. 단어공부도.. 공부하는 것을 아주 죽기보다 싫어하므로 제외.. 하고 -ㅇ-; 그냥 읽기로 했습니다.. 흐.. 과연 얼마나 더 읽을 수 있을지!

5차원 영어학습법의 원동연박사께서 한 말을 생각하며 더 읽어봐야겠습니다. 크흣~

“”” 전 세계의 쓸모 있는 지식 중에 한국어를 통해 얻을 수 있는 것이 30%라면, 영어로 얻을 수 있는 것은 60%정도는 된다고 볼 수 있다. 따라서, 영어도 할 수 있다는 것은 곧 더 큰 시야를 확보할 수 있다는 뜻이고, 더 큰 물에서 놀 수 있다는 뜻이다.”””

500일 남았다!

이히히 제가 병역 특례를 시작한 것이 2002년 9월 19일, 끝나는 날은 단축의 효과로 2005년 8월 1일. 드디어 500일 남았습니다! 캬아아~

그동안 500일 남을 때까지 600여일동안 돌보아 주신 여러분께 감사드립니다. -ㅇ-; 앞으로 더욱 훌륭한 병역특례가.. (..)

으흐흐. 그런데 학교를 안 다닌지 너무 오래돼서 그런지, 복학해서 숙제하고 시험볼 생각하니 깜깜해요. ㅠ.ㅠ 흑흑~