« Previous : 1 : 2 : 3 : 4 : 5 : Next »

Genome Browser 진행 상황

만들어봐야겠다라고 생각하고 시작한지로부터 이제 거의 3주가 다 되어가네요 ^^;; 우선 오늘 추가된 부분은

제 블로그의 왼쪽 상단에 PAGES 부분에 Genome Browser Dev라는 링크를 만들었구요,

Browser의 정보를 보여주는 왼쪽 상단의 붉은 박스의 내용을 좀 수정했습니다. 기본적으로 CSS에서 맑은 고딕 폰트를 보여주도록 바꾸었습니다.

줌인과 아웃시에 enableContinuousZoom() 메소드를 추가해서 부드럽게 줌 인/아웃이 되도록 했습니다.

현재 보여주는 정보는 1번 Chromosome의 첫부분 약 400,000bp 정도이며, CNV 정보를 보여주고 있습니다. 해당 CNV 정보는 Database of Genomic Variants의 정보를 기반으로 하고 있습니다.

이상!!!!

Posted by hongiiv

2008/02/28 21:02 2008/02/28 21:02
, , , ,
Response
No Trackback , 2 Comments
RSS :
http://socmaster.homelinux.org/~hongiiv/rss/response/321

익숙한것에 익숙해져 버리다.

Genome Browser를 만들면서 한가지 고민에 빠지게 되었다. 이걸 왜 만들고 있는지에 대한 원초적인 질문에 답을 찾지 못하고 있다는 것이다. 왜 이걸 지금에야 생각하고 있는건지...

그동안 생물학자들은 여러가지 Genome Browser를 사용하고 있었지만, 그 생김새나 기능들은 그닥 큰 차이가 없기 때문에 별 어려움이 없이 사용하고 있다. 좀 불편하더라도 그 불편함을 모르고 그냥... 거기에다가 GMOD(Generic Model Organism Database project)에서도 GBrowse라는 브라우저를 제공하고 있다. 아마 이 브라우저가 가장 보편적인 Genome Browser의 표준(?)일 것이다.

그런데 이러한 기존 방식의 Genome Browser가 아닌 Google Map API를 이용한 지금의 브라우저는 기존의 브라우저에 익숙한 사람들이 어떻게 생각할 것인가?라는 의문에 갑자기 생기기 시작했다. 이제부터 끊임없는 익숙한 것과 새로운것의 중간지점을 잘 찾아서 어떻게 쓸만하게 만들것인가에 대해서 생각해봐야겠다.


Posted by hongiiv

2008/02/27 15:03 2008/02/27 15:03
, , , ,
Response
No Trackback , 4 Comments
RSS :
http://socmaster.homelinux.org/~hongiiv/rss/response/320

대용량 컴퓨팅 환경과 Genome Browser

바로 이전 글에서 대용량 컴퓨팅 즉 클러스터 컴퓨팅환경을 Yaohoo와 Google에서 연구자들에게 제공한다고 했었다. 대용량 컴퓨팅환경, 좀 더 세분화한다면 여러대의 컴퓨터를 묶어서 사용하는 클러스터 환경과 Bioinformatics 연구를 한번 짚고 넘어가 보려고 한다.

클러스터 컴퓨팅환경을 사용하는 가장 일반적인 예는 바로 처리하고자 하는 일을 나누어서 하는 것이 가장 손쉬운 클러스터 컴퓨터를 이용하는 방법이다. 24개의 chromosome에 대응하는 어떠한 데이터가 있다고 가정할 때 한 대의 컴퓨터로 24개의 chromosome 데이터를 처리할때에 24시간의 시간이 걸린다고 한다면 24대의 컴퓨터에 이러한 작업(job)을 분배한다면 1시간에 끝마칠 수 있다. 바로 linear하게 속도를 향상 시킬 수 있는 가장 빠르고 손쉬운 클러스터 사용법이 되겠다. 이러한 작업을 수행할때 현재 작업을 수행하고 있지 않은 클러스터 상에서의 컴퓨터를 골라서 작업을 알아서 맡기고 맡긴 작업이 끝났는지 확인하고 이를 수집하는 역할을 하는 소프트웨어가 필요로 하는데, 일반적으로 pbs, torque, loadleveler와 같은 batch system(queue manager)가 이러한 작업을 수행한다. 따라서 사용자들은 손쉽게(일일이 24개의 컴퓨터에 로그인해서 명령을 입력할 필요없이) 작업을 분배하고 이를 취합할 수 있다.

두번째 방법은 mpi와 같은 표준의 병렬 프로그래밍 언어로 작성된 프로그램을 수행하는 방법이다. 이미 많은 어플리케이션(blast를 비롯해서)이 병렬화 되어 있다. 위의 예처럼 작게 나눌 수 없는 작업의 경우 사용할 수 있지만, 속도는 곱배기로 향상되지는 않는다. (컴퓨터간에 주고 받는 메세지에 따른 네트워크 속도 감소 및 기타 여러가지 영향으로...)

마지막으로는 분산 병렬 시스템의 운용을 지원해 주는 Map-Rduce나 Hadoop을 이용하는 방법이 있지만, 여기서는 제 지식이 너무 열악하기 때문에 ^^;;

그외에도 Bioinformatics에서의 대용량 데이터를 위한 분산 파일 시스템도 고려해야 하지만, 이것 pass,,,

분명한 문제는 아직 이러한 것들이 아직까지는 일반적인 환경이 아니기 때문에 윈도우즈의 메모장처럼 손쉽게 사용할 수는 없다. 하지만, 이미 외국 사례에서 보듯 분명 우리나라에서도 많은 지원으로 Bioinformatics에서도 이러한 환경을 기반으로 하는 많은 프로젝트나 어플리케이션, 개발사례가 나올것이다. 또한 이제 Bioinformatics 교육 과정에서도 손쉽게 볼 수 있을 날이 얼마 남지 않았다고 확신한다. (참고로, 옛날 포스팅에서 언급한 한재선박사님이 국내의 불모지와 같은 이러한 돈 안되는 시스템소프트웨어 부분에서 열심히 일하고 계시기 때문에 꼭 가능하리라 본다.)

이제 본론으로 돌와아서 지금 수행하고 있는 Genome Brower 프로젝트(물론 개인적으로 지극히 개인적으로 진행하고 있는 ^^)에서도 대용량의 데이터를 사용해야 한다. chromosome 정보를 Google Map 보여주기 위해서 1번 chromosome만 하더라도 줌레벨 16에서 256x256px 그림 조각이 약 40,000개가 필요로 한다. 그외의 15,14,13 줌레벨의 그림 조각도 각각 9,765, 2,441, 610개가 필요하고 총 chromosome 1번을 위해서 총 약 5만개의 그림 조각을 생성해야 한다. 이것을 총 24개의 chromosome으로 계산하면 약 1,200,000개의 그림을 필요로 한다.(물론 1번 chromosome이 제일 크니깐 이 계산은 맞지 않습니다 ^^, (여기에다가 추후 여러가지 정보를 추가한 레이어를 더 추가한다면 그림의 갯수는 더 늘어나겠죠^^)

이러한 작업을 한대의 컴퓨터에서 한다면 그시간은 무시 못하겠죠, 그럼 대안은 위의 클러스터 환경을 사용하는 것인데,, 어떻게 클러스터를 사용할 것인가의 첫번째 언급한 내용의 job 분배 방식을 사용하면 손 쉬울 겁니다. 다음 포스팅에서는 어떻게 이러한 대용량의 작업을 클러스터에서 어떠한 방식으로 처리하는지 좀 더 자세하게 기술해 보겠습니다. 물론 저도 좀더 생각을 해봐야할 시간도 필요하고요 ^^;;

제목은 거창했는데 별 내용은 없네요 ^^;; 참 지금 Genome Brower는 각 그래픽 요소를 컴포넌트로 만들고 데이터베이스에서 정보를 읽어와 panel상 배치한 후 각 줌 레벨별로 만드는 것까지 끝난 상태입니다. 이제 남은 부분은 실제 각 chromosome별로 클러스터를 사용하여 이미지를 만들고, Genome Browser상의 그래픽 요소를 클릭했을 경우 해당 정보를 좀더 자세하게 보여주는 부분만 해결하면 되겠군요. 진행사항이 궁금하시면 결과물은(계속 바뀌고 있습니다만,,,) http://www.hongiiv.com/snpview/snpview.html를 보시면 됩니다.



Posted by hongiiv

2008/02/26 14:08 2008/02/26 14:08
, , , , , , , , , ,
Response
No Trackback , No Comment
RSS :
http://socmaster.homelinux.org/~hongiiv/rss/response/319

이전에 국내 바이오인포매틱스 관련 오픈소스 현황이라는 주제의 글에서 대용량 데이터 분석 환경 지원 부분에서 연구를 위해서 단순하게 슈퍼컴퓨터나 cluster 컴퓨터의 기본적인 환경만을 제공하는 것이 아니라 이러한 환경에 + 유틸리티를  덧붙여 제공해야 한다고 언급했었습니다. 그 일례로 Yahoo에서는  학교나 일반 기업에서 구비하기 힘든 Hadoop기반의 클러스터 컴퓨팅 자원에 대해서 학술 연구 목적으로 지원을 하고 있다고 했었죠.

슈퍼컴퓨팅 자원 + 이를 좀더 유연하게 활용할 수 있는 utility(야후에서는 Hadoop)

Google의 official 블로그에서도 Supporting cluster computing in the research community이라는 글이 올라왔습니다. 역시나 Google에서도 Google's file system 과 MapReduce programming model을 기반(?)으로 하는 Apache Hadoop을 연구자들을 위해 제공한다고 합니다. 이제 클러스터 컴퓨팅에서의 Hadoop은 MPI와 같이 일반화된 표준으로 작용되어 가고 있습니다. 여기서 Bioinformatics 연구자들도 대용량의 컴퓨팅 자원을 이용할때에도 Hadoop을 활용할 수 있도록 차근차근 배워 나아가야 하지 않을까? 라는 생각을 해본다. 곧 이러한 환경을 손쉽게 만날 수 있을테니까요 ^^;;

일전에 비누인형님이 대용량 컴퓨팅환경을 써보고 싶으시다는 말을 언급하셨는데, KISTI의 슈퍼컴퓨터뿐만 아니라 우리나라에서도 Yahoo나 Google처럼 손쉽고, 좀더 유연하게 연구자들이 대용량 자원에 접근하는 날이 왔으면 하네요. 그래서 이를 활용한 우수한 paper(?)들도 나와 주었으면 하는 바램입니다.

마지막 포스팅으로부터 일주일이 더 지났네요,, 짧다면 짧은 시간안에 저에게 너무 많은 일들이 일어났습니다. 물론 좋지 않은 측면에서요 ㅜㅜ 이유는 묻지 마시고 힘내라고 한마디 부탁드립니다. 그럼 아무리 힘들어도 포스팅 쭉쭉 올라갑니다.


Posted by hongiiv

2008/02/26 11:40 2008/02/26 11:40
, , , , , , , , ,
Response
No Trackback , 4 Comments
RSS :
http://socmaster.homelinux.org/~hongiiv/rss/response/318

Genome Browser의 그래픽 요소 정리

Genome Browser를 만들면서 기술적으로 가능한지에 대한 타당성에 대해서 검토를 대충 마쳤다. 따라서 이제는 세부 사항들에 대해서 정의를 하려고 한다. ^^ 그럼 제일 중요한 Brower의 요소인 그래픽 요소들에 대해서 하나씩 정리를 하고 이를 구현해보려고 한다.

Genome Brower의 그래픽 요소
Brower에서 사용자가 정보를 얻는 제일 첫번째는 Genome 정보를 그래픽으로 표현한 그래픽 요소들로 부터 1차적으로 정보를 얻는다. Genome Browser의 목적 중 하나가 바로 Genome 정보를 사용자가 그래픽 요소들을 툥해 한눈에 쉽게 알아볼 수 있도록 하는 것이기 때문에 이러한 그래픽 요소의 정의가 충분이 이루어져야 사용자가 원하는, 사용자가 맘에 드는 Browser를 만드는 첫 단계를 시작할 수 있다.

Ruler
Browser 상에서 Genome 정보를 표시하기 위한 그래픽 요소를 크게 나누어보면, 첫번째 Ruler가 있다. 지도 정보는 위도, 경도의 좌표값을 통해서 지도 정보에 손쉽게 접근할 수 있다. 마찬가지로 Genome에서는 해당 chromosome의 어느 위치를 보고 있는지를 bp(base pair, 염기쌍의 갯수)를 통해서 접근하는데 이를 표시해줄 Ruler(눈금자?)가 필요하다.

K-20080218-405878
UCSC Genome Browser의 Ruler

K-20080218-407453
Ruby 패키지의 Ruler

K-20080218-410374
Ensemble의 Ruler

Feature
두번째 요소는 Feature로서 이 Feature가 실제 Genome 정보를 다양한 그래프 형태로 제공한다. 그럼 Feature에 해당 하는 요소는 이전 포스팅에서 언급했듯이 아래와 같다.

generic
box
line
line with handles
directed
directed box
triangle
spliced
directed spliced
composite features
transcripts

Label
라벨은 해당 Feature들에 부가적인 Text 정보를 넣을 수 있는 요소이다.

Track
Feature들이 들어가는 공간

이상으로 4개의 커다란 category로 Genome 정보를 표시하게 된다. 그럼 Feature의 generic, box는 어느정도 그 윤곽을 잡았기에 가장 첫번째로 언급한 Ruler를 만들어야겠다. 이쁘게 ^^

Posted by hongiiv

2008/02/18 16:24 2008/02/18 16:24

Genome Browser 만들기 시작~

snpview1

google maps api를 이용한 Genome Browser 입니다. 현재까지는 1번 염색체의 줌레벨도 1단계만 지원하고 있습니다. 수많은 눈금들은 dbsnp에서 snp정보를 읽어와 염색체 위에다가 표시한 것입니다. 이제 확대할 경우 좀더 자세히 볼 수 있겠죠 ^^;; 클릭하면 해당 snp의 정보도 보여줄 예정입니다. 이거 막상하다 보니깐 여기저기 고려해야 할것들이 너무 많네요 ^^;;

Posted by hongiiv

2008/02/05 19:30 2008/02/05 19:30
, , , ,
Response
No Trackback , No Comment
RSS :
http://socmaster.homelinux.org/~hongiiv/rss/response/313

BioBlogRSS가 이제 모양을 갖췄습니다.

단순하게 Bioinformatics관련 블로그의 글들을 모아서 보여주고 레몬펜으로 자신의 생각을 적을 수 있도록 만든 BioBlogRSS 사이트가 가장 기본적인 기능이면서 핵심기능을 모두 갖추게 되었습니다.

BioBlogRSS는 국내외 Bioinformatics관련 블로거들의 블로그 총 13개에서(각 블로그의 목록은 OPML 형태로 제공되고 있습니다.) 수집된 232개의 글중에서 총 111개의 글을 보여주고 있습니다.

어디로 접속해야 하나요?
BioBlogRSS의 공식적인 주소?는 http://www.hongiiv.com/bioblogrss/bioblog.html 입니다. 참고로 제 블로그 왼쪽의 PAGES부분에도 링크를 걸어두었습니다.

biobloglink

왜 13개의 블로그인가요?

현재까지 제가 파악하고 있는 적어도 제가 들낙거리는 블로그는 현재 이것밖에는 없습니다. 여러분들이 더 추가해서 다른 분들과 함께 보고 싶은 블로그가 있다면 레몬펜으로 <지향합니다.> 이부분에다가 새메모로 적어주세요.

bug

왜 111개의 글만 보여주나요?
처음에는 최대한 많은 블로그의 글을 가져와서 다음페이지, 이전페이지의 페이징도 만들어서 제공하려 했습니다만, 블로그의 특성상 자주 갱신 되지 않을뿐더라 오래된 글을 보려는 분들도 많지 않을것 같았습니다.

최신의 블로그글들을 한눈에 볼 수 있고, 이것에 대해 의견을 나눌수 있는게 BioBlogRSS의 가장 큰 목적이니까요? ^^;; 어설픈 변명인가?? 향후 글의 갯수는 조절가능합니다. 이것도 의견으로 내주시면 적극 반영하겠습니다.

어디에다가 써먹나요??
전세계의 Bioinformatics를 연구하시는 분들이 과연 어떠한 글들을 통해 자신을 표현하는지 배우고, 전문적인 블로그들을 통해 최신의 지식습득(?), 꽁수 습득을 여러 블로그들을 돌아다니지 않아도 한페이지에서 조망 할 수 있다는 것이 특징이자, 써먹을 곳입니다. 하루 두번 아침, 저녁으로 글들을 주욱 한번 보시고 관심있는 부분은 직접 찾아가시면 되겠습니다.

다시 한번 아침에 한번, 저녁에 한번 하루에 두번씩 들르셔서 레몬펜으로 자신이 본 블로그는 간단한 의견을 남겨주시면 아직 읽지 않은 분들에게 많은 도움이 될것 같습니다. (^____^)

저도 이렇게 블로그의 RSS들을 읽어와서 보여주는 페이지를 만들고 싶은데요?
BioBlogRSS는 PHP를 기반으로 작성되었습니다. RSS를 수집해서 제공할 수 있는 magpierss라는 PHP 라이브러리를 기반으로 만들어졌습니다.

기본적으로 사용하는데 있어서 utf-8 인코딩 때문에 한글이 ???로 나오는 현상이 있었지만, rss_fetch.inc 파일에서 MAGPIE_OUTPUT_ENCODING 부분을 수정해서 해결했습니다.

    if ( !defined('MAGPIE_OUTPUT_ENCODING') ) {
        #define('MAGPIE_OUTPUT_ENCODING', 'ISO-8859-1');
        define('MAGPIE_OUTPUT_ENCODING', 'UTF-8');
    }

뭐 그외에 이 라이브러리만 잘 활용한다면, 아주 손쉽게 만드실 수 있을겁니다. 혹시 소스가 필요하시면 바로 연락해주시면 바로 드리겠습니다.


Posted by hongiiv

2008/01/29 17:48 2008/01/29 17:48
, , , , ,
Response
No Trackback , 8 Comments
RSS :
http://socmaster.homelinux.org/~hongiiv/rss/response/311

Bio Blog RSS 제공 사이트 진행 현황

bioblgrss

위선 위의 그림과 같이 UI쪽은 대충 마무리 되었습니다. 많은 부분을 모 홈페이지의 디자인을 상당 베낀 모습입니다. 추후 변경될 예정입니다. ^^;; 그림을 클릭해서 보시면 확대 가능합니다.

우선 작업을 진행하면서 이것저것 고려해보았습니다. 사용자 스토리 즉 기능분석 작업은 아래와 같습니다.

1, Bioinformatics 관련 블로그의 RSS를 읽어와 화면에 표시해야한다.
2, 화면에 표시된 RSS의 글에는 해당 블로그의 이름, 링크, 날짜, 간단한 내용이 포함되어야 한다.
3, 표시된 RSS글에 대해서 레몬펜으로 메모를 추가할 수 있어야 한다.
4, 현재까지 수집된 RSS에 통계정보를 표시해야 한다.
5, 오래된 글과 레몬펜 메모도 확인 가능해야 한다.(이부분이 좀 ^^, 어쩔수 없이 DB를 사용해야 할것만 같은...)
6, 가장 많은 클릭을 가지는 블로그의 글과 가장 많은 레몬펜 메모가 있는 글을 순위별로 제공한다.
7, 사용자들이 OpenID로 로그인 할 수 있어야 한다.
8, 로그인한 사용자는 자신이 알고 있는 Bioinformatics관련 RSS를 등록/삭제/수정 할 수 있어야 한다.
9, 자체적으로 또한 RSS를 제공하여야 한다.

쓰다 보니 너무 많은 기능들이 필요하더군요. 그래서 우선 순위를 부여했고 위의 기능은 우선순위에 따라 나열한것입니다. 우선 4번까지는 빠른시일안에 마칠생각입니다.

테스트 웹페이지 주소는 http://www.hongiiv.com/bioblogrss/bioblog.html 입니다. 계속적으로 업데이트 될 예정이구요 당연히 ^^;; 그냥 간단하게 RSS를 통해 만들어진 다음과 같은 사이트(인기 블로그나 뉴스 사이트의 RSS만을 조합하여 만들어진 페이지)들에 레몬펜 하나 추가 되었다고 보시면 되겠습니다.

1, Daum DNA Lens
2, allblog Live
3, 한RSS 페이퍼

그리고 개인적으로 제 블로그에서 기본적으로 태터툴즈에서 제공하는 RSS 대신 피드버너를 통해서 RSS를 제공하도록 변경했습니다. 피드버너를 사용하면 자신의 RSS에 대해서 다양한 통계정보를 볼 수 있으니까. 좀더 유용할거라는 생각에 ㅎㅎㅎ ^^

Posted by hongiiv

2008/01/28 12:50 2008/01/28 12:50
, , , , , , , , , , ,
Response
No Trackback , 4 Comments
RSS :
http://socmaster.homelinux.org/~hongiiv/rss/response/310

RSS를 이용한 Bio Blog 리더기?

저는 아침에 출근해서 제일 먼저 하는 일이 관심있는 블로그들을 한번 주욱 둘러보는것입니다. 그리고 퇴근전에 다이어를 정리하고는 다시 한번 블로그를 둘러보고는 퇴근을 합니다.

처음에는 firefox의 탭을 주욱 늘어 놓고는 일일이 블로그들을 돌아다녔었는데,, 이것도 만만치 않은 일이더군요. 그래서 RSS 리더를 이용해서 블로그들의 RSS를 등록해서 사용하고 있습니다. 그런데 이게 내가 관심있는 블로그라고 해도 내가 관심있는 글이 꼭 올라오지는 않습니다. 제목을 보고는 글을 읽을건지를 선택하거나, 글을 읽다가 "어 이건 별로" 하곤 하죠 ^^;;

그런데 문제는 한글로 된 블로그는 그나마 읽을 글을 선택하고 읽는데는 별 어려움이 없지만,,, 영어로 된 블로그들은 글을 선택하거나 글의 포인트를 찾는데(논문이나 기사처럼 글이 정형화(?)되고 읽기 쉬운것이 아닌 자신의 생각을 적는 블로그의 특성상 ㅜㅜ) 시간이 걸리기 마련입니다. 나만 그런가,, 또한 수많은 블로그들중에서 내가 원하는 블로그를 찾는데도 시간이 걸리게 마련이죠.

그러다 문득 이런 생각을 해봤습니다. 요즘 terra님과 비누인형님 덕분에 레몬펜을 유용하게 사용하고 있는데,, Bioinformatics에 관련된 국내외 블로그들을 수집하고 RSS를 이용해서 블로그글들을 보여주는 것입니다. 그러나 여기서 끝난다면야 RSS리더와 별반 다를게 없게되겠죠.. 거기에다가 다른 블로거님들의 도움을 받아서 각 글에 대해서 간단한 요약(미리 읽어보신 분들의)이나, 자신의 생각들의 레몬펜으로 정리해 놓아주면(물론 참여하시는 분들이 많아야 겠지만) 다른 분들이 블로그의 글들을 읽을때 혹은 읽을 글을 선별하는데 도움이 되지 않을까 하는 생각입니다. 바로 Bioinformatics Blog SNS 가 만들어지게 되는거겠죠. 이러한 작은 프로젝트를 한번 진행해 보는것이 어떨까 하는 생각을 해보고 바로 진행하려고 합니다.

우선 가장 문제가 되는것이 국내외의 Bioinformatics 혹은 Bio관련 블로그들을 찾는것이 가장 문제입니다. 제가 알고있는 것들을 우선적으로 정리해서 RSS를 모은 페이지를 만들고 거기에 레몬펜을 장착(?)할 예정입니다. 이글을 보시는 분이 계시다면 자신만 알고 있는 유용한 Bio관련 국내외 블로그좀 알려 주세요 ^^;;

곧 페이지 만드는 작업에 들어가고 진행사항은 제 블로그에 올리겠습니다. 이렇게 블로그에다가 글을 남겨놓지 않으면 왠지 안하거나 루즈해질것 같아서 이렇게 포스팅해 놓습니다. (^____^)v

Posted by hongiiv

2008/01/25 11:31 2008/01/25 11:31
, , ,
Response
No Trackback , 8 Comments
RSS :
http://socmaster.homelinux.org/~hongiiv/rss/response/307

생물정보학을 통해서 어떠한 분석이나, 분석을 시스템을 만드는 경우 우리는 오픈소스로 소프트웨어를 활용게 된다.

마이크로어레이 분석 시스템이나, genome 브라우저 등을 만들때도 있고 아니면 비교적 스크립트 몇줄로 이루어진 분석 도구를 만들때도 있다. 이런 경우 무턱대고 처음부터 끝까지 자신이 직접 코드를 작성하진 않을 것이다. 자신이 원하는 기능을 같은 라이브러리(Bioperl, Biojava, Biopyton)나 소프트웨어(R-project, svm light, ensembl, blast)등을 이용할 것이다.

이러한 작업에 있어서 우선 처음으로 생각해봐야 할것은 어떠한 오픈소스라이브러리나 소프트웨어를 사용하는가 이다. 나에게 필요한 오픈소스 소프트웨어가 무엇인지를 찾아보는 Ohloh.net의 Stack에 대해서 살펴 보도록 하자.

Ohloh는 한마디로 오픈 소스 네트워크로 오픈 소스를 만들고 사용하는 사람들을 서로 연결해주는 역할을 하고 있다. Ohloh를 살펴보면 크게 Porject, People, Languages, Forums로 메뉴로 구성되어있다. Project는 당연히 오픈 소스 프로젝트들을 살펴볼 수 있다. 프로젝트들은 그 프로젝트에 설명(라이센스 정보, 사용하는 프로그래밍언어, tag 등등), 유저 리뷰, 링크, 뉴스를 볼 수 있도록 했다.

ohloh_project

검색기능을 활용해서 어떠한 오픈소스 소프트웨어들이 있고, 어떠한 라이센스하에서 어떠한 언어로 작성되어 있고 어떠한 기능을 가지고 있는지 살펴보는데 아주 유용하다. 개인적으로 UI도 이쁘고 ^^;;

이러한 기능뿐만 아니라 다양한 통계기능도 가지고 있으니 여러모로 활용이 가능하다. 거기다가 open api까지 지원하니 ^^;;

근데 여기서 중요한 것은 바로 stack기능이다. 자신이 어떠한 소프트웨어를 만들고자 할때 오픈소스 소프트웨어의 모음이 바로 stack이다. 예를 들어 홈페이지를 만든다고 할때 Linux, Apache, MySQL, PHP나 Python 또는 Perl(줄여서 LAMP라고 흔히 부르죠 ^^)을 사용한다고 할때 각각의 오픈소스 소프트웨어들을 stackit 버튼을 눌러 자신의 stack에 포함시키면 자신의 프로젝트에 필요한 또는 유용한 더불어 사용하면 좋을 오픈소스 소프트웨어들을 제안해 주게 된다.

아래 그림은 Bioperl을 비롯한 Biojava, Biopython과 LAMP를 각각 stack에 포함시켰을때 ohloh에서 제안하는 다른 오픈소스 소프트웨어의 목록을 보여준다.

stack

ohloh에서 제안하는 것들로는 BioMart, Jmol, Bioclipse, R 등등이 있다. 또한 자신과 비슷한 stack을 보유하고 있는 사람들과 스택에 쌓인 소프트웨어들의 라이센스 정보와 사용하는 프로그래밍 언어등을 한눈에 볼 수 있도록 하고 있다. 아래 그림은 각 stack에 쌓인 소프트웨어들의 라이센스 정보를 보여주고 있다.

license

뭐 프로그래밍에 대한 직접적인 도움은 되지 않을 수도 있지만, 소프트웨어를 개발하기전에 한번쯤 들러서 자신에게 맞는 오픈소스 소프트웨어를 찾고 정보를 얻는데에는 많은 도움이 될것같다.

Posted by hongiiv

2008/01/23 13:52 2008/01/23 13:52
, , ,
Response
No Trackback , No Comment
RSS :
http://socmaster.homelinux.org/~hongiiv/rss/response/305

빌드란 간단히 말하자면 프로그램 소스로 부터 실행 가능한 프로그램을 만들기까지의 일련의 과정이다. 당신이 바이오인포매틱스 연구자라면 configure, make, make install을 통해서 바이오인포매틱스 툴을 한번쯤 설치해봤을 것이다. 여기서 make가 바로 빌드를 자동화 해주는 툴이다. 사용자는 복잡한 과정을 거치지 않고서도 프로그래머가 만들어 놓은 일련의 과정대로 빌드를 make 명령 하나로 자동화 할 수 있는 것이다.

저는 만들어진 프로그램만 가져다 쓰기 때문에 빌드 툴에 대해서는 몰라도 돼요? 또는 제가 만드는 프로그램은 간단하기 때문에 직접 gcc -o ~~~ 이렇게 해서 설치하면 돼요~ 라고 한다면야 뭐 할말없다.

요즘 만들어지는 오픈소스 프로그램들이 대부분 빌드를 자동화해서 즉, make와 같은 툴을 이용해서 자동화된 빌드를 제공하기 때문에 꼭 프로그래머가 아니더라도 오픈소스를 가져다가 쓰는 입장에서도 빌드 툴들을 알아 놓으면 분명 유용할거라 생각된다.

Java(AntMaven)
Ant는 이미 알고 있었지만,,, Maven은 Taverna를 사용하면서 알게 되었다. Taverna가 Maven을 통해서 Build되기 때문이다. 또한 Taverna plugin을 만들때 Maven을 사용해야 한다. 이미 많은 오픈소스 소프트웨어들이 Maven을 사용하고 있다. 무엇보다도 라이브러리들의 의존성에 대해서 Repository를 통해 관리하는 방식인데 너무 멋지다. ^^

C(make)
너무나도 유용한 툴이다. 꼭 한번은 관련된 문서를 찾아 보고 익혀야 할것이다.

Perl(PerlBuildSystem)
사용안해봐서 모름

Python(PyBuild)
사용안해봐서 모름

Posted by hongiiv

2008/01/21 17:47 2008/01/21 17:47
, , , , , ,
Response
No Trackback , No Comment
RSS :
http://socmaster.homelinux.org/~hongiiv/rss/response/300

현재 국내에서 바이오인포매틱스 관련 오픈 소스 프로젝트에 직간접적으로 참여하고 계신분이 얼마나 될까요? 또한 이러한 바이오인포매틱스 관련 오픈소스의 활용은 어떠할까요?? 어떠한 부분에서 어떤 오픈 소스 소프트웨어를 사용하는지, 얼마나 알고 계신지, 필요성은 느끼시는지 궁금해지네요. Biopipe나 Bioworks도 이러한 오픈 소스가 없었더라면 생겨나지 못하는 그리고 앞으로도 오픈 소스 소프트웨어들이 받쳐 주지 않는다면 무용지물의 소프트웨어 될 수 밖에 없는 아주 중요한 문제입니다. 제가 생각하기에는 이러한 바이오인포매틱스 관련 오픈 소스의 개발과 활용에 대한 문제는 바이오인포매틱스 연구의 뿌리라고 생각합니다.

아래의 내용은 가칭 한국 오픈 바이오 사용자 모임(http://open-bio.kr)의 설립 배경과 목적 그리고 어떠한 내용을 담고 있어야 하는지 만들어 봤습니다. 많은 부분의 open-bio.org, open-bio.jp에서 참고했습니다. 참고로 본 글은 전혀 다듬어 지지 않았습니다. 이점 유의하시길 ^^;;

본 단체는 자유소프트웨어 정신에 따라 바이오인포매틱스 관련 소프트웨어의 자유로운 사용과 개발을 지향하며, 대중이 소프트웨어를 자유롭게 사용하고 수정, 개발 할 수 있도록 권장한다.

1. 사업 배경
해외에서는 BioPerl, Biopython, BioJava, EMOBSS 등 바이오인포매틱스를 위한 소프트웨어 개발 프로젝트들이 활발히 진행되고 있다. 이러한 소프트웨어를 포함한 수많은 오픈소스 소프트웨어들은 학교나 연구소뿐만 아니라 상업적으로도 폭넓게 사용되고 있다.

대표적인 공개 소프트웨어 프로젝트 사이트인 소스포지(Sourceforge)의  Software Map 카테고리의 Scientific/Enginnering을 보면 Bio-Informatics가 2007년 10월 현재 1428개로 Chemistry(376), Physics(811), Molecular Science(224)에 비해 월등히 높은 것을 확인할 수 있다. 이처럼 수많은 바이오인포매틱스 관련 오픈 소스 소프트웨어가 현재 활발히 개발 관리되고 추세이다.

User inserted image
[출처 : 소스포지 http://sourceforge.net]

이미 해외에서는 Open Bio Foundation(OBF, http://www.open-bio.org)을 통해서 바이오인포매틱 관련 오픈소스 소프트웨어를 지원하고 있으며, 일본에서는 2004년부터 바이오인포매틱스 관련 오픈소스 소프트웨어의 중요성을 인식하고 오픈 바이오 연구회(http://www.open-bio.jp)를 통해서 활발히 활동하고 있다.

2. 사업 목적
 국내에서는 바이오인포매틱스 관련 오픈소스 프로젝트에 참여하고 있는 개발자의 부족과 한글로 된 문서의 부족으로 인해 아직 충분히 홍보되어 활용되지 않을 뿐만 아니라 국제적인 공헌도 또한 부족한 상황이다.

따라서 본 모임에서는 이하와 같은 활동을 통해서 바이오인포매틱스에서의 오픈소스 프로그램의 국내 홍보 및 보급을 도모하는 한편 분산적으로 진행되고 있는 국내의 프로젝트를 모으고 새로운 프로젝트를 유도하여 해외에도 성과를 알릴 수 있는 커뮤니티를 형성해 나가고자 한다.

3. 사업 내용
6개 부분으로 오픈 소스 정착(모임, 문서화, 대학교육과의 연계), 오픈 소스 개발자 지원, 오픈소스를 활용한 데이터 분석지원(오픈 소스 사용자 지원, 대용량 데이터 분석 환경 지원)을 수행한다.

☐ 모임
KLDP에서는 CodeFest 행사를 계속적으로 지원 운영하고 있다. CodeFest는 오픈소스 개발자들이 모여 밤새 무언가를 만들어내는 일종의 친목모임으로 이곳에서 만들어지는 결과물은 필요한 사람에게 공개가 된다. 이러한 모임을 통해 유능한 개발자들이 작업하는 방법을 보고 배울 수 있다.(CodeFest)
정보교환과 교류를 위한 연구회 개최(BOSC)
사용자를 위한 튜토리얼 개최(BioCon)
개발자를 위한 개발 미팅 개최(BioHackathon)

☐ 문서화
바이오인포매틱스 관련 전문적인 기사 발행(Bio::Blogs)
해외 오픈 바이오 관련 문서의 번역

☐ 오픈 소스 사용자 지원
오픈 소스 소프트웨어의 특성상 오픈 소스를 사용하는 사용자는 해당 오픈 소스의 제작자나 컴뮤니티 및 메일링 리스트 등의 다양한 경로를 통해서 지원을 받을 수 있다. 하지만 이러한 지원은 언어적인 문제나 컴퓨터 프로그래밍에 대한 전문적인 지식을 필요로 하기도 한다.

따라서 대다수의 오픈 소스를 사용하는 바이오인포매틱스 연구자들이 오픈 소스의 설치(컴파일) 및 활용에는 많은 어려움이따르게 된다. 여기에는 서로 다른 플랫폼의 영향도 무시할 수 없는데, 많은 수의 오픈 소스 소프트웨어들이 X86을 기본으로 제작되기 때문에 PPC나 IA64의 하드웨어 플랫폼뿐만 아니라, Linux, UNIX, Windows 등의 서로 다른 OS 상에서 오픈 소스를 설치하고 구동하는데, 어려움이 따른다. 따라서 이러한 문제를 소프트웨어 전문가 집단과 각 플랫폼을 제작하는 하드웨어 제조사와의 협력을 통해 오픈소스의 설치 및 활용에 대한 지원을 담당한다.

☐ 대용량 데이터 분석 환경지원
야후에서는 학교나 일반 기업에서 구비하기 힘든 Hadoop기반의 클러스터 컴퓨팅 자원에 대해서 학술 연구 목적으로 지원을 한다. Hadoop는 google의 mapreduce를 구현한 것으로 그 활용분야는 참으로 많다. 일례로 machine learning 알고리즘들을 Hadoop기반으로 수행한던가 등등..

아마존은 일렉트릭 컴퓨트 클라우드(Elastic Compute Cloud:EC2)나 심플 스토리지 서비스(Simple Storage Service:S3)는 아마존의 서버와 데이터 스토리지를 시간 단위로 외부 기업에 빌려주는 유틸리티 컴퓨팅 사업을 수행하고 있다.

이와 같은 현상은 단순히 서버 자원이나 대규모 클러스터 및 슈퍼컴퓨팅 자원을 사용자에게 지원하는 것이 아니라 사용자가 필요로 하고 있는 모든 인프라까지 제공하고 있다는 것이다. 지금까지의 대규모 데이터 처리를 위해서는 까다로운 절차를 통해서 무료 또는 유료의 컴퓨팅 자원을 제공받아 사용해야만(http://www.kisti.re.kr , 슈퍼컴퓨팅센터) 한다. 그러나 이러한 컴퓨팅 환경은 범용적인 환경만을 구축하고 있기 때문에 바이오인포매틱스와 같은 특화된 분야에서 사용하기 위해서는 별도의 까다로운 설정을 사용자가 혹은 의뢰를 통해서 구축하여야 한다. 그러나 야후의 M45와 같이 일반 클러스터 컴퓨팅자원과 함께 Hadoop이라는 미들웨어까지 구축하여 이를 활용할 수 있도록 특화된 컴퓨팅 자원을 제공하고 있다. 

☐ 오픈 소스 개발자 지원
오픈 소스 개발자를 위한 소스 코드 저장소 및 버전관리 홍보 문서화 작업을 돕는 역할을 수행한다.

☐ 대학교육과의 연계
제주대학교 컴퓨터공학부의 오픈 소스 개발 방법론(http://code.google.com/open-source-class) 강의 진행 Daum과 제주대가 산학 협력의 일환으로 만든 Daum 트랙이라는 공학 인증 프로그램내 직접 강의로 진행되었다. 3-4학년에게 매 학기 두 과목씩 강의를 개설하는데, 고급 웹 프로그래밍 실습, 오픈 소스 개발 방법론, 포털 서비스 개발 실습, 인턴쉽으로 진행한다.

국내에서 최초로 개설된 ‘오픈 소스 개발 방법로’ 강의는 학생들에게 자유 소프트웨어와 공개 소프트웨어에 대한 철학과 의미를 소개하고 실제 개발 방식에서 오픈 소스 개발 문화를 체험하는 실습과 강의 프로젝트로 마련되었다. 국내에서 오픈소스를 활용하여 바이오인포매틱스 관련 소프트웨어를 개발하거나 오픈 소스 소프트웨어를 제작하는 학생들에게 오픈 소스 개발 시 관련 툴과 함께 자유 소프트웨어에 대한 철학을 소개하는 과정을 소개하여 국내 바이오인포매틱스 관련 오픈소스의 개발과 활용을 도모한다.

맺으면서...
이러한 움직임이 학계나 정부 기관 또는 어떠한 형태로든지 벌써부터 일어났어야 했는데,,,말이죠.

Posted by hongiiv

2007/12/28 16:52 2007/12/28 16:52
, , ,
Response
No Trackback , 4 Comments
RSS :
http://socmaster.homelinux.org/~hongiiv/rss/response/297

Bioinformatics와 Open Source

OBF에서 지원하는 BOSC(Bioinformatics Open Source Conference) 2007에서 재미난 것들을 나만 알아보도록 요약해봤다 ^^;;

BOSC 2007 발표자료 1 - An Open Source Framework for Teaching Bioinformatics


where's the real bottleneck in scientific computing?
scientific software developement is not an oxymoron
an open source software culture in the undergraduate computer science curriculum

산업현장과 학교간의 격차
오픈소스 정의
오픈소스의 가치
오픈소스 교육 프레임워크(소스코드, 품질 및 커뮤니티)
courseforge(하드웨어 + 소프트웨어 인프라스트럭처)

학과정중에 오픈소스 적용한 프로젝트 수행- 방학중에 집중적으로, 한명의 메인 개발자 투입(석사, 박사과정) 졸업~ 그렇게 해서 탄생한 XMLPipeDB

BOSC 2007 발표자료 2 - Introduction of the Japanese Open Bio* community

Bioinformatics 소프트웨어 개발을 위한 커뮤니티 운영 http://open-bio.jp
Workshops - 2004년이래 7회, GIW와 같은 학회를 통해서~
튜토리얼 - 2005년 KAST에서
사용자 그룹 - 소프트웨어 개발, 문서화, EMBOSS, BioPerl, Cytoscape 사용자 그룹
개발 소프트웨어들 - KNOB(KNOPPIX 기반의 bioinformatics 소프트웨어  라이브 시디), G-language(BioPerl기반의 Genome 분석 환경), BioRuby/ChemRuby, eXpanda(Perl 기반 네트워크 분석및 가시화 라이브러리), E-cell 3D, MedCD, BioFlash 등등

Posted by hongiiv

2007/12/20 16:17 2007/12/20 16:17
, , ,
Response
No Trackback , No Comment
RSS :
http://socmaster.homelinux.org/~hongiiv/rss/response/291

저번 포스팅에서 현재 논문으로 publish되었거나 또는 개발중인 Bio Workflow Management System들에 대해서 언급한적이 있습니다. 그외에도 최근 GIW 포스터로 부터 DDBJ의 Workflow에 대해서도 잠깐 언급한적이 있습니다.

모두 조금씩 모양은 다르지만, 이러한 WMS(workflow management system)들이 추구하는것은 모두 같은거죠 ^^ 오늘은 이러한 WMS를 기반으로 생물학자들의 협업을 이끌어낼 수 있는 정확하게 말하자면 Workflow 기반 Bio 포털에 대해서 알아보려고 합니다. 이미 생물학에 관련된 포털(?)들은 생물학의 각 분야별로 꽤 많은 것으로 알고 있습니다. 그러니 여기에서는 Workflow를 기반으로 하는 포털들만 다루도록 하겠습니다.

Taverna 기반의 myexperiment
이미 많이 언급했었더랬죠 ^^;; 자신의 워크플로우를 업로드하면 워크플로우 XML파일에서 설명, 워크플로우 그림, 제목등의 정보를 자동으로 추출해서 보여주고 그외 Tag를 작성해서 원하는 사람들은 다운로드할 수 있도록 해주고 있습니다. 가장 최신, 가장 많이 다운로드한 순서로 워크플로우를 볼 수도 있고 워크플로우에 대한 평가나 댓글도 작성할 수 있습니다. 그 외에도 그룹생성을 통해 그룹간의 정보 교환과 블로그, 포럼을 통한 의견교환 및 파일 교환등을 통한 협업을 수행할 수가 있습니다.

제가 올린 워크플로우로 다운로드 횟수가 71번 본 횟수가 112번으로 아직까지 Most Viewed 페이지에 올라와 있네요 ^^
User inserted image

Taverna와 BioWMS 기반의 Biowep
Taverna의 워크플로우 엔진인 Freefluo는 공개 소프트웨어 이기 때문에(물론 Taverna 자체가 공개지만) Taverna를 통해 만들어진 워크플로우(XML기반)는 꼭 Taverna에서가 아니더라도 어떠한 방법으로든 실행할 수 있습니다. 커맨드창에서 실행하거나 웹방식으로 실행가능합니다. 따라서 누구나 마음만 먹는다면 Taverna기반의 포털을 만들 수가 있죠.

Biowep은 BioWMS라는 웹 기반의 워크플로우 뿐만 아니라 Taverna를 통해 생성된 워크플로우까지 Biowep을 통해서 실행할 수 있으며, ontology를 통해서 원하는 워크플로우를 검색할 수도 있고 실행한 결과를 따로 저장할 수 있는 기능을 가지고 있습니다. 커뮤니티 기능은 그다지 볼만한 것은 없고 만들어진 워크플로우에 대해서 다양하게 검색하고 실행한 결과도 다양하게 관리 될 수 있다는 특징을 가지고 있습니다.

User inserted image


간단하게 메뉴를 보자면, All workflow list, My last executed, My domains workflows, My role most popular, All available result, Unsaved results 등의 워크플로우 자체를 다양한 방법으로 분류하고 그결과를 보여주도록 되어있습니다.

Biopipe 기반의 Biocommunity
초기 개발시에는 막아놓지 않았는데, 어떤분이 google groups에 그 존재를 알리며 사람들이 알게되자 현재는 준비중이라는 팻말만 꽂혀있습니다 ^^;; 더이상 어떠한 특징이 있는지는 모르지만, 대충 초창기 모델에서는 Biopipe를 통해 워크플로우를 생성하고, 공유하는 기본기능외에도 wiki나 blog 및 Biopipe에서 사용가능한 서비스를 검색할 수 있는 ontology 등등의 여러가지 기능들로 중무장하고 있는걸로 알고 있습니다. 관계자분이 이글을 읽으셨다면 좀 코멘트라도 ^^

Posted by hongiiv

2007/12/14 17:32 2007/12/14 17:32
, ,
Response
No Trackback , No Comment
RSS :
http://socmaster.homelinux.org/~hongiiv/rss/response/289

The New e-Science

myExperiment에 대한 내용이 들어있는 ppt자료네요 ^^;; Web2.0과 어떠한 형태로 Grid와 함께 e-Science를 만드는지에 대한 내용과 Web2.0에서의 myExperiment에 대한 내용이 들어있습니다. 이 자료 하나로 현재의 e-Science를 전망해 볼 수 있을거 같습니다.



Posted by hongiiv

2007/12/13 13:13 2007/12/13 13:13
, , , , , ,
Response
A trackback , No Comment
RSS :
http://socmaster.homelinux.org/~hongiiv/rss/response/286

DDBJ 웹 서비스 현황

GIW(International Conference on Genome Informtics) 2007이 지난 3월 싱가폴에 열렸습니다. 비록 저는 참석하지 못했지만, 지인께서 다녀오시면서 제가 관심있어 할 만한 포스터 2장을 던져 주셨습니다. 단지 WebServices라는 단어가 들어갔다는 이유로 ^^;; 이미 알려진 내용들이지만 다시 한번 짚어보도록 하겠습니다.

Web API for molecular biology data resources at DDBJ

DDBJ의 Web API
DDBJ에서는 SOAP과 REST 방식을 통틀어서 Web API라는 단어를 사용하고 있는데요. 뭐 틀린 단어는 아니지만, 이미 W3C에서는 The W3C Web API Working Group에서 Web API라는 단어를 사용하고 있네요 ^^;; W3C의 Web API와 DDBJ에서 말하는 Web API의 개념이 서로 틀리네요.

암튼 현재 DDBJ에서 SOAP과 REST를 통해서 총 26개의 카테고리의 213개의 메소드가 서비스 중 입니다. 메소드는 키워드 검색(keyword search), 데이터 검색(data retrieve), 호모로지(homology search) 검색, 다중 정렬(multiple alignment)에 관한 것들입니다.

REST가 대세냐??
초기에는 SOAP 방식만을 통해서 메소드를 제공했지만, 이제 차츰 REST 방식을 이용해서 서비스를 제공하기 시작했는데 REST에 대한 여러가지 장점들을 죽 나열해 놨더군요. 당근 REST가 SOAP에 비해서 쉽게 사용할 수 있다는 장점이 있겠죠. 그리고 간단하게 HTTP를 통해서 REST 방식의 서비스를 호출하는 클라이언트 프로그램을 하나 예로 들었는데, 복잡하게 WSDL을 가져와서 호출하고 결과를 보여주는 과정이 과감하게 생략된 그냥 바로 URL을 파싱만 해서 HTTP 응답만 가져오면 되기 때문에 별도의 SOAP등을 처리하기 위한 라이브러리 없이 사용할 수가 있죠.

이제는 Workflow까지 섭렵한다.
여기까지는 뭐 이미 알려진 내용이라 별 흥미가 없었는데, 이제 DDBJ에서도 워크플로우를 작성할 수 있도록 하고 있었습니다. Workflow Navigation System이라는 걸 만들었는데, DDBJ의 Web API를 이용해서 웹 기반으로 워크플로우를 작성하는 건데, 하나의 메소드를 선택하면 그 결과를 입력으로 사용할 수 있는 서비스들을 나열해주는 방식으로 워크플로우를 작성할 수 있도록 하고 있습니다. 아직 완벽하게 작동하고 있진 않지만, 이제 DDBJ에서도 워크플로우에 손을 대기 시작했다는데 의의를 두어야겠습니다. ^^  International Workshow on World Wide Workflow Grid(WWWFG) 2007에서도 Workflow Navigation System에 대한 언급이 있었는데, 암튼 어떠한 형식으로 발전될지 기대가 됩니다.

DDBJ provides a very fast text search service both by Web browser and Web API

두번째 포스터는 ARSA에 대한 내용입니다. ARSA는 24개의 생명과학 데이터베이스를 모아서 검색해주는 시스템인데, 매우 빠르답니다. SRS와 비교한 그래프를 보여주는데 빠르네요.ㅎㅎ 이제부터 ARSA 사용하라는 코멘트도 함께 ^^ 그리고 ARSA는 웹 방식 뿐만 아니라 Web API로도 사용이 가능하는 내용도 있네요.

이미 다 웹을 통해서 알려졌던 내용이라 별다른 감흥이 없었지만, Workflow Navigation System는 좀 의외네요 ^^;; 앞으로 주의깊게 한번 봐야겠습니다.

Posted by hongiiv

2007/12/11 16:04 2007/12/11 16:04
, , , ,
Response
No Trackback , 2 Comments
RSS :
http://socmaster.homelinux.org/~hongiiv/rss/response/285

« Previous : 1 : 2 : 3 : 4 : 5 : Next »


야후 블로그 벳지


Site Stats

Total hits:
291974
Today:
144
Yesterday:
234