280 likes | 640 Vues
SPARCS 장난감들. 신재호 <netj@sparcs.kaist.ac.kr> 2004-04-27 21:35 도서분관 세미나실. 무슨 장난감들 ?. 누구 사진첩 편지 보관함 편지 구독기 거기 세미나 관리 그리고 더 …. 누구. /SPARCS/bin/nugu 동아리 주소록 프로그램 2000 년까지 “ address ” 쓰다가 고장 나서 2001 년 봄에 새로 만든 것. 누구 / 기능. 사람들 연락처 목록 보기 자세히 보기 목록 HTML 로 뽑기 이름 / 아이디로 찾기 자기 연락처
E N D
SPARCS 장난감들 신재호 <netj@sparcs.kaist.ac.kr> 2004-04-27 21:35 도서분관 세미나실
무슨 장난감들? • 누구 • 사진첩 • 편지 보관함 • 편지 구독기 • 거기 • 세미나 관리 • 그리고더…
누구 • /SPARCS/bin/nugu • 동아리 주소록 프로그램 • 2000년까지 “address”쓰다가 • 고장 나서 2001년 봄에 새로 만든 것
누구/ 기능 • 사람들 연락처 • 목록 보기 • 자세히 보기 • 목록 HTML로 뽑기 • 이름/아이디로 찾기 • 자기 연락처 • 고치기 • 사용법 • $ nugu -h
MySQL 누구 Address <xml> <member> <id>netj</id> <num>2000</num> <name>신재호</name> … </xml> XML 형식 $ nugu netj … … XSLT 누구/ 구조 • Perl/DBI + MySQL + XML/XSLT XML::Simple HASH DBI SQL 입력 처리 홈페이지 주소록 어느 거 써라 LibXSLT
누구/ 앞으로 • 더 필요한 정보 추가 • MSN 주소 • finger 기능 • ~/.plan파일 • 메일 다른 데로 전달하나, 언제 봤나 • 밑바닥을 LDAP으로? • SSO • MUA 연동
사진첩 • http://sparcs.kaist.ac.kr/photo/ • netj.org에서 사용하던 것 빼옴 • 2000년 이후 동아리 사진들 쌓아옴
사진첩/ 기능 • 사진 모아두는 곳 • /SPARCS/photo/ • 그냥 파일과 디렉토리로 마음대로 정리 • 웹에서 목록/보기 • 작은 그림들 자동 생성 • .thumb 디렉토리 생김 • 덧말 달기 • .desc디렉토리 만들어두면, 웹에서 쓰기 가능하게 • 사진 묶음 받기 • 디렉토리 안의 사진들 zip 파일 하나로 • 사용법 • 매우 뻔함; trivial. -_-b
찰칵~! .thumb photo-make-thumbnails 궁시렁 궁시렁 어쩌구 저쩌구 .desc 사진첩/ 구조 • /SPARCS/bin/photo-make-thumbnails • Netpbm 쓰는 셸 스크립트로 작은 그림 만들고 • /SPARCS/www/cgi-bin/photo.cgi • Perl/CGI로 웹페이지 만들고 photo.cgi
사진첩/ 앞으로 • 두 프로그램 합치기 • 미리보기 그림 • 필요할 때 동적으로 만들기 • 중앙 집중 관리, 캐시(Cache)처럼 • 동영상도 만들어보기 • 새로 올라온 사진 목록 RSS • EXIF 정보 연동 • 사진 찾기 • 설명, 날짜 등을 기준으로 • 웹에서 사진 올리기 기능?
편지 보관함 • http://sparcs.kaist.ac.kr/mail-archive/ • sparcs, sparcsunder, wheel, 스터디 그룹 등 • 2001년 겨울에 만들어 설치 • 2000년 3월 이후 메일들부터 쌓음
편지 보관함/ 기능 • 편지 쌓아두기 • mbox • 웹페이지 • 웹페이지 목록 • 글타래별 • 날짜별 • 글쓴이별 • 첨부파일 받기 • 사용법 • 역시 매우 뻔함; obvious.
Procmail /SPARCS/mail/.procmailrc /SPARCS/mail/archive/ sparcs sparcsunder wheel staff sp-seminar 편지 보관함/ 구조 • Procmail + Perl + sh + MHonArc sparcsunder extract-address MHonArc To: sparcsunder … … archive-message sparcsunder로!
편지 보관함/ 앞으로 • 메시지 찾기 • 제목, 내용, 날짜 등으로 • 메시지 원본 받기 • 복사본 다시 전송 받기? • 보관 대상 일반화 • “*@sparcs.*”밖의 주소도 쌓을 수 있게 • 보관함 계층별로 구성할 수 있게 • 각 보관함 RSS 제공? • 관리 도구 추가 • 보관함 만들기 / 없애기 • 특정 보관함 웹페이지 새로고침
편지구독기 • /SPARCS/bin/edalias • 스터디, 프로젝트 모임에서 메일 주소 필요 • 각 구성원을 휠이 맡아 관리하기 매우 힘듬 • 각자 구독할 메일 주소 고를 수 있게! • paran이 2003년 봄에 만듬
편지 구독기/ 구조 • Python • /SPARCS/mail/aliases • 모든 메일 주소들 설정 • /SPARCS/mail/aliases.d/*.template • * 부분이 메일 주소 이름, 가입/해지 가능 • 기본적으로 받아볼 사람들 설정 • /SPARCS/mail/subscription/* • 각자의 구독 현황을 개별 파일에 기록 • 최종 명단 • *.template과 subscription/* 합쳐 주기적으로 만듬
편지 구독기/ 앞으로 • 새로 생긴 메일 주소를 사람들에게 알려주기 • 관리 도구 추가 • 새 주소 만들고 없애고 쉽게 • 어느 주소에 누가 들어있나 • 누가 어느 주소에들어있나 • “편지 보관함”과 연동
거기 • /SPARCS/bin/geogy • *.sparcs.net DNS 이름 편집기 • sparcs.net 아래 원하는 이름 추가, 제거 • 다른 HTTP URL로 보내기 (URL redirection) • airlover가 2002년 겨울 만듬
거기/ 기능 • IP에 이름 붙이기 • revolria.sparcs.net -> 143.248.234.126 • 활용 집에 있는 유동 IP 컴퓨터를 내 이름에 묶어두기 • URL에 이름 붙이기 • http://netj.sparcs.net/ -> http://netj.org/ • 자기 이름 목록 • 자기 이름 없애기 • 사용법 • $ geogy –h
거기/ 구조 • Perl + BINDnsupdate + Apache mod_rewrite • nsupdate 부르기 • sparcs.net의 이름들은 Tsig 키로 동적으로 고칠 수 있음 • 이를 통해 DNS 정보 맞추어 줌 • /SPARCS/etc/geogy/sparcs.net • 각자의 이름들 DB • /SPARCS/etc/geogy/urlredir • Apache에서 rewrite할 이름/URL들 담은 파일 • /etc/apache/httpd.conf • RewriteMap urlmap txt:/SPARCS/etc/geogy/urlredir
거기/ 앞으로 • sparcs.net 외의 도메인 주소도 URL rewrite • http://netj.org/ http://sparcs.kaist.ac.kr/~netj/ • IP만이 아니라, 이름에도 이름 붙일 수 있게 • A 말고 CNAME도 추가할 수 있도록 • 유동 IP 컴퓨터 묶기, 쉬운 방법/예제 제공
세미나 관리 • /SPARCS/bin/seminar • http://sparcs.kaist.ac.kr/seminar/ • 관리자의 게으름, 체계 엉망 세미나 자료 관리 부실 • 자기 세미나 자료는 자기가 직접 관리/공유하자! • breadrat과 함께 시작, 2004년 초 완성
세미나 관리/ 기능 • 내 세미나 • 새로 등록 • 고치기 • 없애기 • 모든 세미나 • 목록 보기 • 내용 보기 • 세미나 자료 웹페이지 출력 • 사용법 • $ seminar -h
세미나 관리/ 구조 • sh + XML + XSLT • /SPARCS/seminar/ • 세미나 자료 저장소 • /SPARCS/lib/seminar/ • *.xslt • 각 기능을 위한 XSLT; 목록, 보기, 웹 • template.xml • 새로 등록할 때 쓰는 정보 틀 파일 • seminar.dtd • 세미나 DTD
세미나 관리/ 앞으로 • 세미나 분류 만들기 • “신입생 교육”, “대외 행사”, “스터디 활동”, “일반”, … • 각 분류별로 목록 볼 수 있게 • 홈페이지에 공개 여부도 분류에 따라 조절 • 최근 세미나 RSS 제공 • 세미나 찾기 • 누가, 언제, 어디서, 요약 등을 기준으로 • 옛 자료 복원/정리 • 없어진 자료들 찾아 메우기 • 요약 없는 것들 채우기
더 자세한 구조… The Truth is Out There - Trinity, The Matrix The Truth is Out There in theSource CODE - 김진수 교수님
그리고 더… • 일정 관리도구 • 행사, 모임, 장비 예약 등에 꼭 필요 • 글 매달 수 있는 달력? • 동아리 책 관리도구 • 무슨 책이 있고, 누가 빌려갔나 • 회의록 관리도구? • 회계 장부 관리도구? • IP 관리도구? • 또 뭐가 있을까??? -.-a
가장 중요한 것 • 지금 있는 도구들 • 이미 알고 있던 사람, 손! • 존재조차 모르는데 사용법은? • 스팍스 장난감 종합선물세트 • 그러나, 설명서가 빠졌다~! • 가지고 놀 수가 없잖아~ ;-( • 동아리 활동 설명서 만들자! • Man page로? • 신입생: 스팍스에서 @!#$@ 궁시렁~ 궁시렁~ %&*#!@어떻게 해요? • 선배: man sparcs;^) • 그냥 웹페이지면 충분: https://sparcs.kaist.ac.kr/help? • 아니면 위키도 나쁘지 않고~ • https://sparcs.kaist.ac.kr/moin/