메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

IT/모바일

게오르그의 Brave GNU World 제 42 호

한빛미디어

|

2002-12-16

|

by HANBIT

8,420

저자: 게오르그 (Georg C. F. Greve), 번역 Brave GNU World 한국어팀(bgw@korea.gnu.org)

게오르그의 멋진 GNU 세상을 찾아주셔서 감사합니다. 이번호는 의미가 있는 숫자인 42호입니다. 지구는 우리에게 대부분 해를 끼치진 않지만 때대로 우리는 그 안에서 길을 잃기가 쉽습니다. 하지만 운좋게도 우리에게는 GpsDrive가 있습니다.

GpsDrive

이름에서 알 수 있듯이 Fritz Ganter에 의해 진행중인 GpsDrive[1]는 "Global Positioning System"(GPS)를 위성을 통해서 사용해서 길을 찾아주는 자유소프트웨어로 GNU 일반 공중 사용 허가서를 준수합니다.

GPS 수신기를 통해서 GpsDrive는 현재 위치를 파악하고 자동적으로 사용자가 정한 크기로 지도를 표시합니다. 지도는 인터넷이나 지도 서버들인 Expedia나 Mapblast등의 프록시를 통해서 곧바로 수신할 수 있습니다.

GpsDrive는 파일로부터 읽어들이거나 마우스로 직접 입력을 받아서 중간 통과 지점들을 표시하여 지나갈 길들을 미리 계획하는 기능을 지원합니다. 경로는 저장이 가능하며 다시 돌려 볼 수 있는데 이를 통해서 여러분이 지나간 길을 여러분의 친구들에게 다시 알려줄 수도 있습니다. 예를 들어 자전거 여행등에서 자주 필요로 하는 기능 같은 것들입니다.

화면을 항상 지켜보고 있어야 하는 것을 피하기 위해 GpsDrive는 Festival[2] 소프트웨어를 통해서 영어와 독일어, 스페인어로 말을 해주는 기능이 있습니다.

GpsDrive의 개발은 2001년 8월에 시작해서 겨우 1년밖에 되지 않았지만 그 기능들은 굉장합니다. GpsDrive의 가장 신기한 기능 중 하나는 "friendsd" 서버일 것입니다. 이를 통해서 여러분들은 여러분의 친구들과 서로의 위치를 공유할 수 있고 화면을 통해서 확인할 수도 있습니다.

GpsDrive는 C로 작성되었고 GTK+ 툴킷을 사용했으며 아직 개발중이긴 하지만 이미 상당히 안정화 되었습니다. 앞으로의 개발의 핵심은 도로 교통안내 기능을 음성지원과 함께 구현하는 것입니다.

이 프로그램은 모든 Garmin GPS 수신기를 지원하며 시리얼 포트를 통한 출력을 지원합니다. 다른 GPS 수신기들처럼 NMEA 프로토콜을 지원하고 랩탑에서 GNU/Linux와 FreeBSD를 통해서 테스트되었습니다.

하지만 물론 PDA 등이 이러한 애플리케이션의 주요 플랫폼이며 컴팩의 iPAQ이나 Yopy 등을 가지고 있는 사람들은 아주 행복할 것입니다. 왜냐하면 GpsDrive가 이들을 지원하기 때문입니다.

GpsDrive가 이미 10개국어로 번역작업이 이루어 지고 있는 것에 반해서 음성지원기능은 아직도 많은 사람들의 참여를 기다리고 있습니다.

GNU SpaceChart

Migual Coca에 의해 진행되고 있는 GNU SpaceChart[3]는 은하 내부의 구조와 길들에 대해 도움을 줄 수 있는 GNU 프로젝트의 새로운 패키지입니다. 사실 공상과학의 이야기들과 은하의 구성에 대한 이야기들이 Miguel로 하여금 SpaceChart를 작성하게 한 동기입니다.

GNU SpaceChart는 밤하늘의 2차원적인 표현에 제한된 별들의 지도를 보여주는 프로그램이 아닌 별들의 위치에 대해 보다 세밀하게 보여주는 프로그램입니다.

사용자들은 태양이나 다른 별들을 표시할 때 넓은 범위에서 조건을 가해서 원하는 조건의 별들만 보여지게 할 수 있습니다. 3차원 표현이 가능하기 때문에 별들은 서로 선을 통해서 이을 수 있고 우주에서 회전을 시킬 수 있습니다.

Miguel에 따르면 이러한 부분은 SpaceChart가 다른 자유 소프트웨어 프로그램들과 비교했을 때 두드러지는 장점이라고 합니다. 왜냐하면 다른 프로그램들은 이와 같은 3차원적인 느낌을 주지 못하기 때문입니다.

SpaceChart를 작성하는데 쓰인 프로그래밍 언어는 GNOME라이브러리와 C 언어이며 이 프로그램은 GNU 일반 공중 사용 허가서를 준수합니다. 이러 선택으로 인해 프로그램이 좀더 빠르고 태양으로부터 50광년 내에 있는 모든 별들을 실시간으로 표시하고 부드럽게 회전시킬 수 있었습니다.

GNU SpaceChart의 또 다른 부분은 펄 스크립트(Perl script)에 의해 작성되는 은하지도 데이터 파일이 자동으로 생성된다는 것과 Robert Chassell에 의해 제공되는 문서들입니다. Miguel에 의하면 그는 이 프로젝트의 활동적인 베타 테스터이면서 프로젝트가 보다 발전할 수 있도록 끊임없이 새로운 생각들을 제공해주고 있습니다.

이 프로젝트에 관심을 갖고 있는 사람들 중 대부분은 공상과학 소설의 작가와 독자들이며 이들은 별들이 서로 어떻게 영향을 주고 받으면서 분포되어 있는지에 대해 보다 많은 지식을 얻기를 바라고 있습니다. 하지만 그는 이 프로젝트에 대해서 "진짜" 천문학자들의 조언을 바라고 있습니다. 그들에게 이 프로젝트가 정말로 쓸모가 있는지를 알고 싶기 때문입니다.

코드를 작성하는 것이나 테스트 하는 것, 문서작업 등 모든 부분에서 도움은 언제나 환영받을 것입니다.

Process View Browser - Add-On

멋진 GNU 세상 제 36 호[4]에서 Rainer Lehrig에 의해 진행중인 "Process View Browser" (pvbrowser) 프로젝트를 소개 했었습니다. 이 프로젝트는 기술적인 프로세스들을 제어하고 화면으로 보여주는 프로그램을 작성하는 것이었습니다.

그당시에 가장 문제가 되었던 부분은 이 프로젝트가 GNU/Linux 상에서는 자유소프트웨어이지만 윈도우와 매킨토시에서는 독점적 프로그램이라는 점이었습니다. 이것이 멋진 GNU 세상이 이 프로젝트를 소개하는 것에 대해서 고민해야 했던 부분이었습니다.

하지만 Rainer Lehrig가 멋진 GNU 세상 공동체의 제안을 받아들여서 모든 플랫폼에서 GNU 일반 공중 사용 허가서를 준수하게 되었습니다.

또한 그는 우리에게 프로그램에서 사용하는 모든 Qt 위젯들과 Visualization ToolKit (VTK)[5]들이 멋진 3D 그래픽을 표현할 수 있게 되었다고 이야기를 했습니다.

만일 여러분이 여기에 관심이 있으시다면 기능들에 대한 정보들을 홈페이지[6]에서 찾을 수 있을 것입니다.

GNU Eprints

소샘톤 대학의 Christopher Gutteridge는 Mike Jewell의 도움아래 온라인문서를 생성하는 프로젝트인 GNU EPrints[7]를 제작하고 있습니다.

특히 과학분야에서 연구와 연구발표의 상당히 중요한 부분이 되는 연구 보고서에 이 프로그램을 사용한다면 매우 유용할 것입니다. 이러한 작업을 쉽게 하는 것이 GNU EPrints의 목표입니다. 물론, 이것은 연구 분야 및 프로젝트 또는 기관에 관한 논문들이나 자료들이 문서화되는 어떤 상황에 이론적으로 놓여질 수 있다는 전제를 두고 있습니다.

GNU EPrints의 정책상에 도움을 주는 Steven Harnad 교수님께서 다음과 같은 생각으로 이 프로젝트의 동기를 말씀해 주셨습니다. 그것은 재정적으로 좀 더 약한 기관들이나 나라에 과학적 교류에 있어서의 참여의 기회를 주는 것과, 과학 안에서 그것의 결과들에 방해를 받지 않는 통로를 재건해야 한다는 것입니다.

GNU 공중 사용허가서를 따르는 자유소프트웨어가 존재함에도 불구하고 GNU EPrints의 또 다른 이점은 시작부터 다른 언어들을 지원하는 것에 방향을 맞추고 있다는 것입니다.

웹 페이지에서 다른 언어들을 제공하고 있고, 분야마다 다른 언어들을 선택하는 것이 가능합니다. 이 프로그램은 또한 몇몇 프랑스어 문서를 영어와 프랑스어로 동시에 출판할 수 있는 실용적인 프로그램입니다. 더 나아가서, EPrints는 유니코드를 지원하기 때문에 유럽언어에 국한되지 않고 대부분의 모든 언어가 가능합니다.

EPrints는 펄을 이용한 객체지향에 가까운 프로그램입니다. 이 것은 소스를 가능한 한 쉽게 이해할 수 있게 하기 위한 것입니다. "이 프로그램은 절대 완벽해 질 수 없다"라는 설계철학때문에 EPrints에는 언제나 상황에 따라 그것을 적합하게 만드는 변경 사항들이 요구됩니다. 이것을 해결하기 위해서 EPrints는 상당히 유용하게 사용되는 최적화 스크립트라 불리는 프로그램인 Hooks의 개념을 사용했습니다.

이것은 매우 최적화된 시스템에 대해 때때로 다른 함수들을 이해하거나 올바른 선택들을 찾는 등의 문제점들을 만들어 내는 것을 야기합니다. 이것에 대한 올바른 방법으로 새로운 사용자들을 도와주기 위해, 잦은 질문 및 필요에 대한 답변이 들어있는 HOWTO 문서들이 제공되고 있습니다.

실제 실용적인 부분에서 제작자의 경험을 고려할 때, 기술적인 면은 매우 작은 문제입니다. 오히려 구조와 관련된 문서정책 또는 동의에 대한 해결을 얻는 것이 훨씬 더 큰 어려움입니다.

그것에 대해 몇 달이 걸려 논의를 한 곳과 위원회가 있습니다. 이 위원회들은 문서 구조를 결정하며 현재 20개의 등록된 구조가 있습니다. 또한 이것은 사회 문제들이 기술적으로 풀려질 수 없다는 것을 설명합니다. 이러한 경우에 Christopher Gutteridge는 당근과 채찍을 적절한 도구로써 사용합니다.

하지만 구조에 대한 동의와 사용자들이 메타데이터의 충분한 양을 공급하도록 교육이 되어있다면 GNU EPrints는 최고의 가치있는 도구가 될 것입니다.

이 프로그램은 공개문서표준화(Open Archives Initiave/OAI)[8]표준버전 1.1과 2.0을 따르고 있기 때문에 심지어는 다른 문서들과도 문서 메타데이터를 공유할 수 있습니다. 그리하여 등록된 구조들이 동시에 복합 온라인 문서들 중에서 찾아질 수 있습니다.

Christopher Gutteridge에 따르면 그는 현재 도움이 정말로 필요하지는 않다고 합니다. 소스 제작은 외부의 지원자금 덕분에 충분할 정도로 안정적으로 보여지고 있습니다. 문서화 작업은 현재 진행중에 있습니다.

Koha

이번에 소개할 Koha[9] 역시 자료의 연결성과 검색성에 관련된 프로젝트입니다만 Koha는 (아날로그) 도서관 관리 소프트웨어입니다.

Koha에서 사용방법이 가장 명확한 것은 물론 카탈로그-카드 형식의 OPAC 인터페이스로, Koha의 중심 컴포넌트이기도 합니다. OPAC을 통해 여러 많은 파라미터로 검색을 할 수 있습니다. 뿐만 아니라 새로운 책의 취득이나 도서관 회원들의 정보와 대출도 Koha로 관리할 수 있습니다.

Koha의 확장 기능 중 하나는 회원들의 정보를 읽어 당신이 지난 해에 읽은 책 중에 흥미로운 책을 찾도록 하는 것입니다. 이 기능은 Horowhenua 도서관에서 가장 인기있는 기능이지만 그런 데이터를 모으는 것이 위험하다고 생각된다면 끌 수도 있습니다.

새 책의 취득 관리 부분에서는 예산의 운영과 다른 공급업체들간의 가격 정보를 환율까지 계산하여 제공합니다. 이를 통해 모든 주문과 수령된 책을 항상 완벽하게 관리할 수 있습니다.

Koha 는 인터넷과 격리되어 있지않고 웹사이트를 엔트리로 가질 수 있습니다.

2000년 1월부터 사용된 Koha는 작은 규모에서 중간 규모의 도서관용 솔루션으로, 현재 가장 광범위하고 가장 활동적이며 제일 지원이 많은 자유 소프트웨어 솔루션입니다. 그리고 큰 규모의 도서관(주립이나 국립)용으로 만드는 작업도 거의 끝났습니다.

펄로 만들어진 이 프로젝트에서 가장 흥미로운 부분은 프로젝트의 역사입니다. 사실 이 프로젝트는 뉴질랜드의 Horowhenua Library Trust와 주식회사 Katipo Communications 사이의 계약에 의해 시작되었습니다.

1999년에 사용 중이었던 시스템을 곧 폐기할 예정이었기 때문에 Katipo는 인터넷과 GNU/Linux, MySQL, 펄, HTTP와 텔넷 기반의 시스템 컨셉을 제안했습니다.

도서관이 2000 년 1월 3째주에 새로운 시스템으로 바꿀 계획이었기 때문에 그들은 16주 안에 새로운 소프트웨어를 작성하고 기존의 하드웨어에 설치해야 했습니다.

늘 그렇듯이 가장 어려운 문제는 도서관 내부의 작업에 대한 지식을 전달하는 일이었습니다. 도서관 사서들이 프로그래밍에 대해 잘 모르듯이 개발자들 역시 사서들의 일에 대해 몰랐습니다.

이 문제를 시급히 해결하기 위해 개발자와 사서들이 스스로 팀을 이루어 16주 동안 매우 가까이에서 같이 일을 했습니다. 그런 공동체 정신은 프로젝트가 끝난 후에도 지금까지 이어져서 Koha는 학제(學制)적인 팀이 개발과 유지를 맡고 있습니다. 이것이 프로젝트가 그렇게 성공적이 된 이유 중 하나일 수 있습니다.

다른 이유는 Koha가 GNU 일반 공증서 아래에서 자유소프트웨어로 배포되었기 때문입니다. 주식회사 Katipo Communications가 처음 이것을 제안했을 때는 이것이 왜 좋은 생각인지 설명하는데 힘이 들었지만 결국에는 Horowhenua Library Trust를 납득시키는데 성공했습니다.

그 중 하나는 Horowhenua Library Trust나 주식회사 Katipo Communications가 큰 규모로 마케팅이나 배포를 할 것인가 (혹은 할 수 있는가) 였습니다. 하지만 좀 더 중요한 것은 Katipo Communications의 잠재적인 문제들에서 프로젝트를 보호하는 것이었습니다. 그리하여 프로젝트를 자유소프트웨어로 만듦으로써 안전하게 만들었습니다.

프로젝트는 Maori 말로 선물을 뜻하는 Koha로 칭해졌습니다. 이로써 다른 도서관들도 이 일이 완료됨에 따라 이익을 볼 수 있게 되었기 때문입니다.

결과물로써 그들은 프로젝트 주위에 형성된 매우 활동적인 국제적 공동체에 의해 유지되고 모든 이의 예상을 뛰어넘는 프로젝트를 받았습니다.

여기에는 두 가지 교훈이 있습니다. 첫째, 이종의 팀은 섞기 힘들지만 만약 잘 섞였다면 결과는 모두에게 만족스러울 것입니다.

둘째, 소프트웨어를 개발하는 기업이나 사람들은 그것을 자유 소프트웨어로 배포했을 때의 이익에 대해 생각해야 합니다. 그것은 투자나 독립성을 보호해 줄 뿐 아니라 국제적인 협력에 의해 독점적인 프로젝트에서는 불가능한 부가가치가 생깁니다.

내부적으로 Koha 팀은 민주적으로 조직되어 있습니다. 최근에 멋진 GNU 세상의 질문지에 응답해준 Pat Eyler가 Kaitiaki (프로젝트 리더)에 선출되었고 Chris Cormack는 1.2 시리즈의 배포 관리자, Paul Poulain은 1.4 버전 트리의 책임자가 되었습니다.

개발을 진행하기 위해 Koha 팀은 더 많은 팀원을 찾고 있습니다. 특히 도서관과 관련된 지식이 있는 펄 개발자들, 웹 디자이너들과 문서 저작자들이 이상적일 것입니다.

저는 도서관을 정기적으로 찾거나 어떻게든 도서관과 관계가 있는 분들에게만 Koha를 추천하고 싶습니다. 도서관의 이익에 관해서는 차치하고라도 그것은 도서관 이용을 더욱 편리하게 해줄 것입니다.

도서관 관련 자유소프트웨어에 대한 정보 역시 온라인상에서 찾을 수 있습니다.[10]

Gcron

GCron[11]은 GNU System에서 현재 사용되는 Vixie Cron의 대체 프로그램이 될 것입니다. 그 이유는 Vixie Cron이 초기 90년대부터 유지가 되어 오지 않았으며, 다른 GNU/Linux 배포판들이 프로그램 내부 패치라는 명목으로 시도된 몇몇 보안 문제들만이 개발되었기 때문입니다. Gcron 덕분에 매우 희망적으로 곧 vixie cron은 불필요하게 될 것입니다.

비록 cron이 분명하게 Unix System의 "고전 중 하나"이긴 해도 몇몇 독자들은 이것에 대해 아직 전혀 들어보지 못했을 것입니다. 그래서 간략하게 소개를 할까 합니다.

Cron은 특별한 시간대에서의(주간, 시간, 날짜간 등등) 셸스크립트 등과 같은 프로그램을 실행하는 프로그램입니다. 예를 들어 이것은 자동으로 주기적으로 필요한 작업을 합니다. Cron은 대부분 Unix와 유사한 System들의 대부분의 기본 설치프로그램에 시스템 유지 작업을 위해 포함되어 있습니다.

Ryan Goldbeck는 현재 모든 GNU/Linux 배포판에서 사용될 보안을 고려한 새로운 개선 버전인 gcron을 개발 중입니다.

첫번째 목표는 POSIX 표준을 완벽하게 지원하는 것과 Vixie Cron에 오래된 호환성이 있는 파일들을 문제 없이 통합시키는 것입니다.

그 이후로, 실행시간이나 자원처리와 같이 실행된 프로그램에 대한 더 자세한 정보를 위해 GNU/Hurd 특별 확장과 추가들이 계획되어 있습니다. 또한 실행된 프로그램들에 의해 시스템 자원의 처리를 조절하는 더 나은 방법을 포함하는 것이 가능해 질 것입니다.

GCron이 GNU 일반 공중 허가서를 따르며 자유소프트웨어로써 배포된다는 것은 놀랄 일이 아닙니다. 프로그래밍 언어로써는 C가 사용되었습니다.

Goodbye, and thanks for all the fish!

늘 그렇듯이, 여러분 모두 생각이나, 비평, 질문, 착상, 의견 그리고 흥미로운 프로젝트에 대한 정보를 보내시는데 아무 망설임 없길 바랍니다.[12]

참고 문헌 및 사이트 정보
각주
[1] GpsDrive 홈페이지: http://gpsdrive.kraftvoll.at
[2] Festival 홈페이지: http://www.cstr.ed.ac.uk/projects/festival/
[3] GNU SpaceChart 홈페이지: http://www.gnu.org/software/spacechart/
[4] Brave GNU World 36 호: http://brave-gnu-world.org/issue-36.en.html
[5] Visualization ToolKit (VTK) 홈페이지: http://public.kitware.com/VTK/
[6] Process View Browser 홈페이지: http://pvbrowser.sourceforge.net
[7] GNU EPrints 홈페이지: http://www.eprints.org/
[8] Open Archives Initiative (OAI) 홈페이지: http://www.openarchives.org
[9] Koha 홈페이지: http://www.koha.org
[10] Free Software for libraries: http://www.oss4lib.org
[11] GCron 홈페이지: http://www.gnu.org/software/gcron/
[12] Brave GNU World에 질문이나 의견 제안: column@brave-gnu-world.org

Copyright ⓒ 1999, 2000, 2001, 2002 Georg C. F. Greve
본 기사는 멋진 GNU 세상에서 발췌한 기사입니다.
TAG :
댓글 입력
자료실

최근 본 책0