Zope 3.2 릴리스

어제 Zope 3.2 최종판이 릴리스 됐습니다. 그동안 Zope3이 계속 X3라는 이름을 달고 나왔었는데, 이번에 처음으로 안정 버전이라는 뜻으로 X를 떼고 그냥 Zope 3.2로 나왔습니다. 이는 곧 Zope 2보다 Zope 3을 앞으로 쭉 안정 버전으로 밀겠다는 뜻인데, 이미 Zope 4도 개발 중인 것 같군요.

Zope 3는 Zope 2의 경험을 토대로 해서 바닥부터 새로 만든 것인데다가 디자인 자체를 굉장히 수정한 탓에, Zope 2와 프러덕트가 거의 호환되지 않습니다. 따라서, Zope 2용으로 나왔던 COREBlog같은 프로그램들은 전혀 사용이 불가능하고 별도의 포팅이 필요하다고 합니다.
Zope 2는 앞으로 유지보수 수준의 릴리스만 하고, Zope 3이 쭉 유지될 것이라고 하니, 뭔가 Zope 2를 쓰던 사이트들은 마음의 준비를 해야할 때가 왔군요. ;;

Zope 3에 대한 상세한 정보는 Zope 3 개발 프로젝트 홈페이지에서 볼 수 있습니다.

Io 파이썬 바인딩

으흐흐.. Io가 주류 언어들에 비해서 워낙 라이브러리가 부실하다보니 뭔가 하려고 하면 항상 꼭 몇개씩 발목잡는 부분이 있었습니다. 파이썬의 str에 해당하는 Sequence와 String같은 경우에도 대충 다 있는 것 같이 보이면서도, 꼭 뭔가 하려면 한 개씩 없고.. List나 Map도 참 답답할 때가 많고.. 그래서 그냥 파이썬 브릿지가 있으면 어떨까 생각하다가 우선 파이썬 바인딩을.. 🙂 한 30줄 짜니까 금방 되네요~

이제 오브젝트 매핑도 좀 하고, 브릿지 역할을 할 수 있게, Io 객체도 파이썬에 그대로 넘겨줄 수 있게 여러가지 수정을 해 봐야겠습니다. ^_^;

복 몰아주기

요새 계절학기에서 기계공학 전공의 “생체공학”이라는 과목을 듣고 있습니다.
평소에 이 과목은 고등학교 수업같이 출석부 보면서 애들 이름 불러서
이것 저것 물어보곤 하는데, 그 덕분인지 며칠 지나지 않았는데, 애들 이름을 벌써 상당히 외우시더군요. 흐흐

그런데 어제 수업 시작하기 전에, “자 새해 복 나눠 가지면 얼마 안 되니까, 몰아주기 할까?” 하시더니, 출석부를 한참 훑어 보시더니 “장혜식! 로또 사라!” 킁킁킁. 복을 몰아주기 받았습니다. 뿌듯 -.-b

(답글 1등 하시는 분께 복을 몰아드립니다. -O-;;;)

답글 남기기 방법 변경

많은 분들이 오픈룩을 RSS 리더로 읽으시기는 하지만, 그래도
가끔 홈페이지에 웹브라우저로 직접 들어오시는 분들의 편의를
위해서 답글 남기는 방법을 다른데서 보통 유행하는 방식으로
바꿔봤습니다. 목록 화면에서도 [답글] 버튼을 누르면 화면
안에서 현재 답글 목록이 나오고 거기서 바로 쓸 수 있는
방식으로요~

리프레시나 다른 페이지로의 이동 없이 답글을 남길 수 있기 때문에
좀 더 쉽게 답글을 쓰실 수 있지 않을까 생각이 됩니다. 아하하; -ㅇ-;
그리고 버튼 순서를 약간 바꾸었고, 메일과 홈페이지 입력하는
칸은 평소에는 숨겨뒀다가 버튼을 누르면 나오게 했습니다.

대체적으로 자바스크립트가 작동하지 않거나 텍스트 브라우저인
경우에도 동작하도록 고려를 했는데, 혹시나 쓰시는 브라우저에서
제대로 안 보이시는 경우에는 알려주세요~ (이 글에다가 답글 테스트를.. 🙂 — 그나저나 이것하느라 coreblog 프러덕트에 직접 무식한 패치를 해버리는 바람에 업그레이드가 골치아프게 생겼군요;;

크로스컴파일 툴킷 scratchbox

요즘 아르바이트를 하면서 ARM 크로스툴체인이 필요해서
여러 방법을 시도해 봤는데, 역시 크로스 툴체인 세상은
빌드 자체부터 쉽지가 않은게 빡센 뭔가가 느껴지더군요.
파이썬도 아직까지 표준 배포로는 크로스 빌드가 제대로 안
되는 것을 보면~ 흐흐.

그래서 아예 바이너리 패키지는 없는가 한참을 찾아보다가
Scratchbox라는
것을 찾았습니다. 처음에 scratchbox는 단순히 deb가 있어서
우분투에 깔기 좋겠다 하는 생각으로 깔았는데, 생각보다
좀 더 뭔가 멋지구리한 것이었네요.

scratchbox는 툴체인만 묶어놓은 것이 아니라, 바로 누르자마자
개발과 테스트를 할 수 있는 개발환경이었습니다. 처음에
깔고 나서 scratchbox 로그인 프로그램을 실행하면,
환경 설정 화면이 예쁘게 뜨는데, 그 화면에서 툴체인 종류,
에뮬레이터 종류 같은 것들을 설정해 주면 그 다음부터는
로그인할 때 자동으로 크로스 개발환경으로 셸이 떡 하고 뜹니다.
그 다음이 아주 감동인데, 리눅스의 binfmt를 이용해서
qemu-arm과 직접 연결하는 바람에, 완벽하게 타겟 환경과 호스트
환경을 섞어놓은 듯한! 그러니까.. vim, wget, grep 같이
개발 중에 많이 쓰이는 툴들은 모두 호스트 바이너리로 되어있고
uname, python, perl 같이 빌드/테스트에 직접적으로 영향을 미치는 프로그램들은 모두 타겟 바이너리로 돼서 qemu-arm으로 에뮬레이트가 자동으로 됩니다. 그래서, 파이썬처럼 빌드 도중에 빌드된 바이너리를 쓰는 까다로운 빌드 환경도 깔끔하게 크로스빌드가 가능!

(아래의 호스트는 ubuntu-i386 임)

노키아에서 리눅스 기반 플랫폼 개발을 위한 프로젝트에서 쓴 것 같은데, FreeBSD 포트에도 하나 이런 걸로 만들어 봄 직하군요. 🙂