2008-07-21

[펌] 시맨틱 웹 세미나

소스: http://www.blogweb.co.kr/2008/07/05/%EC%8B%9C%EB%A7%A8%ED%8B%B1-%EC%9B%B9-%EC%84%B8%EB%AF%B8%EB%82%98/

IT 세미나 전문업체 기묘와 시맨틱 웹 세미나를 합니다. 시맨틱 웹에 대한 올바른 관점과 연구방향을 모색하려는 의도로 만들어진 세미나입니다. 지금은 도메인을 사용하고 있지만 예전에 했던 OEG (Ontology Engineering Group) 활동의 연장선이라고 생각을 합니다.

이번 세미나의 주제는 데이터 링크 (Data Link)입니다. 웹의 출발점이 Hyperlink였다는 것은 누구나 알고 있는 사실인데요, 웹이 진화해 오면서 다양한 형태의 링크가 생겨나고 있고 그것들 사이의 복잡한 연결이 가속화되고 있습니다.

웹 2.0과 시맨틱 웹에 대한 수 많은 논란도 링크의 관점으로 해석하면 비교적 명료하게 설명이 될 것 같습니다. 세미나의 기획 의도도 이와 같구요. 자세한 내용은 세미나 홈페이지를 참고해 주세요.

http://www.gimyo.co.kr/semanticweb/main.htm


김홍기 교수
현) 서울대학교 치과대학 교수
서울대의생명지식공학연구실
서울대학교 인지과학 협동과정 겸임교수
아일랜드 국립대학교 정보공학부 겸직교수
IBM developerWorks 컬럼리스트
시맨틱 웹 2.0 컨퍼런스 조직위원장
Korea Web 2.0 그룹 멤버


웹은 링크와 함께 진화하고 있는데, 링크를 구성하는 데이터도 다양해 지고 있다. 웹의 진화를 링크와 데이터의 관점에서 살펴보고, 의미적 연결을 지원할 수 있는 시맨틱 웹을 초기 등장부터 살펴본다. 더불어 시맨틱 웹을 실현하기 위한 기술적 기반으로 버스 시스템을 소개하며 의료 분야에서 시맨틱 웹과 데이터 링크의 사례를 소개한다.

1. 웹 그리고 링크의 진화
2. 웹에서의 데이터
3. 시맨틱 웹의 과거, 현재 그리고 미래
4. 시맨틱 웹 버스 시스템
• RDF 와 온톨로지
• 포크소노미
• SPARQL
5. 응용사례 : 의료분야의 데이터 링크

김광섭
현) NHN 시맨틱웹TF팀 근무
• 블로그 : http://bklab.snu.ac.kr/blog/kwangsub
• 시맨틱웹 팀블로그 : http://semantic.tistory.com

RDF 를 이용해 Resource(데이터) 를 표현 & 전달하기 위한 스팩들을 살펴본다. 이러한 스팩들은 웹에서
사용될 수 있는 의미적 리소스들을 표현 전달 (재)사용할 수 있도록 지원한다.
1. 데이터를 공유하자
• rss, dc, foaf, sioc, scot
2. 웹 안의 데이터를 사용하기 위한 전초전, 어노테이션
• RDFa(Cadidate Recommendation)
3. 실용사례 - 데이터를 내 품에
• 공유된 데이터의 재사용이 가능한 시나리오 소개


정지웅
현) NC 소프트 오픈마루스튜디오
• 블로그 : http://humbleprogrammer.net/blog
• 시맨틱웹 팀블로그 : http://semantic.tistory.com

역서 • 자바 개발자를 위한 레일스
• 자바 웹서비스로 통하는 SOA

관련 표준들이 실제로 적용 , 활용된 사례들을 살펴보면서, 데이터 웹의 현재와 가능성을 살펴본다.
1. Data Link 어떻게 만들어나갈까
• Data Link 를 위한 작은 발판 - REST 와 AtomPub
2. Social Network 와 Social Platform
• 사람과 사람 사이 - OpenSocial 과 Social Graph
• 나를 중심으로 한 Data Link - Open Identity 와 Data Link
3. Search
• 구조화된 웹, 그리고 검색 - Google, Yahoo 그리고 Next Google
4. 그 밖의 사례와 가능성들

김학래 연구원
현 ) 아일랜드 DERI Galway 연구원
• 블로그 : http://www.blogweb.co.kr
• Korea Web 2.0 그룹 멤버
• SCOT 프로젝트 ( http://scot-project.org ) 창립자
• OpenTagging 프로젝트 ( http://opentagging.org ) 창립자

데이터 웹은 수없이 많은 링크로 구성되는데 크게 정보의 연결과 사람의 연결로 구분할 수 있다. 웹 2.0은 사람 사이의 연결을 만들어낼 수 있는 다양한 촉매제를 제공하고 있는데 지속적으로 연결 관계를 유지하기 위해 링크 데이터와 이식성에 대한 이슈가 부각되고 있다.
세션 4는 링크 데이터와 이식성에 대한 동향을 살펴보고, 이러한 접근 방법이 소셜 네트워크에 어떤 영향을 줄 수 있는지 실제 커뮤니티 사례를 통해 소개한다.
1. 링크 데이터와 데이터 이식성
2. 소셜 네트워크, 웹 그리고 시맨틱 웹
3. 사례 분석 - 태그 기반의 소셜 네트워크 분석
4. 시맨틱 웹 기술을 이용한 소규모 네트워크와 포크소노미의 생성

2008-06-18

[펌] 공부의 달인이 되는 법




출력하기 취소

2008-01-12

캐논 G9 활용 팁

[원본 - PhotoAficionado]

1. 기본으로 제공되는 목끈보다 손목끈(wrist strap)을 사용하세요





2. 12M 크기의 사진을 찍는 G9을 위해서라면 메모리카드는 4GB정도는 되어야 합니다.
3. 적어도 하나 이상의 여분 밧데리를 준비해야 - 여행을 계획하고 있다면 2-3개는 준비해야 합니다.
4. 어댑터 사용도 고려해 볼만합니다.
5. 숏컷 버튼을 활용하세요. 커스텀 화이트밸런스용으로 써도 좋습니다.
6. 보통은 full auto 모드로 놓아 두세요. 바로 찍었을 때 중간은 할 수 있습니다.
7. 커스텀 타이머 기능을 활용하세요. (2초, 10초가 너무 짧거나 길다고 느낀다면)
8. Safety Manual Focus 기능을 '켜기'로 해 두세요.
9. 리뷰 기본 모드를 'Focus Check'으로 해 두세요.
10. Auto ISO Shift 기능도 가끔 쓸모가 있습니다. (노이즈 증가를 최소화하면서 흔들리지 않는 화면을 원할 때)
...

2008-01-06

Canon G9을 구매하다.

갑자기 작년 연말 연휴에 필이 꽃혀서 컴팩트 디카를 구매하게 되었다.

구매기준은 다음 3가지 였다.
1. 컴팩트해야 한다. 산책나갈 때, 부담없이 들고 갈 수 있어야 한다.
2. 동영상이 훌륭해야 한다. 지금 가지고 있는 DSLR로 아이들 행사에 갔을 때 가장 아쉬운 게 동영상 기능이다.
3. 줌 범위가 좀 넓어야 한다. DSLR의 50mm 단렌즈와 18-55mm 번들렌즈로 아이들 행사 찍을 때 제대로 우리 아이를 포착하기 어려웠다.

Panasonic FZ8






온라인으로 주문까지했다가 취소한 상품이다.

주요 스펙:
  • 센서: 1/2.5", 7.1M
  • 렌즈: 36mm - 432mm (12x), f2.8 - f3.1
  • 셔터: 1/2000초 - 60초
  • 동영상: 848 x 480, 640 x 480, 320 x 240 @ 30/10 fps
  • LCD: 2.5 ", 207,000 픽셀
  • 크기: 340g, 113 x 72 x 79 mm

dpreview 사용자평:
(Overall rating: 4.66363636363637)(Overall rating: 4.66363636363637)(Overall rating: 4.66363636363637)(Overall rating: 4.66363636363637)(Overall rating: 4.66363636363637)(Overall rating: 4.66363636363637)
Read owners opinions (33)

주요 장점:
  • SLR like한 디카 중 최소형
  • Dpreview에서 'Highly Recommended' 평가
  • 16:9 동영상
  • 상대적으로 저렴한 가격 (30만원 이하)

주문을 하게된 결정적 판단은 dpreview의 평가 및 가격이었다. (지금까지 디카 구매할 때, dpreveiew에서 highly recommended 평을 받지 않는 카메라를 구입한 적인 딱 한번 있었는데, DSLR을 구매한 후, 여행 등에서 가볍게 휴대하기 위한 목적으로 구입해서 저렴하고 동영상 기능이 좋았다고 하는 산요 작티 V2였다. 그러나 화질이 못마땅해서 몇개월만에 팔았다.)

그러나 이 카메라의 주요 용도가 가족용이어서 와이프가 디자인이 맘에 들지 않는다고 반대하는 바람에 결국 주문취소하고 말았다.

Fujifilm Fd50d







주요 스펙:
  • 센서: 1/1.6", 12M
  • 렌즈: 35mm - 105mm (3x), f2.8 - f8
  • 셔터: 1/2000초 - 8초
  • 동영상: 640 x 480 / 320 x 240, 30 fps
  • LCD: 2.7 ", 230,000 픽셀
  • 크기: 205g, 93 x 59 x 23 mm

dpreview 사용자평:
(Overall rating: 3.93571428571429)(Overall rating: 3.93571428571429)(Overall rating: 3.93571428571429)(Overall rating: 3.93571428571429)(Overall rating: 3.93571428571429)(Overall rating: 3.93571428571429)
Read owners opinions (28)

후 지필름의 fd31d는 실내에서 인물사진용의 똑딱이로는 컴팩트 카메라의 최고로 평가되던 카메라였다. 후속버전인 fd50d는 dpreview에서 highly recommended 평을 받았고 고iso에서 상대적으로 적은 노이즈, 바지주머니에 쏙 들어가는 크기, 상대적으로 저렴한 가격, 각종 편리한 똑딱이 기능으로 관심을 끌었다.

그러나 화질에서 전작인 fd31d보다 못하다는 평이 지배적이고 동영상도 평균이하인 카메라라는 점이 마음에 들지 않았다. 그리고 Pixdix에서 만져본 결과 그립감등이 맘에 들지 않기도 했고 렌즈가 작다는 점도 맘에 들지 않았다.

Panasonc TZ3







주요 스펙:
  • 센서: 1/2.5", 7.1M
  • 렌즈: 28mm - 280mm (10x), f3.3 - f4.9
  • 셔터: 1/2000초 - 8초
  • 동영상: 848 x 480, 640 x 480, 320 x 240 @ 30/10 fps
  • LCD: 3.0 ", 230,000 픽셀
  • 크기: 280g, 105 x 59 x 37 mm

dpreview 사용자평:
(Overall rating: 4.34848484848485)(Overall rating: 4.34848484848485)(Overall rating: 4.34848484848485)(Overall rating: 4.34848484848485)(Overall rating: 4.34848484848485)(Overall rating: 4.34848484848485)
Read owners opinions (66)


FZ8과 함께 관심을 가졌던 카메라로 10배줌, 컴팩트한 크기, 저렴한 가격이 장점이다. 외국의 리뷰에서는 평들이 나쁘지 않았는데(cameralabs.com, dcresource.com), 국내 (특히 slrclub)에서는 별다른 반응이 없었고 온라인갤러리에 TZ3로 찍은 사진도 많이 없었으며 기본적으로 화질에 문제가 있는 제품으로 여겨졌다.

Panasonic LX2







주요 스펙:
  • 센서: 1/1.65", 10M
  • 렌즈: 28mm - 280mm (10x), f3.3 - f4.9
  • 셔터: 1/2000초 - 60초
  • 동영상: 1280 x 720 @ 15 fps, 848 x 480, 640 x 480, 320 x 240 @ 30/10 fps
  • LCD: 2.8 ", 207,000 픽셀
  • 크기: 220g, 106 x 56 x 26 mm

dpreview 사용자평:
(Overall rating: 4.39047619047619)(Overall rating: 4.39047619047619)(Overall rating: 4.39047619047619)(Overall rating: 4.39047619047619)(Overall rating: 4.39047619047619)(Overall rating: 4.39047619047619)
Read owners opinions (42)

국내 (slrclub)에서 Canon G9과 함께 가장 많이 추천되고 사용되는 컴팩트카메라다. CCD가 상대적으로 크고 (1/1.65인치) 광각 (28mm), 16:9 사진 및 동영상, 라이카다운 색감으로 매니아가 많은 카메라이다. 그러나 가격이 고가이고 (Canon G9과 거의 동일대) 노이즈 문제가 크다는 점이 지적되고 있고 왠지 내공이 높아야 사진을 잘 찍을 수 있을 것 같은 느낌을 주는 카메라이다.

Canon G9









주요 스펙:
  • 센서: 1/1.7", 12.1M
  • 렌즈: 35mm - 210mm (6x), f2.8 - f4.8
  • 셔터: 1/2500초 - 15초
  • 동영상: 1024 x 768 @ 15 fps, 640 x 480 @ 30/15 fps, 320 x 240 @ 30/15 fps, 160 x 120 @ 15 fps
  • LCD: 3.0 ", 230,000 픽셀
  • 크기: 360g, 106 x 72 x 43 mm

dpreview 사용자평:
(Overall rating: 4.42987012987013)(Overall rating: 4.42987012987013)(Overall rating: 4.42987012987013)(Overall rating: 4.42987012987013)(Overall rating: 4.42987012987013)(Overall rating: 4.42987012987013)
Read owners opinions (77)

Canon 컴팩트의 최상위 모델, 클래식컬한 레인지파인더 같은 외관, 컴팩트 카메라 중 최고의 화질, 6배줌, 부드러운 동영상 등의 기능은 SLR 비슷한 카메라의 고배율줌, 편리한 조작성 및 컴팩트 카메라의 작은 크기 및 디자인 사이에서 적절하게 절충한 것으로 보인다.
역 시 dpreview에서 highly recommended 평을 받았고, 가격은 가장 고가이지만 (gmarket의 가우넷 판매자에게서 구매) 구매 후, 그만큼 오래 간직할 수 있을 것 같은 카메라이다. 동사의 A650IS라는 모델이 G9과 동일한 렌즈, CCD를 가지고 있으며 회전 LCD, AA 밧데리 라는 장점을 추가로 가지고 있었음에도 불구하고 만듦새에서 G9을 대신하기는 어려웠다.

2007-12-11

라프코스터의 재미이론

게임은 무엇인가

좋은 게임의 정의는 '플레이어가 게임을 그만두기 전에 줄 수 있는 모든 것을 다 가르치는 게임'일 것이다.

게임은 선생님이다. 재미는 학습의 또 다른 표현일 뿐이다.

게임을 함으로써 학습이라는 마약을 얻는다. 인간의 학습은 종으로써의 생존에 중요하므로 우리의 몸은 즐거움을 느끼게 함으로써 학습에 대해 보상을 해 주는 것이다.



성공적인 게임은 다음과 같은 기본 요소들을 포함한다.

  • 준비 : 준비가 없으면 게임이 너무 운에 의존하는 것 같고,
  • 공간감: 공간감이 없으면 시시하며,
  • 정연한 핵심 구조: 이게 없으면 게임도 아니다.
  • 일련의 도전 : 도전이 없으면 게임이 너무 빨리 끝나고,
  • 대결을 위해 필요한 능력 : 이것이 많지 않으면 게임은 단순하고,
  • 능력을 사용하기 위한 기술 : 기술이 요구되지 않는 게임은 지루하다.
또한
  • 다양한 피드백: 대결의 결과가 완벽하게 예측가능하면 안된다.
  • 기술의 숙달 : 높은 수준의 플레이어는 쉬운 대결에서 얻는 것이 별로 없도록 해야 한다.
  • 실패에 따른 대가 : 최소한의 기회비용

2007-11-16

Yum 설정

새로 install한 linux(FC5)에서 yum 실행은 잘 되었지만, 예전 (약 3년전)에 설치한 linux (2.6.6-1.435.2.3)에서는 yum이 실행이 잘 되지 않았다.

그래서 lighttpd를 yum을 이용해서 설치하려고 시도하다가... 잘 않되어서 이것저것 해보았는데, linux os 버전 문제, python 버전 문제, python 패키지 버전 문제, python-rpm 버전문제, yum 버전문제, yum의 configuration 문제 등이 복합적으로 걸리면서 계속 실패했다.

최종적으로 어찌 어찌 되었는데...

1. yum 실행환경인 python은 /usr/bin에 설치된 것을 기준으로 해야 한다. /usr/local 에 설치된 python으로 하면 여러가지 문제에 부딪힌다.

2. yum 설치는 rpm으로 해야한다. yum.xxx.tar.gz를 받고 rpmbuild로 rpm을 만든 후 설치를 한다. rpm을 빌드할 때 추가로 설치가 필요한 모듈들은 이 때 rpm build가 알려준다.
# rpmbuild -tb yum-2.6.1.tar.gz
# rpm -ivh /usr/src/redhat/RPMS/noarch/yum-2.6.1-1.noarch.rpm

3. yum.conf 및 yum.repo.d 에 있는 서버 리스트는 http://mirrors.fedoraproject.org/publiclist 에서 한국 서버로 대체한다. 그리고 서버 리스트에 관해 좋은 예제는 http://towis.net/tag/Fedora 를 참조한다.

2007-11-09

Samba 3 설정

  1. samba, samba-swat를 설치한다.
    yum 이 사용가능하면 yum으로 설치한다.
    # yum install samba
    # yum install samba-swat
  2. /etc/xinetd.d/swat를 edit하여 swat를 enable 시키고 보안을 위해 swat에 접근할 수 있는 host를 제한한다.
    (only_from 필드와 disable 필드 수정)
  3. swat를 기동한다.
    # /etc/rc.d/init.d/xinetd restart
  4. /etc/samba/smb.conf를 수정한다.

    [global]
    dos charset = cp949 # PC의 charset
    display charset = UTF8 # linux의 charset
    workgroup = MYGROUP
    server string = "Samba Server"
    max log size = 50
    socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
    dns proxy = No
    hosts allow = <접속을 허용할 서버목록>

    [homes] # 각 사용자의 home directory 접속을 허용한다.
    comment = Home Directories
    read only = No
    browseable = No

  5. web browser로 swat에 접속하여 status에서 smbd를 start한다.
  6. swat/passwd에서 samba사용자를 등록한다.
  7. PC의 explorer로 samba server의 원격폴더에 접근한다. 처음에는 6번에서 사용한 user와 password를 입력해 주어야 한다.






2007-07-23

authkit error message log 가 필요할 때

source: http://www.mail-archive.com/pylons-discuss@googlegroups.com/msg03705.html

in case you may want to get more debug information from AuthKit I
found a way to get log information in the "paster serve" window.
Add these lines to the config/middleware.py right after
app = authkit.authenticate.middleware...

import logging
log_StreamHandler = logging.StreamHandler() # points to stderr
authkit.authenticate.log.addHandler(log_StreamHandler)
authkit.authenticate.log.setLevel(logging.DEBUG)

2007-07-02

스타니슬라브스키 극장의 카르멘을 보고

지난 토요일 일산 아람극장에서 러시아 모스크바의 스타니슬라브스키 극장의 카르멘 오페라를 보았다.


모스크바시립 스타니슬라프스키극장 오페라단 초청공연 시리즈는 뉴스위크지 선정 가장 역동적인 세계 10대 도시들의 자랑인 고양 아람누리와 모스크바시립 스타니슬라프스키극장과의 역사적인 의미 교류이다. 국내 최대 규모와 시설의 문화예술시설 ‘고양 아람누리'의 개관에 맞추어 세계 10대 도시에 선정된 모스크바의 대표적인 시립극장인 ‘스타니슬라프스키 극장'의 우수한 오페라 작품을 초청하는데 큰 의의가 있다.

이번 시리즈는 특히 국내 공연계의 새로운 자극이 되는 아람누리 개관 페스트벌 하이라이트로서 오페라단과 오케스트라가 200여 명이 내한, 오페라의 두 작품을 공연하는 초대형 프로젝트로서 2007년 공연예술계에 사건적 의미가 있다고 할 것이다.

세계적인 작품이자 유명한 오페라인 ‘카르멘'과 ‘스페이드의 여왕' 공연을 작품화하는 고양 아람누리의 기능성을 최대한 활용하는 프로젝트이다. 국내 최초의 최대의 시설을 가진 아람누리의 위상에 맞는 세계적인 대형 오페라 작품의 아람극장 공연과 오페라 갈라 콘서트의 아람음악당, 열린 야외음악회인 ‘러시아음악의 밤'의 노루목 야외극장에서 국내 최고의 시설을 자랑하는 고양 아람누리의 기능을 최대로 보여주고자 한다.

또한 러시아시립 스타니슬라프스키극장과의 교류는 공연과 관련된 일체의 문화적 교류로서 모스크바시와 고양시와의 대표적인 극장간, 단체 간의 교류, 학술회의 향후 업무제휴까지 심화된 관계뿐만 아니라 이후 공동 작품개발로까지 이루어지는 문화예술적으로 역사적인 의의가 있는 대형 문화예술행사인 것이다.

모스크바시립 스타니슬라프스키극장 오페라단

모 스크바시립 스타니슬라프스키극장 오페라단은 1941년 20세기 연극계에 일대 변혁을 일으킨 것으로 평가받는 전설적인 두 연출가 콘스탄틴 스타니슬랍스키와 블라디미르 네미로비치 단첸코가 각각 운영하던 스타니슬라프스키 오페라단(1918년 말 볼쇼이 극장의 오페라 스튜디오로 설립)과 네미로비치 단첸코 예술단(1919년 모스크바 예술극장 단체로 설립)이 합병하면서 설립되었다. 스타니슬라프스키극장 오페라단은 모스크바 예술연극의 시스템을 오페라와 발레에 적용시킨 바 있는 설립자들의 예술적 원칙을 따르고 있다.

두 연출가는 심리적으로 동기 부여된 연기를 통해 구성의 주제를 드러냄으로써 오페라를 더욱 드라마적이고 희극적으로 만들고자 했다. 또한 젊은 가수들을 ‘노래하는 배우'로 훈련 시켜, 관객들이 줄거리에 몰입할 수 있도록 배역의 미묘한 캐릭터를 잘 살려낼 수 있게 했다.

이 극장의 오페라단은 고전과 함께 현대화된 오페라를 선보이는 한편 유망한 젊은 작곡가들을 후원하며 새로운 오페라와 발레를 창작해내는 실험실로 불리기도 한다. 또한 모스크바 최초로 쇼스타코비치의 ‘카타리나 이즈마일로바'(1934년 단첸코의 연출로 초연), 프로코피예프의 ‘전쟁과 평화'(1957년 바라토프 연출로 초연)와 같은 20세기의 명작을 공연하기도 했다. 또한 티콘 크레니코프의 몇몇 작품들은 스타니슬라프스키극장 오페라단만을 위해 쓰여졌으며, 드미트리 카발레프스키는 자신의 오페라를 오페라단에 헌정했다.

1991년 부터 오페라단은 레프 미하일로프 아래에서 수학한 알렉산드르 티텔의 지휘 하에 현재까지 운영되었다. 오페라단이 공연한 그의 첫 작품은 글린카의 루슬란과 루드밀라로 유명한 고전 오페라를 대담하고 현대적으로 해석한 이 공연은 많은 논란을 불러왔다.

오 페라단은 이탈리아, 중국, 독일, 스위스, 벨기에, 유고슬라비아, 일본, 한국, 프랑스와 미국에서 투어를 진행하였다. 국내에는 오페라 주역 위주의 부분 캐스트로 두 차례 내한하였으나 오케스트라 포함 대규모의 공연팀이 내한하는 공연은 이번 아람누리 공연이 최초이다



러시아의 음악수준이 높은 건 알았지만, 역시 단원들의 평균 가창 능력은 매우 높아서, 그 자체만으로도 오페라에 몰두할 수 있게 해 주었다.

너무 좋아서 이 극단이 오늘 저녁에 하는 오페라 갈라 콘서트도 예약하였다 ~

2007-06-15

error: Linking with liblualib failed

context:
building ethereal-0.99 with lua plugin
lua 5.1.2

solution:
cd /usr/local/lib
ln -s liblua.a liblualib.a

2007-06-05

Python의 defaultencoding을 바꾸는 법

import sys
reload(sys)
sys.setdefaultencoding(encoding)

보통 sys.setdefaultencoding(encoding)은 site.py에서만 동작하지만
reload(sys) 명령으로 임의의 코드에서 실행된다.

출처: http://www.mail-archive.com/pylons-discuss@googlegroups.com/msg03775.html

2007-05-18

RubyOnRails vs Pylons vs TurboGears

사내 정보시스템용 Web Application을 위해 WAF를 survey했다.

결론적으로 TurboGears를 선택하게 되었다.

RubyOnRails

아직 가장 인기있는 WAF는 ROR일 것이다. 15분만에 weblog 사이트를 만드는 screencast를 보고 감명받지 않을 프로그래머가 있을까? Amazon에서 Ruby On Rails로 검색을 해보면 108권이 나온다. 오히려 우리나라에서 이제 겨우 관심을 주는 게 이상할 정도다.

그래서 가장 많이 사용하는 WAF라고 생각되는 ROR를 선택하였고, 간단하고 풍부한 기능에 어느정도 만족하였으나, Ruby라는 언어를 새로 익혀야 하는 부담이 있었다.

Ruby언어는 python이나 Perl을 알면 기본적인 문법을 배우는 시간이 많이 걸리지 않으나 usage에 익숙해지는 것은 또 다른 문제이고, 상대적이기는 하지만 아무래도 성능 문제가
부담이 되었다. 그리고 앞으로 나올 Ruby의 VM에 대한 전망도 그리 밝아 보이지 않았다. 그리고

Programming Ruby를 읽으면서, 언어의 동적 특성이 편해 보이기는 했지만, 전혀 성능상의 고려를 안한 것처럼 보였다. Ruby는 재미있고 좋은 언어이다. 하지만 Perl이 그랬던 것처럼 탄탄한 내부 구조를 갖지 않으면 전문적인 소프트웨어를 개발하는데 사용하기가 꺼려질 수 밖에 없다.

RubyOnRails는 이러한 일반적인 인식을 뒤집어 엎은 소프트웨어다. 그리고 ROR에 붙은 가속도를 생각할 때, ROR 및 Ruby가 앞으로 어떻게 발전할지는 쉽게 예측할 수 없고 절대로 평가절하할 수 없다.

하지만 앞으로 일정기간 이상 유지보수되어야 하는 시스템을 내가 충분히 납득하지 못하는 언어로 개발하기에는 부담이 되었다.

Pylons

그래서 찾아 본 WAF가 Pylons였다. Pylons는 Python으로 작성되었으며 ROR과 유사한 구조를 갖고 있다는 게 가장 마음에 들었다. 그리고 MVC를 구성하는 모듈들도 유연하게 바꿀 수 있었다. 가장 큰 문제는 아직 mature하지 않았다는 점이다. 문서도 절대적으로 부족하고 안되는 기능이 너무 많다. 특히 REST를 아직 제대로 지원하지 못하여서 사용 목적에는 맞지 않았다. Pylons 코드를 보고 Pylons 자체를 개발 하려는 것이 아니라면 아직은 많이 부족한 상태였다.

TurboGears

django 사이에서 약간 고민은 되었지만, TG가 훨씬 ROR에 가깝다는 점에서 TG를 선택했다. 그래도 TG에는 ROR과 비슷한 screencast들도 있고 어쩌면 ROR보다 더 전문적인 Catwork 및 admi18n 과 같은 도구들도 있다. 물론 ROR의 짧고 우아하게 보이는 코드에 비해서 많이 늘어져 보이는 것은 어쩔 수 없다.

2007-05-15

utf8 Linux에서 vi로 euckr 한글문서 편집하기

이 설정은 samba를 통해, 혹은 ftp등으로 windows의 text파일을 공유하는 경우 필수적이다.


모든 파일의 내용이 euckr이라면 ~/.vimrc에 다음 라인을 추가한다.

set fileencodings=euc-kr,latin1

간혹 euckr파일을 편집해야 한다면 vi를 실행하고 나서

set fileencodings=euc-kr,latin1 을 command line에 입력한다.

Samba3와 SWAT 추천

삼바3 사용 강력 추천

이유는?

Samba의 서버로 많이 사용하는 linux는 보통 charset로 UTF8을 기본으로 한다. 그런데 삼바2까지는 window의 charset과 서버의 charset이 다르면 공유하는 한글파일명에 문제가 발생해서 linux의 charset을 euckr로 바꾸어서 사용했었다.

삼바3는 이 문제를 완전히 해결한 것 같다.

linux의 charset이 utf8이라면

[global]
unix char set = utf8
dos char set = cp949
라인을 넣어주면 된다.

그리고 swat는 그 전부터 있었던 util이지만, 사용해 보니 역시 편하다~

telnet에서 한글 문제는 putty를 사용해서 translation page에서 utf-8을 선택해주면 된다.

프로그래밍용 폰트

프로그램밍용 폰트로 Bitstream Vera Sans Mono 가 인기가 좋다.
여기에 맑은 고딕 폰트를 합쳐놓은 것도 있다.

참조 :
한글을 사용하는 프로그래머를 위한 폰트..
참조 : Finding the Best Programmer's Font

Linux에서 한글 setting

linux는 설치시 기본으로 locale이 utf8로 되어있다.
euckr로 바꾸려고 할 때, 2가지 방법이 있는데

1. 자신의 계정에서만 변경: ~/.bashrc에 "export LANG=ko_KR.euckr" 을 추가
2. 시스템 전체 변경: /etc/sysconfig/i18n에서 "LANG=ko_KR.euckr" 로 변경

소스 : 영문 레드헷에서 한글사용환경 만들기

Putty에서 한글폰트 사용하기

Putty에서는 기본 한글폰트이외의 폰트의 영문폰트에서는 한글입력이 안된다.
검색해 본 결과 소스를 컴파일하는 방법이 무식하지만 가장 효과가 있어보인다.

소스: 한글 iPutty에서 한글 폰트 변경


수정은 WINDOWS.C 의 GetCPInfo 를 콜하는 라인 바로 위에 ucsdata.font_codepage = 949; 라고 한줄만 추가해 주면 됩니다.
그럼, 폰트에 상관없이 무조건 한글이 깨지지 않고 입력됩니다.

추가로, 영문폰트와의 매칭은 기본이 바탕체지만, HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink 에 다른 등록내용을 참고해서 영문폰트명을 키로 매치시키고 싶은 한글폰트를 적어주면 됩니다.